summaryrefslogtreecommitdiff
path: root/src/test/java/com/seaofnodes/simple/progs
diff options
context:
space:
mode:
authorCliff Click <cliffc@acm.org>2025-05-06 13:44:10 -0700
committerCliff Click <cliffc@acm.org>2025-07-08 20:29:09 -0700
commit664761624f4b0e3d6d1593b99e576854beec5949 (patch)
treeedff0e36e07cdc5aa82c8f7d144d68c52d5a4365 /src/test/java/com/seaofnodes/simple/progs
parent018379b0cf4e286ceacb1e39f34dd80f770e381e (diff)
downloadSimple-linear-chapter23.tar.gz
Simple-linear-chapter23.zip
Chapter 23: Methods and Revisiting Typeslinear-chapter23
Diffstat (limited to 'src/test/java/com/seaofnodes/simple/progs')
-rw-r--r--src/test/java/com/seaofnodes/simple/progs/jig.smp23
-rw-r--r--src/test/java/com/seaofnodes/simple/progs/large.smp5344
-rw-r--r--src/test/java/com/seaofnodes/simple/progs/stringHash.smp5
3 files changed, 5364 insertions, 8 deletions
diff --git a/src/test/java/com/seaofnodes/simple/progs/jig.smp b/src/test/java/com/seaofnodes/simple/progs/jig.smp
index fd3e7b9c..001e8eae 100644
--- a/src/test/java/com/seaofnodes/simple/progs/jig.smp
+++ b/src/test/java/com/seaofnodes/simple/progs/jig.smp
@@ -1,6 +1,19 @@
// -*- mode: java; -*-
-// Should fold away sign extend
-struct Person { i8 age;};
-Person !p = new Person;
-p.age = (arg<<48)>>48;
-return 0;
+//2298769344378917493
+//========= Reduced =========
+struct s0 {
+ bool v1;
+ i16 v2;
+ int v3;
+ i8 v4;
+ byte v5;
+};
+while(new s0.v3)
+ while(new s0.v5<<new s0.v4) {}
+if(0) {
+ if(0) {
+ flt !P5ZUD4=new s0.v2;
+ }
+ while(0) {}
+}
+return new s0.v1;
diff --git a/src/test/java/com/seaofnodes/simple/progs/large.smp b/src/test/java/com/seaofnodes/simple/progs/large.smp
new file mode 100644
index 00000000..7f151f60
--- /dev/null
+++ b/src/test/java/com/seaofnodes/simple/progs/large.smp
@@ -0,0 +1,5344 @@
+
+struct stbi_io_callbacks {
+ { i64 u8[] int -> int } read = "C"; // fill 'data' with 'size' bytes. return number of bytes actually read
+ { i64 int -> int } skip = "C"; // skip the next 'n' bytes, or 'unget' the last -n bytes if negative
+ { i64 -> int } eof = "C"; // returns nonzero if we are at end of file/data
+};
+
+struct stbi__context {
+ u32 img_x, img_y;
+ int img_n, img_out_n;
+
+ stbi_io_callbacks io;
+ u8[]io_user_data;
+
+ int read_from_callbacks;
+ int buflen;
+ u8[] buffer_start;
+ int callback_already_read;
+
+ u8[] img_buffer;
+ int img_buffer_end;
+ u8[] img_buffer_original;
+ int img_buffer_original_end;
+};
+
+{ stbi__context -> u8 } stbi__get8 = "C";
+
+val sample = { stbi__context s, int pal_len ->
+ var palette = new u8[1024];
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+ for (int i=0; i < pal_len; ++i) {
+ palette[i*4+3] = 0;
+
+ palette[i*4+0] = stbi__get8(s);
+ palette[i*4+1] = stbi__get8(s);
+ palette[i*4+2] = stbi__get8(s);
+ palette[i*4+3] = 255;
+ for (int j=0; j < pal_len; ++j) {
+ palette[j*4+3] = 0;
+
+ palette[j*4+0] = stbi__get8(s);
+ palette[j*4+1] = stbi__get8(s);
+ palette[j*4+2] = stbi__get8(s);
+ palette[j*4+3] = 255;
+ }
+ }
+
+ return palette;
+};
diff --git a/src/test/java/com/seaofnodes/simple/progs/stringHash.smp b/src/test/java/com/seaofnodes/simple/progs/stringHash.smp
index dafa7456..3fa2174c 100644
--- a/src/test/java/com/seaofnodes/simple/progs/stringHash.smp
+++ b/src/test/java/com/seaofnodes/simple/progs/stringHash.smp
@@ -23,9 +23,8 @@ val hashCode = { String self ->
val _hashCodeString = { String self ->
int hash=0;
- if( self.cs )
- for( int i=0; i< self.cs#; i++ )
- hash = hash*31 + self.cs[i];
+ for( int i=0; i< self.cs#; i++ )
+ hash = hash*31 + self.cs[i];
if( !hash ) hash = 123456789;
return hash;
};