{
  "experiment_date": "2026-10-29",
  "scope": "Original synthetic Windows BMPs; one desktop browser, no competitor conversion or physical-phone test. No RLE/embedded-JPEG/ICC profile compatibility sweep.",
  "pairs": [
    {
      "input": {
        "file": "odd-bottom-up.bmp",
        "valid": true,
        "width": 5,
        "height": 3,
        "bits_per_pixel": 24,
        "header_bytes": 40,
        "compression": 0,
        "top_down": false,
        "row_stride": 16,
        "bytes": 102,
        "sha256": "36521f98b925d7fd6691abb8afeba29de33dd81a25bab0cfd4c3f0d519dd0d9d"
      },
      "output": {
        "file": "odd-bottom-up.png",
        "size": [
          5,
          3
        ],
        "bytes": 144,
        "sha256": "25df5b81cd8b14de4a866833a9915357e3ac6cfd8de8df4d216eb459ade43c40",
        "alpha_values": [
          255
        ],
        "probe_top_row": [
          [
            20,
            90,
            160,
            255
          ],
          [
            20,
            90,
            160,
            255
          ],
          [
            20,
            90,
            160,
            255
          ],
          [
            20,
            90,
            160,
            255
          ]
        ]
      }
    },
    {
      "input": {
        "file": "odd-top-down.bmp",
        "valid": true,
        "width": 5,
        "height": 3,
        "bits_per_pixel": 24,
        "header_bytes": 40,
        "compression": 0,
        "top_down": true,
        "row_stride": 16,
        "bytes": 102,
        "sha256": "69c2bf109cc4e147a1baaec674e3e84147cbf7802aa8195ed55fd707aeb36487"
      },
      "output": {
        "file": "odd-top-down.png",
        "size": [
          5,
          3
        ],
        "bytes": 144,
        "sha256": "25df5b81cd8b14de4a866833a9915357e3ac6cfd8de8df4d216eb459ade43c40",
        "alpha_values": [
          255
        ],
        "probe_top_row": [
          [
            20,
            90,
            160,
            255
          ],
          [
            20,
            90,
            160,
            255
          ],
          [
            20,
            90,
            160,
            255
          ],
          [
            20,
            90,
            160,
            255
          ]
        ]
      }
    },
    {
      "input": {
        "file": "palette-8bit.bmp",
        "valid": true,
        "width": 5,
        "height": 3,
        "bits_per_pixel": 8,
        "header_bytes": 40,
        "compression": 0,
        "top_down": false,
        "row_stride": 8,
        "bytes": 94,
        "sha256": "cbdd2b75d691b0bc06ba67b474ea2d452b44546c88fbaf53f0674c3d6b082f01"
      },
      "output": {
        "file": "palette-8bit.png",
        "size": [
          5,
          3
        ],
        "bytes": 144,
        "sha256": "25df5b81cd8b14de4a866833a9915357e3ac6cfd8de8df4d216eb459ade43c40",
        "alpha_values": [
          255
        ],
        "probe_top_row": [
          [
            20,
            90,
            160,
            255
          ],
          [
            20,
            90,
            160,
            255
          ],
          [
            20,
            90,
            160,
            255
          ],
          [
            20,
            90,
            160,
            255
          ]
        ]
      }
    },
    {
      "input": {
        "file": "rgb32-reserved.bmp",
        "valid": true,
        "width": 120,
        "height": 80,
        "bits_per_pixel": 32,
        "header_bytes": 40,
        "compression": 0,
        "top_down": false,
        "row_stride": 480,
        "bytes": 38454,
        "sha256": "f114893519175fcaeb4b433afb48d4070d883d350fa09ca8a7c98d9bdd1a68b8"
      },
      "output": {
        "file": "rgb32-reserved.png",
        "size": [
          120,
          80
        ],
        "bytes": 454,
        "sha256": "5a950cda0c5253949a5a7f2e0f00ce5d14d1bac1a9a0af9f37334f0c7ca82a63",
        "alpha_values": [
          255
        ],
        "probe_top_row": [
          [
            255,
            0,
            0,
            255
          ],
          [
            255,
            0,
            0,
            255
          ],
          [
            255,
            0,
            0,
            255
          ],
          [
            255,
            0,
            0,
            255
          ]
        ]
      }
    },
    {
      "input": {
        "file": "v4-alpha.bmp",
        "valid": true,
        "width": 120,
        "height": 80,
        "bits_per_pixel": 32,
        "header_bytes": 108,
        "compression": 3,
        "top_down": false,
        "row_stride": 480,
        "bytes": 38522,
        "sha256": "0acc4d024b0c2ce5d2d06ac41d0e762b65e41e269bbd96f0cee15f13423904ef"
      },
      "output": {
        "file": "v4-alpha.png",
        "size": [
          120,
          80
        ],
        "bytes": 475,
        "sha256": "53482df03bb492d667a79be7ae3c700d830f25cc63db22436e41de93be82dbc4",
        "alpha_values": [
          0,
          64,
          128,
          255
        ],
        "probe_top_row": [
          [
            0,
            0,
            0,
            0
          ],
          [
            255,
            0,
            0,
            64
          ],
          [
            255,
            0,
            0,
            128
          ],
          [
            255,
            0,
            0,
            255
          ]
        ]
      }
    },
    {
      "input": {
        "file": "rgb565.bmp",
        "valid": true,
        "width": 5,
        "height": 3,
        "bits_per_pixel": 16,
        "header_bytes": 40,
        "compression": 3,
        "top_down": false,
        "row_stride": 12,
        "bytes": 102,
        "sha256": "a0d8db209aa262ae4c44bf02d3c71395e2b76b72a4fcf8788792902d6c7d88e4"
      },
      "output": {
        "file": "rgb565.png",
        "size": [
          5,
          3
        ],
        "bytes": 115,
        "sha256": "c52a75326d2f1a323724df9d1eb79550306ec9d75d120c260820fe96554a4830",
        "alpha_values": [
          255
        ],
        "probe_top_row": [
          [
            255,
            0,
            0,
            255
          ],
          [
            255,
            0,
            0,
            255
          ],
          [
            255,
            0,
            0,
            255
          ],
          [
            255,
            0,
            0,
            255
          ]
        ]
      }
    },
    {
      "input": {
        "file": "flat-color.bmp",
        "valid": true,
        "width": 321,
        "height": 193,
        "bits_per_pixel": 24,
        "header_bytes": 40,
        "compression": 0,
        "top_down": false,
        "row_stride": 964,
        "bytes": 186106,
        "sha256": "101610febb7b95a851df32085f44768d39b444c4eb77fb038d291489924a3171"
      },
      "output": {
        "file": "flat-color.png",
        "size": [
          321,
          193
        ],
        "bytes": 2210,
        "sha256": "b3b1f4c7f49ee3680d693f1647029e5971f5db7be2a57f6af146aadce93d554f",
        "alpha_values": [
          255
        ],
        "probe_top_row": [
          [
            20,
            90,
            160,
            255
          ],
          [
            20,
            90,
            160,
            255
          ],
          [
            20,
            90,
            160,
            255
          ],
          [
            235,
            145,
            85,
            255
          ]
        ]
      }
    },
    {
      "input": {
        "file": "seeded-noise.bmp",
        "valid": true,
        "width": 321,
        "height": 193,
        "bits_per_pixel": 24,
        "header_bytes": 40,
        "compression": 0,
        "top_down": false,
        "row_stride": 964,
        "bytes": 186106,
        "sha256": "d2602a2a171185e21ff17b51cd7ae07a3032b55175de55cf91112ac0c661a8dd"
      },
      "output": {
        "file": "seeded-noise.png",
        "size": [
          321,
          193
        ],
        "bytes": 213573,
        "sha256": "73f941b17932b1b23b5bc9cabec5be4dc687ad43f3b59dd0def71f72fa6ad4e4",
        "alpha_values": [
          255
        ],
        "probe_top_row": [
          [
            226,
            115,
            178,
            255
          ],
          [
            6,
            100,
            100,
            255
          ],
          [
            71,
            26,
            224,
            255
          ],
          [
            230,
            231,
            160,
            255
          ]
        ]
      }
    }
  ]
}
