{"abstract":"The returned physical layout descriptor disagrees with the declared buffer mapping at first_page.","category":"Raster memory layout","checks":6,"contract":"Raster texels contain six bytes and may straddle 16-byte virtual pages. A virtual byte span maps through a noncontiguous physical page directory; output contains source spans and offsets for reassembling one texel. Return the named intermediate layout descriptor and final address fields; all quantities are integer byte offsets unless explicitly stated.","evaluation_group":"s3-raster-memory-layout-page-split-texel-spans","failed_approach":"The attempted repair uses (virtual_start+15)//16 and still violates the layout contract.","family":"s3-raster-memory-layout-page-split-texel-spans-first-page","id":"FA-53146","implementations":{"attempt":{"sha256":"0922d15b4df4516c02974d07cd3ddef7553f87ac8d4a4fd7788a1f076c524167","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(p):\n    p = dict(p)\n    virtual_start = p[\"base\"]+p[\"y\"]*p[\"pitch\"]+p[\"x\"]*6\n    first_page = (virtual_start+15)//16\n    page_offset = virtual_start%16\n    first_bytes = min(6,16-page_offset)\n    remaining = 6-first_bytes\n    first_physical = p[\"pages\"][first_page%len(p[\"pages\"])]*16+page_offset\n    second_physical = p[\"pages\"][(first_page+1)%len(p[\"pages\"])]*16\n    spans = [[first_physical,first_bytes]]+([[second_physical,remaining]] if remaining else [])\n    destination_offsets = [0,first_bytes] if remaining else [0]\n    byte_addresses = [a+i for a,count in spans for i in range(count)]\n    return {'virtual_start': virtual_start, 'first_page': first_page, 'page_offset': page_offset, 'first_bytes': first_bytes, 'remaining': remaining, 'first_physical': first_physical, 'second_physical': second_physical, 'spans': spans, 'destination_offsets': destination_offsets, 'byte_addresses': byte_addresses}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncases = {1: [({'w': 8, 'x': 0, 'y': 0, 'pitch': 49, 'base': 13, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 13, 'first_page': 0, 'page_offset': 13, 'first_bytes': 3, 'remaining': 3, 'first_physical': 61, 'second_physical': 112, 'spans': [[61, 3], [112, 3]], 'destination_offsets': [0, 3], 'byte_addresses': [61, 62, 63, 112, 113, 114]}), ({'w': 8, 'x': 1, 'y': 1, 'pitch': 49, 'base': 13, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 68, 'first_page': 4, 'page_offset': 4, 'first_bytes': 6, 'remaining': 0, 'first_physical': 36, 'second_physical': 160, 'spans': [[36, 6]], 'destination_offsets': [0], 'byte_addresses': [36, 37, 38, 39, 40, 41]}), ({'w': 8, 'x': 2, 'y': 2, 'pitch': 49, 'base': 13, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 123, 'first_page': 7, 'page_offset': 11, 'first_bytes': 5, 'remaining': 1, 'first_physical': 155, 'second_physical': 96, 'spans': [[155, 5], [96, 1]], 'destination_offsets': [0, 5], 'byte_addresses': [155, 156, 157, 158, 159, 96]}), ({'w': 8, 'x': 3, 'y': 0, 'pitch': 49, 'base': 13, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 31, 'first_page': 1, 'page_offset': 15, 'first_bytes': 1, 'remaining': 5, 'first_physical': 127, 'second_physical': 16, 'spans': [[127, 1], [16, 5]], 'destination_offsets': [0, 1], 'byte_addresses': [127, 16, 17, 18, 19, 20]}), ({'w': 8, 'x': 4, 'y': 1, 'pitch': 49, 'base': 13, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 86, 'first_page': 5, 'page_offset': 6, 'first_bytes': 6, 'remaining': 0, 'first_physical': 166, 'second_physical': 64, 'spans': [[166, 6]], 'destination_offsets': [0], 'byte_addresses': [166, 167, 168, 169, 170, 171]}), ({'w': 8, 'x': 5, 'y': 2, 'pitch': 49, 'base': 13, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 141, 'first_page': 8, 'page_offset': 13, 'first_bytes': 3, 'remaining': 3, 'first_physical': 109, 'second_physical': 176, 'spans': [[109, 3], [176, 3]], 'destination_offsets': [0, 3], 'byte_addresses': [109, 110, 111, 176, 177, 178]})], 2: [({'w': 9, 'x': 0, 'y': 0, 'pitch': 55, 'base': 26, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 26, 'first_page': 1, 'page_offset': 10, 'first_bytes': 6, 'remaining': 0, 'first_physical': 122, 'second_physical': 16, 'spans': [[122, 6]], 'destination_offsets': [0], 'byte_addresses': [122, 123, 124, 125, 126, 127]}), ({'w': 9, 'x': 1, 'y': 1, 'pitch': 55, 'base': 26, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 87, 'first_page': 5, 'page_offset': 7, 'first_bytes': 6, 'remaining': 0, 'first_physical': 167, 'second_physical': 64, 'spans': [[167, 6]], 'destination_offsets': [0], 'byte_addresses': [167, 168, 169, 170, 171, 172]}), ({'w': 9, 'x': 2, 'y': 2, 'pitch': 55, 'base': 26, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 148, 'first_page': 9, 'page_offset': 4, 'first_bytes': 6, 'remaining': 0, 'first_physical': 180, 'second_physical': 80, 'spans': [[180, 6]], 'destination_offsets': [0], 'byte_addresses': [180, 181, 182, 183, 184, 185]}), ({'w': 9, 'x': 3, 'y': 0, 'pitch': 55, 'base': 26, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 44, 'first_page': 2, 'page_offset': 12, 'first_bytes': 4, 'remaining': 2, 'first_physical': 28, 'second_physical': 128, 'spans': [[28, 4], [128, 2]], 'destination_offsets': [0, 4], 'byte_addresses': [28, 29, 30, 31, 128, 129]}), ({'w': 9, 'x': 4, 'y': 1, 'pitch': 55, 'base': 26, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 105, 'first_page': 6, 'page_offset': 9, 'first_bytes': 6, 'remaining': 0, 'first_physical': 73, 'second_physical': 144, 'spans': [[73, 6]], 'destination_offsets': [0], 'byte_addresses': [73, 74, 75, 76, 77, 78]}), ({'w': 9, 'x': 5, 'y': 2, 'pitch': 55, 'base': 26, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 166, 'first_page': 10, 'page_offset': 6, 'first_bytes': 6, 'remaining': 0, 'first_physical': 86, 'second_physical': 192, 'spans': [[86, 6]], 'destination_offsets': [0], 'byte_addresses': [86, 87, 88, 89, 90, 91]})], 3: [({'w': 10, 'x': 0, 'y': 0, 'pitch': 61, 'base': 39, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 39, 'first_page': 2, 'page_offset': 7, 'first_bytes': 6, 'remaining': 0, 'first_physical': 23, 'second_physical': 128, 'spans': [[23, 6]], 'destination_offsets': [0], 'byte_addresses': [23, 24, 25, 26, 27, 28]}), ({'w': 10, 'x': 1, 'y': 1, 'pitch': 61, 'base': 39, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 106, 'first_page': 6, 'page_offset': 10, 'first_bytes': 6, 'remaining': 0, 'first_physical': 74, 'second_physical': 144, 'spans': [[74, 6]], 'destination_offsets': [0], 'byte_addresses': [74, 75, 76, 77, 78, 79]}), ({'w': 10, 'x': 2, 'y': 2, 'pitch': 61, 'base': 39, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 173, 'first_page': 10, 'page_offset': 13, 'first_bytes': 3, 'remaining': 3, 'first_physical': 93, 'second_physical': 192, 'spans': [[93, 3], [192, 3]], 'destination_offsets': [0, 3], 'byte_addresses': [93, 94, 95, 192, 193, 194]}), ({'w': 10, 'x': 3, 'y': 0, 'pitch': 61, 'base': 39, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 57, 'first_page': 3, 'page_offset': 9, 'first_bytes': 6, 'remaining': 0, 'first_physical': 137, 'second_physical': 32, 'spans': [[137, 6]], 'destination_offsets': [0], 'byte_addresses': [137, 138, 139, 140, 141, 142]}), ({'w': 10, 'x': 4, 'y': 1, 'pitch': 61, 'base': 39, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 124, 'first_page': 7, 'page_offset': 12, 'first_bytes': 4, 'remaining': 2, 'first_physical': 156, 'second_physical': 96, 'spans': [[156, 4], [96, 2]], 'destination_offsets': [0, 4], 'byte_addresses': [156, 157, 158, 159, 96, 97]}), ({'w': 10, 'x': 5, 'y': 2, 'pitch': 61, 'base': 39, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 191, 'first_page': 11, 'page_offset': 15, 'first_bytes': 1, 'remaining': 5, 'first_physical': 207, 'second_physical': 224, 'spans': [[207, 1], [224, 5]], 'destination_offsets': [0, 1], 'byte_addresses': [207, 224, 225, 226, 227, 228]})], 4: [({'w': 11, 'x': 0, 'y': 0, 'pitch': 67, 'base': 52, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 52, 'first_page': 3, 'page_offset': 4, 'first_bytes': 6, 'remaining': 0, 'first_physical': 132, 'second_physical': 32, 'spans': [[132, 6]], 'destination_offsets': [0], 'byte_addresses': [132, 133, 134, 135, 136, 137]}), ({'w': 11, 'x': 1, 'y': 1, 'pitch': 67, 'base': 52, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 125, 'first_page': 7, 'page_offset': 13, 'first_bytes': 3, 'remaining': 3, 'first_physical': 157, 'second_physical': 96, 'spans': [[157, 3], [96, 3]], 'destination_offsets': [0, 3], 'byte_addresses': [157, 158, 159, 96, 97, 98]}), ({'w': 11, 'x': 2, 'y': 2, 'pitch': 67, 'base': 52, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 198, 'first_page': 12, 'page_offset': 6, 'first_bytes': 6, 'remaining': 0, 'first_physical': 230, 'second_physical': 208, 'spans': [[230, 6]], 'destination_offsets': [0], 'byte_addresses': [230, 231, 232, 233, 234, 235]}), ({'w': 11, 'x': 3, 'y': 0, 'pitch': 67, 'base': 52, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 70, 'first_page': 4, 'page_offset': 6, 'first_bytes': 6, 'remaining': 0, 'first_physical': 38, 'second_physical': 160, 'spans': [[38, 6]], 'destination_offsets': [0], 'byte_addresses': [38, 39, 40, 41, 42, 43]}), ({'w': 11, 'x': 4, 'y': 1, 'pitch': 67, 'base': 52, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 143, 'first_page': 8, 'page_offset': 15, 'first_bytes': 1, 'remaining': 5, 'first_physical': 111, 'second_physical': 176, 'spans': [[111, 1], [176, 5]], 'destination_offsets': [0, 1], 'byte_addresses': [111, 176, 177, 178, 179, 180]}), ({'w': 11, 'x': 5, 'y': 2, 'pitch': 67, 'base': 52, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 216, 'first_page': 13, 'page_offset': 8, 'first_bytes': 6, 'remaining': 0, 'first_physical': 216, 'second_physical': 240, 'spans': [[216, 6]], 'destination_offsets': [0], 'byte_addresses': [216, 217, 218, 219, 220, 221]})], 5: [({'w': 12, 'x': 0, 'y': 0, 'pitch': 73, 'base': 65, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 65, 'first_page': 4, 'page_offset': 1, 'first_bytes': 6, 'remaining': 0, 'first_physical': 33, 'second_physical': 160, 'spans': [[33, 6]], 'destination_offsets': [0], 'byte_addresses': [33, 34, 35, 36, 37, 38]}), ({'w': 12, 'x': 1, 'y': 1, 'pitch': 73, 'base': 65, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 144, 'first_page': 9, 'page_offset': 0, 'first_bytes': 6, 'remaining': 0, 'first_physical': 176, 'second_physical': 80, 'spans': [[176, 6]], 'destination_offsets': [0], 'byte_addresses': [176, 177, 178, 179, 180, 181]}), ({'w': 12, 'x': 2, 'y': 2, 'pitch': 73, 'base': 65, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 223, 'first_page': 13, 'page_offset': 15, 'first_bytes': 1, 'remaining': 5, 'first_physical': 223, 'second_physical': 240, 'spans': [[223, 1], [240, 5]], 'destination_offsets': [0, 1], 'byte_addresses': [223, 240, 241, 242, 243, 244]}), ({'w': 12, 'x': 3, 'y': 0, 'pitch': 73, 'base': 65, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 83, 'first_page': 5, 'page_offset': 3, 'first_bytes': 6, 'remaining': 0, 'first_physical': 163, 'second_physical': 64, 'spans': [[163, 6]], 'destination_offsets': [0], 'byte_addresses': [163, 164, 165, 166, 167, 168]}), ({'w': 12, 'x': 4, 'y': 1, 'pitch': 73, 'base': 65, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 162, 'first_page': 10, 'page_offset': 2, 'first_bytes': 6, 'remaining': 0, 'first_physical': 82, 'second_physical': 192, 'spans': [[82, 6]], 'destination_offsets': [0], 'byte_addresses': [82, 83, 84, 85, 86, 87]}), ({'w': 12, 'x': 5, 'y': 2, 'pitch': 73, 'base': 65, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 241, 'first_page': 15, 'page_offset': 1, 'first_bytes': 6, 'remaining': 0, 'first_physical': 257, 'second_physical': 272, 'spans': [[257, 6]], 'destination_offsets': [0], 'byte_addresses': [257, 258, 259, 260, 261, 262]})]}\nfor i, (p, expected) in enumerate(cases[N]):\n    check(\"layout fixture \" + str(i + 1), solve(p), expected)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"},"broken":{"sha256":"484d1ead578dc97d537e3b5be8963e8f164409827abce64a337865df8997213f","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(p):\n    p = dict(p)\n    virtual_start = p[\"base\"]+p[\"y\"]*p[\"pitch\"]+p[\"x\"]*6\n    first_page = virtual_start//6\n    page_offset = virtual_start%16\n    first_bytes = min(6,16-page_offset)\n    remaining = 6-first_bytes\n    first_physical = p[\"pages\"][first_page%len(p[\"pages\"])]*16+page_offset\n    second_physical = p[\"pages\"][(first_page+1)%len(p[\"pages\"])]*16\n    spans = [[first_physical,first_bytes]]+([[second_physical,remaining]] if remaining else [])\n    destination_offsets = [0,first_bytes] if remaining else [0]\n    byte_addresses = [a+i for a,count in spans for i in range(count)]\n    return {'virtual_start': virtual_start, 'first_page': first_page, 'page_offset': page_offset, 'first_bytes': first_bytes, 'remaining': remaining, 'first_physical': first_physical, 'second_physical': second_physical, 'spans': spans, 'destination_offsets': destination_offsets, 'byte_addresses': byte_addresses}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncases = {1: [({'w': 8, 'x': 0, 'y': 0, 'pitch': 49, 'base': 13, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 13, 'first_page': 0, 'page_offset': 13, 'first_bytes': 3, 'remaining': 3, 'first_physical': 61, 'second_physical': 112, 'spans': [[61, 3], [112, 3]], 'destination_offsets': [0, 3], 'byte_addresses': [61, 62, 63, 112, 113, 114]}), ({'w': 8, 'x': 1, 'y': 1, 'pitch': 49, 'base': 13, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 68, 'first_page': 4, 'page_offset': 4, 'first_bytes': 6, 'remaining': 0, 'first_physical': 36, 'second_physical': 160, 'spans': [[36, 6]], 'destination_offsets': [0], 'byte_addresses': [36, 37, 38, 39, 40, 41]}), ({'w': 8, 'x': 2, 'y': 2, 'pitch': 49, 'base': 13, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 123, 'first_page': 7, 'page_offset': 11, 'first_bytes': 5, 'remaining': 1, 'first_physical': 155, 'second_physical': 96, 'spans': [[155, 5], [96, 1]], 'destination_offsets': [0, 5], 'byte_addresses': [155, 156, 157, 158, 159, 96]}), ({'w': 8, 'x': 3, 'y': 0, 'pitch': 49, 'base': 13, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 31, 'first_page': 1, 'page_offset': 15, 'first_bytes': 1, 'remaining': 5, 'first_physical': 127, 'second_physical': 16, 'spans': [[127, 1], [16, 5]], 'destination_offsets': [0, 1], 'byte_addresses': [127, 16, 17, 18, 19, 20]}), ({'w': 8, 'x': 4, 'y': 1, 'pitch': 49, 'base': 13, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 86, 'first_page': 5, 'page_offset': 6, 'first_bytes': 6, 'remaining': 0, 'first_physical': 166, 'second_physical': 64, 'spans': [[166, 6]], 'destination_offsets': [0], 'byte_addresses': [166, 167, 168, 169, 170, 171]}), ({'w': 8, 'x': 5, 'y': 2, 'pitch': 49, 'base': 13, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 141, 'first_page': 8, 'page_offset': 13, 'first_bytes': 3, 'remaining': 3, 'first_physical': 109, 'second_physical': 176, 'spans': [[109, 3], [176, 3]], 'destination_offsets': [0, 3], 'byte_addresses': [109, 110, 111, 176, 177, 178]})], 2: [({'w': 9, 'x': 0, 'y': 0, 'pitch': 55, 'base': 26, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 26, 'first_page': 1, 'page_offset': 10, 'first_bytes': 6, 'remaining': 0, 'first_physical': 122, 'second_physical': 16, 'spans': [[122, 6]], 'destination_offsets': [0], 'byte_addresses': [122, 123, 124, 125, 126, 127]}), ({'w': 9, 'x': 1, 'y': 1, 'pitch': 55, 'base': 26, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 87, 'first_page': 5, 'page_offset': 7, 'first_bytes': 6, 'remaining': 0, 'first_physical': 167, 'second_physical': 64, 'spans': [[167, 6]], 'destination_offsets': [0], 'byte_addresses': [167, 168, 169, 170, 171, 172]}), ({'w': 9, 'x': 2, 'y': 2, 'pitch': 55, 'base': 26, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 148, 'first_page': 9, 'page_offset': 4, 'first_bytes': 6, 'remaining': 0, 'first_physical': 180, 'second_physical': 80, 'spans': [[180, 6]], 'destination_offsets': [0], 'byte_addresses': [180, 181, 182, 183, 184, 185]}), ({'w': 9, 'x': 3, 'y': 0, 'pitch': 55, 'base': 26, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 44, 'first_page': 2, 'page_offset': 12, 'first_bytes': 4, 'remaining': 2, 'first_physical': 28, 'second_physical': 128, 'spans': [[28, 4], [128, 2]], 'destination_offsets': [0, 4], 'byte_addresses': [28, 29, 30, 31, 128, 129]}), ({'w': 9, 'x': 4, 'y': 1, 'pitch': 55, 'base': 26, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 105, 'first_page': 6, 'page_offset': 9, 'first_bytes': 6, 'remaining': 0, 'first_physical': 73, 'second_physical': 144, 'spans': [[73, 6]], 'destination_offsets': [0], 'byte_addresses': [73, 74, 75, 76, 77, 78]}), ({'w': 9, 'x': 5, 'y': 2, 'pitch': 55, 'base': 26, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 166, 'first_page': 10, 'page_offset': 6, 'first_bytes': 6, 'remaining': 0, 'first_physical': 86, 'second_physical': 192, 'spans': [[86, 6]], 'destination_offsets': [0], 'byte_addresses': [86, 87, 88, 89, 90, 91]})], 3: [({'w': 10, 'x': 0, 'y': 0, 'pitch': 61, 'base': 39, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 39, 'first_page': 2, 'page_offset': 7, 'first_bytes': 6, 'remaining': 0, 'first_physical': 23, 'second_physical': 128, 'spans': [[23, 6]], 'destination_offsets': [0], 'byte_addresses': [23, 24, 25, 26, 27, 28]}), ({'w': 10, 'x': 1, 'y': 1, 'pitch': 61, 'base': 39, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 106, 'first_page': 6, 'page_offset': 10, 'first_bytes': 6, 'remaining': 0, 'first_physical': 74, 'second_physical': 144, 'spans': [[74, 6]], 'destination_offsets': [0], 'byte_addresses': [74, 75, 76, 77, 78, 79]}), ({'w': 10, 'x': 2, 'y': 2, 'pitch': 61, 'base': 39, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 173, 'first_page': 10, 'page_offset': 13, 'first_bytes': 3, 'remaining': 3, 'first_physical': 93, 'second_physical': 192, 'spans': [[93, 3], [192, 3]], 'destination_offsets': [0, 3], 'byte_addresses': [93, 94, 95, 192, 193, 194]}), ({'w': 10, 'x': 3, 'y': 0, 'pitch': 61, 'base': 39, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 57, 'first_page': 3, 'page_offset': 9, 'first_bytes': 6, 'remaining': 0, 'first_physical': 137, 'second_physical': 32, 'spans': [[137, 6]], 'destination_offsets': [0], 'byte_addresses': [137, 138, 139, 140, 141, 142]}), ({'w': 10, 'x': 4, 'y': 1, 'pitch': 61, 'base': 39, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 124, 'first_page': 7, 'page_offset': 12, 'first_bytes': 4, 'remaining': 2, 'first_physical': 156, 'second_physical': 96, 'spans': [[156, 4], [96, 2]], 'destination_offsets': [0, 4], 'byte_addresses': [156, 157, 158, 159, 96, 97]}), ({'w': 10, 'x': 5, 'y': 2, 'pitch': 61, 'base': 39, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 191, 'first_page': 11, 'page_offset': 15, 'first_bytes': 1, 'remaining': 5, 'first_physical': 207, 'second_physical': 224, 'spans': [[207, 1], [224, 5]], 'destination_offsets': [0, 1], 'byte_addresses': [207, 224, 225, 226, 227, 228]})], 4: [({'w': 11, 'x': 0, 'y': 0, 'pitch': 67, 'base': 52, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 52, 'first_page': 3, 'page_offset': 4, 'first_bytes': 6, 'remaining': 0, 'first_physical': 132, 'second_physical': 32, 'spans': [[132, 6]], 'destination_offsets': [0], 'byte_addresses': [132, 133, 134, 135, 136, 137]}), ({'w': 11, 'x': 1, 'y': 1, 'pitch': 67, 'base': 52, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 125, 'first_page': 7, 'page_offset': 13, 'first_bytes': 3, 'remaining': 3, 'first_physical': 157, 'second_physical': 96, 'spans': [[157, 3], [96, 3]], 'destination_offsets': [0, 3], 'byte_addresses': [157, 158, 159, 96, 97, 98]}), ({'w': 11, 'x': 2, 'y': 2, 'pitch': 67, 'base': 52, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 198, 'first_page': 12, 'page_offset': 6, 'first_bytes': 6, 'remaining': 0, 'first_physical': 230, 'second_physical': 208, 'spans': [[230, 6]], 'destination_offsets': [0], 'byte_addresses': [230, 231, 232, 233, 234, 235]}), ({'w': 11, 'x': 3, 'y': 0, 'pitch': 67, 'base': 52, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 70, 'first_page': 4, 'page_offset': 6, 'first_bytes': 6, 'remaining': 0, 'first_physical': 38, 'second_physical': 160, 'spans': [[38, 6]], 'destination_offsets': [0], 'byte_addresses': [38, 39, 40, 41, 42, 43]}), ({'w': 11, 'x': 4, 'y': 1, 'pitch': 67, 'base': 52, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 143, 'first_page': 8, 'page_offset': 15, 'first_bytes': 1, 'remaining': 5, 'first_physical': 111, 'second_physical': 176, 'spans': [[111, 1], [176, 5]], 'destination_offsets': [0, 1], 'byte_addresses': [111, 176, 177, 178, 179, 180]}), ({'w': 11, 'x': 5, 'y': 2, 'pitch': 67, 'base': 52, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 216, 'first_page': 13, 'page_offset': 8, 'first_bytes': 6, 'remaining': 0, 'first_physical': 216, 'second_physical': 240, 'spans': [[216, 6]], 'destination_offsets': [0], 'byte_addresses': [216, 217, 218, 219, 220, 221]})], 5: [({'w': 12, 'x': 0, 'y': 0, 'pitch': 73, 'base': 65, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 65, 'first_page': 4, 'page_offset': 1, 'first_bytes': 6, 'remaining': 0, 'first_physical': 33, 'second_physical': 160, 'spans': [[33, 6]], 'destination_offsets': [0], 'byte_addresses': [33, 34, 35, 36, 37, 38]}), ({'w': 12, 'x': 1, 'y': 1, 'pitch': 73, 'base': 65, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 144, 'first_page': 9, 'page_offset': 0, 'first_bytes': 6, 'remaining': 0, 'first_physical': 176, 'second_physical': 80, 'spans': [[176, 6]], 'destination_offsets': [0], 'byte_addresses': [176, 177, 178, 179, 180, 181]}), ({'w': 12, 'x': 2, 'y': 2, 'pitch': 73, 'base': 65, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 223, 'first_page': 13, 'page_offset': 15, 'first_bytes': 1, 'remaining': 5, 'first_physical': 223, 'second_physical': 240, 'spans': [[223, 1], [240, 5]], 'destination_offsets': [0, 1], 'byte_addresses': [223, 240, 241, 242, 243, 244]}), ({'w': 12, 'x': 3, 'y': 0, 'pitch': 73, 'base': 65, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 83, 'first_page': 5, 'page_offset': 3, 'first_bytes': 6, 'remaining': 0, 'first_physical': 163, 'second_physical': 64, 'spans': [[163, 6]], 'destination_offsets': [0], 'byte_addresses': [163, 164, 165, 166, 167, 168]}), ({'w': 12, 'x': 4, 'y': 1, 'pitch': 73, 'base': 65, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 162, 'first_page': 10, 'page_offset': 2, 'first_bytes': 6, 'remaining': 0, 'first_physical': 82, 'second_physical': 192, 'spans': [[82, 6]], 'destination_offsets': [0], 'byte_addresses': [82, 83, 84, 85, 86, 87]}), ({'w': 12, 'x': 5, 'y': 2, 'pitch': 73, 'base': 65, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 241, 'first_page': 15, 'page_offset': 1, 'first_bytes': 6, 'remaining': 0, 'first_physical': 257, 'second_physical': 272, 'spans': [[257, 6]], 'destination_offsets': [0], 'byte_addresses': [257, 258, 259, 260, 261, 262]})]}\nfor i, (p, expected) in enumerate(cases[N]):\n    check(\"layout fixture \" + str(i + 1), solve(p), expected)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"},"fixed":{"sha256":"bfc24972b30a3f4076fbbd0a66637df39f0d1a45b59ccd8642ade652ef1dbbe2","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(p):\n    p = dict(p)\n    virtual_start = p[\"base\"]+p[\"y\"]*p[\"pitch\"]+p[\"x\"]*6\n    first_page = virtual_start//16\n    page_offset = virtual_start%16\n    first_bytes = min(6,16-page_offset)\n    remaining = 6-first_bytes\n    first_physical = p[\"pages\"][first_page%len(p[\"pages\"])]*16+page_offset\n    second_physical = p[\"pages\"][(first_page+1)%len(p[\"pages\"])]*16\n    spans = [[first_physical,first_bytes]]+([[second_physical,remaining]] if remaining else [])\n    destination_offsets = [0,first_bytes] if remaining else [0]\n    byte_addresses = [a+i for a,count in spans for i in range(count)]\n    return {'virtual_start': virtual_start, 'first_page': first_page, 'page_offset': page_offset, 'first_bytes': first_bytes, 'remaining': remaining, 'first_physical': first_physical, 'second_physical': second_physical, 'spans': spans, 'destination_offsets': destination_offsets, 'byte_addresses': byte_addresses}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncases = {1: [({'w': 8, 'x': 0, 'y': 0, 'pitch': 49, 'base': 13, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 13, 'first_page': 0, 'page_offset': 13, 'first_bytes': 3, 'remaining': 3, 'first_physical': 61, 'second_physical': 112, 'spans': [[61, 3], [112, 3]], 'destination_offsets': [0, 3], 'byte_addresses': [61, 62, 63, 112, 113, 114]}), ({'w': 8, 'x': 1, 'y': 1, 'pitch': 49, 'base': 13, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 68, 'first_page': 4, 'page_offset': 4, 'first_bytes': 6, 'remaining': 0, 'first_physical': 36, 'second_physical': 160, 'spans': [[36, 6]], 'destination_offsets': [0], 'byte_addresses': [36, 37, 38, 39, 40, 41]}), ({'w': 8, 'x': 2, 'y': 2, 'pitch': 49, 'base': 13, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 123, 'first_page': 7, 'page_offset': 11, 'first_bytes': 5, 'remaining': 1, 'first_physical': 155, 'second_physical': 96, 'spans': [[155, 5], [96, 1]], 'destination_offsets': [0, 5], 'byte_addresses': [155, 156, 157, 158, 159, 96]}), ({'w': 8, 'x': 3, 'y': 0, 'pitch': 49, 'base': 13, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 31, 'first_page': 1, 'page_offset': 15, 'first_bytes': 1, 'remaining': 5, 'first_physical': 127, 'second_physical': 16, 'spans': [[127, 1], [16, 5]], 'destination_offsets': [0, 1], 'byte_addresses': [127, 16, 17, 18, 19, 20]}), ({'w': 8, 'x': 4, 'y': 1, 'pitch': 49, 'base': 13, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 86, 'first_page': 5, 'page_offset': 6, 'first_bytes': 6, 'remaining': 0, 'first_physical': 166, 'second_physical': 64, 'spans': [[166, 6]], 'destination_offsets': [0], 'byte_addresses': [166, 167, 168, 169, 170, 171]}), ({'w': 8, 'x': 5, 'y': 2, 'pitch': 49, 'base': 13, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 141, 'first_page': 8, 'page_offset': 13, 'first_bytes': 3, 'remaining': 3, 'first_physical': 109, 'second_physical': 176, 'spans': [[109, 3], [176, 3]], 'destination_offsets': [0, 3], 'byte_addresses': [109, 110, 111, 176, 177, 178]})], 2: [({'w': 9, 'x': 0, 'y': 0, 'pitch': 55, 'base': 26, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 26, 'first_page': 1, 'page_offset': 10, 'first_bytes': 6, 'remaining': 0, 'first_physical': 122, 'second_physical': 16, 'spans': [[122, 6]], 'destination_offsets': [0], 'byte_addresses': [122, 123, 124, 125, 126, 127]}), ({'w': 9, 'x': 1, 'y': 1, 'pitch': 55, 'base': 26, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 87, 'first_page': 5, 'page_offset': 7, 'first_bytes': 6, 'remaining': 0, 'first_physical': 167, 'second_physical': 64, 'spans': [[167, 6]], 'destination_offsets': [0], 'byte_addresses': [167, 168, 169, 170, 171, 172]}), ({'w': 9, 'x': 2, 'y': 2, 'pitch': 55, 'base': 26, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 148, 'first_page': 9, 'page_offset': 4, 'first_bytes': 6, 'remaining': 0, 'first_physical': 180, 'second_physical': 80, 'spans': [[180, 6]], 'destination_offsets': [0], 'byte_addresses': [180, 181, 182, 183, 184, 185]}), ({'w': 9, 'x': 3, 'y': 0, 'pitch': 55, 'base': 26, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 44, 'first_page': 2, 'page_offset': 12, 'first_bytes': 4, 'remaining': 2, 'first_physical': 28, 'second_physical': 128, 'spans': [[28, 4], [128, 2]], 'destination_offsets': [0, 4], 'byte_addresses': [28, 29, 30, 31, 128, 129]}), ({'w': 9, 'x': 4, 'y': 1, 'pitch': 55, 'base': 26, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 105, 'first_page': 6, 'page_offset': 9, 'first_bytes': 6, 'remaining': 0, 'first_physical': 73, 'second_physical': 144, 'spans': [[73, 6]], 'destination_offsets': [0], 'byte_addresses': [73, 74, 75, 76, 77, 78]}), ({'w': 9, 'x': 5, 'y': 2, 'pitch': 55, 'base': 26, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 166, 'first_page': 10, 'page_offset': 6, 'first_bytes': 6, 'remaining': 0, 'first_physical': 86, 'second_physical': 192, 'spans': [[86, 6]], 'destination_offsets': [0], 'byte_addresses': [86, 87, 88, 89, 90, 91]})], 3: [({'w': 10, 'x': 0, 'y': 0, 'pitch': 61, 'base': 39, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 39, 'first_page': 2, 'page_offset': 7, 'first_bytes': 6, 'remaining': 0, 'first_physical': 23, 'second_physical': 128, 'spans': [[23, 6]], 'destination_offsets': [0], 'byte_addresses': [23, 24, 25, 26, 27, 28]}), ({'w': 10, 'x': 1, 'y': 1, 'pitch': 61, 'base': 39, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 106, 'first_page': 6, 'page_offset': 10, 'first_bytes': 6, 'remaining': 0, 'first_physical': 74, 'second_physical': 144, 'spans': [[74, 6]], 'destination_offsets': [0], 'byte_addresses': [74, 75, 76, 77, 78, 79]}), ({'w': 10, 'x': 2, 'y': 2, 'pitch': 61, 'base': 39, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 173, 'first_page': 10, 'page_offset': 13, 'first_bytes': 3, 'remaining': 3, 'first_physical': 93, 'second_physical': 192, 'spans': [[93, 3], [192, 3]], 'destination_offsets': [0, 3], 'byte_addresses': [93, 94, 95, 192, 193, 194]}), ({'w': 10, 'x': 3, 'y': 0, 'pitch': 61, 'base': 39, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 57, 'first_page': 3, 'page_offset': 9, 'first_bytes': 6, 'remaining': 0, 'first_physical': 137, 'second_physical': 32, 'spans': [[137, 6]], 'destination_offsets': [0], 'byte_addresses': [137, 138, 139, 140, 141, 142]}), ({'w': 10, 'x': 4, 'y': 1, 'pitch': 61, 'base': 39, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 124, 'first_page': 7, 'page_offset': 12, 'first_bytes': 4, 'remaining': 2, 'first_physical': 156, 'second_physical': 96, 'spans': [[156, 4], [96, 2]], 'destination_offsets': [0, 4], 'byte_addresses': [156, 157, 158, 159, 96, 97]}), ({'w': 10, 'x': 5, 'y': 2, 'pitch': 61, 'base': 39, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 191, 'first_page': 11, 'page_offset': 15, 'first_bytes': 1, 'remaining': 5, 'first_physical': 207, 'second_physical': 224, 'spans': [[207, 1], [224, 5]], 'destination_offsets': [0, 1], 'byte_addresses': [207, 224, 225, 226, 227, 228]})], 4: [({'w': 11, 'x': 0, 'y': 0, 'pitch': 67, 'base': 52, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 52, 'first_page': 3, 'page_offset': 4, 'first_bytes': 6, 'remaining': 0, 'first_physical': 132, 'second_physical': 32, 'spans': [[132, 6]], 'destination_offsets': [0], 'byte_addresses': [132, 133, 134, 135, 136, 137]}), ({'w': 11, 'x': 1, 'y': 1, 'pitch': 67, 'base': 52, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 125, 'first_page': 7, 'page_offset': 13, 'first_bytes': 3, 'remaining': 3, 'first_physical': 157, 'second_physical': 96, 'spans': [[157, 3], [96, 3]], 'destination_offsets': [0, 3], 'byte_addresses': [157, 158, 159, 96, 97, 98]}), ({'w': 11, 'x': 2, 'y': 2, 'pitch': 67, 'base': 52, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 198, 'first_page': 12, 'page_offset': 6, 'first_bytes': 6, 'remaining': 0, 'first_physical': 230, 'second_physical': 208, 'spans': [[230, 6]], 'destination_offsets': [0], 'byte_addresses': [230, 231, 232, 233, 234, 235]}), ({'w': 11, 'x': 3, 'y': 0, 'pitch': 67, 'base': 52, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 70, 'first_page': 4, 'page_offset': 6, 'first_bytes': 6, 'remaining': 0, 'first_physical': 38, 'second_physical': 160, 'spans': [[38, 6]], 'destination_offsets': [0], 'byte_addresses': [38, 39, 40, 41, 42, 43]}), ({'w': 11, 'x': 4, 'y': 1, 'pitch': 67, 'base': 52, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 143, 'first_page': 8, 'page_offset': 15, 'first_bytes': 1, 'remaining': 5, 'first_physical': 111, 'second_physical': 176, 'spans': [[111, 1], [176, 5]], 'destination_offsets': [0, 1], 'byte_addresses': [111, 176, 177, 178, 179, 180]}), ({'w': 11, 'x': 5, 'y': 2, 'pitch': 67, 'base': 52, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 216, 'first_page': 13, 'page_offset': 8, 'first_bytes': 6, 'remaining': 0, 'first_physical': 216, 'second_physical': 240, 'spans': [[216, 6]], 'destination_offsets': [0], 'byte_addresses': [216, 217, 218, 219, 220, 221]})], 5: [({'w': 12, 'x': 0, 'y': 0, 'pitch': 73, 'base': 65, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 65, 'first_page': 4, 'page_offset': 1, 'first_bytes': 6, 'remaining': 0, 'first_physical': 33, 'second_physical': 160, 'spans': [[33, 6]], 'destination_offsets': [0], 'byte_addresses': [33, 34, 35, 36, 37, 38]}), ({'w': 12, 'x': 1, 'y': 1, 'pitch': 73, 'base': 65, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 144, 'first_page': 9, 'page_offset': 0, 'first_bytes': 6, 'remaining': 0, 'first_physical': 176, 'second_physical': 80, 'spans': [[176, 6]], 'destination_offsets': [0], 'byte_addresses': [176, 177, 178, 179, 180, 181]}), ({'w': 12, 'x': 2, 'y': 2, 'pitch': 73, 'base': 65, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 223, 'first_page': 13, 'page_offset': 15, 'first_bytes': 1, 'remaining': 5, 'first_physical': 223, 'second_physical': 240, 'spans': [[223, 1], [240, 5]], 'destination_offsets': [0, 1], 'byte_addresses': [223, 240, 241, 242, 243, 244]}), ({'w': 12, 'x': 3, 'y': 0, 'pitch': 73, 'base': 65, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 83, 'first_page': 5, 'page_offset': 3, 'first_bytes': 6, 'remaining': 0, 'first_physical': 163, 'second_physical': 64, 'spans': [[163, 6]], 'destination_offsets': [0], 'byte_addresses': [163, 164, 165, 166, 167, 168]}), ({'w': 12, 'x': 4, 'y': 1, 'pitch': 73, 'base': 65, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 162, 'first_page': 10, 'page_offset': 2, 'first_bytes': 6, 'remaining': 0, 'first_physical': 82, 'second_physical': 192, 'spans': [[82, 6]], 'destination_offsets': [0], 'byte_addresses': [82, 83, 84, 85, 86, 87]}), ({'w': 12, 'x': 5, 'y': 2, 'pitch': 73, 'base': 65, 'pages': [3, 7, 1, 8, 2, 10, 4, 9, 6, 11, 5, 12, 14, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]}, {'virtual_start': 241, 'first_page': 15, 'page_offset': 1, 'first_bytes': 6, 'remaining': 0, 'first_physical': 257, 'second_physical': 272, 'spans': [[257, 6]], 'destination_offsets': [0], 'byte_addresses': [257, 258, 259, 260, 261, 262]})]}\nfor i, (p, expected) in enumerate(cases[N]):\n    check(\"layout fixture \" + str(i + 1), solve(p), expected)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"}},"limitations":"Stipulated deterministic toy buffer layout; not a graphics API, codec, GPU vendor tiling specification, or hardware-conformance claim. Inputs satisfy the dimensions and bounds stated by the model. This reproducer isolates one failure mechanism. Results cover the supplied fixtures. Variants within a family share a test contract and should remain grouped when constructing evaluation splits. Related mechanisms with a shared evaluation_group must also remain together; these controlled models are not independent production incidents.","method":"Deterministic executable model with adversarial boundary fixtures.","provenance":{"created_by":"Failure Map","dependencies":"Python standard library","family":"s3-raster-memory-layout-page-split-texel-spans-first-page","generated_at":"2026-09-29T14:45:36.028578+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Offline raster resource, upload, readback, and storage-layout regression model.","repair":"Apply the stipulated layout rule at first_page: virtual_start//16.","root_cause":"Virtual page ID uses texel size or rounds upward The faulty expression is virtual_start//6.","sha256":"1847509e9d47ad3f06f29c37c454990c8c093759e7519355cd61423a895e08dc","title":"Page Split Texel Spans: Virtual page ID uses texel size or rounds upward · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":43.601,"exit_code":1,"observations":[{"actual":{"byte_addresses":[125,126,127,16,17,18],"destination_offsets":[0,3],"first_bytes":3,"first_page":1,"first_physical":125,"page_offset":13,"remaining":3,"second_physical":16,"spans":[[125,3],[16,3]],"virtual_start":13},"check":"layout fixture 1","expected":{"byte_addresses":[61,62,63,112,113,114],"destination_offsets":[0,3],"first_bytes":3,"first_page":0,"first_physical":61,"page_offset":13,"remaining":3,"second_physical":112,"spans":[[61,3],[112,3]],"virtual_start":13},"passed":false},{"actual":{"byte_addresses":[164,165,166,167,168,169],"destination_offsets":[0],"first_bytes":6,"first_page":5,"first_physical":164,"page_offset":4,"remaining":0,"second_physical":64,"spans":[[164,6]],"virtual_start":68},"check":"layout fixture 2","expected":{"byte_addresses":[36,37,38,39,40,41],"destination_offsets":[0],"first_bytes":6,"first_page":4,"first_physical":36,"page_offset":4,"remaining":0,"second_physical":160,"spans":[[36,6]],"virtual_start":68},"passed":false},{"actual":{"byte_addresses":[107,108,109,110,111,176],"destination_offsets":[0,5],"first_bytes":5,"first_page":8,"first_physical":107,"page_offset":11,"remaining":1,"second_physical":176,"spans":[[107,5],[176,1]],"virtual_start":123},"check":"layout fixture 3","expected":{"byte_addresses":[155,156,157,158,159,96],"destination_offsets":[0,5],"first_bytes":5,"first_page":7,"first_physical":155,"page_offset":11,"remaining":1,"second_physical":96,"spans":[[155,5],[96,1]],"virtual_start":123},"passed":false},{"actual":{"byte_addresses":[31,128,129,130,131,132],"destination_offsets":[0,1],"first_bytes":1,"first_page":2,"first_physical":31,"page_offset":15,"remaining":5,"second_physical":128,"spans":[[31,1],[128,5]],"virtual_start":31},"check":"layout fixture 4","expected":{"byte_addresses":[127,16,17,18,19,20],"destination_offsets":[0,1],"first_bytes":1,"first_page":1,"first_physical":127,"page_offset":15,"remaining":5,"second_physical":16,"spans":[[127,1],[16,5]],"virtual_start":31},"passed":false},{"actual":{"byte_addresses":[70,71,72,73,74,75],"destination_offsets":[0],"first_bytes":6,"first_page":6,"first_physical":70,"page_offset":6,"remaining":0,"second_physical":144,"spans":[[70,6]],"virtual_start":86},"check":"layout fixture 5","expected":{"byte_addresses":[166,167,168,169,170,171],"destination_offsets":[0],"first_bytes":6,"first_page":5,"first_physical":166,"page_offset":6,"remaining":0,"second_physical":64,"spans":[[166,6]],"virtual_start":86},"passed":false},{"actual":{"byte_addresses":[189,190,191,80,81,82],"destination_offsets":[0,3],"first_bytes":3,"first_page":9,"first_physical":189,"page_offset":13,"remaining":3,"second_physical":80,"spans":[[189,3],[80,3]],"virtual_start":141},"check":"layout fixture 6","expected":{"byte_addresses":[109,110,111,176,177,178],"destination_offsets":[0,3],"first_bytes":3,"first_page":8,"first_physical":109,"page_offset":13,"remaining":3,"second_physical":176,"spans":[[109,3],[176,3]],"virtual_start":141},"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"layout fixture 1\", \"actual\": {\"virtual_start\": 13, \"first_page\": 1, \"page_offset\": 13, \"first_bytes\": 3, \"remaining\": 3, \"first_physical\": 125, \"second_physical\": 16, \"spans\": [[125, 3], [16, 3]], \"destination_offsets\": [0, 3], \"byte_addresses\": [125, 126, 127, 16, 17, 18]}, \"expected\": {\"virtual_start\": 13, \"first_page\": 0, \"page_offset\": 13, \"first_bytes\": 3, \"remaining\": 3, \"first_physical\": 61, \"second_physical\": 112, \"spans\": [[61, 3], [112, 3]], \"destination_offsets\": [0, 3], \"byte_addresses\": [61, 62, 63, 112, 113, 114]}, \"passed\": false}, {\"check\": \"layout fixture 2\", \"actual\": {\"virtual_start\": 68, \"first_page\": 5, \"page_offset\": 4, \"first_bytes\": 6, \"remaining\": 0, \"first_physical\": 164, \"second_physical\": 64, \"spans\": [[164, 6]], \"destination_offsets\": [0], \"byte_addresses\": [164, 165, 166, 167, 168, 169]}, \"expected\": {\"virtual_start\": 68, \"first_page\": 4, \"page_offset\": 4, \"first_bytes\": 6, \"remaining\": 0, \"first_physical\": 36, \"second_physical\": 160, \"spans\": [[36, 6]], \"destination_offsets\": [0], \"byte_addresses\": [36, 37, 38, 39, 40, 41]}, \"passed\": false}, {\"check\": \"layout fixture 3\", \"actual\": {\"virtual_start\": 123, \"first_page\": 8, \"page_offset\": 11, \"first_bytes\": 5, \"remaining\": 1, \"first_physical\": 107, \"second_physical\": 176, \"spans\": [[107, 5], [176, 1]], \"destination_offsets\": [0, 5], \"byte_addresses\": [107, 108, 109, 110, 111, 176]}, \"expected\": {\"virtual_start\": 123, \"first_page\": 7, \"page_offset\": 11, \"first_bytes\": 5, \"remaining\": 1, \"first_physical\": 155, \"second_physical\": 96, \"spans\": [[155, 5], [96, 1]], \"destination_offsets\": [0, 5], \"byte_addresses\": [155, 156, 157, 158, 159, 96]}, \"passed\": false}, {\"check\": \"layout fixture 4\", \"actual\": {\"virtual_start\": 31, \"first_page\": 2, \"page_offset\": 15, \"first_bytes\": 1, \"remaining\": 5, \"first_physical\": 31, \"second_physical\": 128, \"spans\": [[31, 1], [128, 5]], \"destination_offsets\": [0, 1], \"byte_addresses\": [31, 128, 129, 130, 131, 132]}, \"expected\": {\"virtual_start\": 31, \"first_page\": 1, \"page_offset\": 15, \"first_bytes\": 1, \"remaining\": 5, \"first_physical\": 127, \"second_physical\": 16, \"spans\": [[127, 1], [16, 5]], \"destination_offsets\": [0, 1], \"byte_addresses\": [127, 16, 17, 18, 19, 20]}, \"passed\": false}, {\"check\": \"layout fixture 5\", \"actual\": {\"virtual_start\": 86, \"first_page\": 6, \"page_offset\": 6, \"first_bytes\": 6, \"remaining\": 0, \"first_physical\": 70, \"second_physical\": 144, \"spans\": [[70, 6]], \"destination_offsets\": [0], \"byte_addresses\": [70, 71, 72, 73, 74, 75]}, \"expected\": {\"virtual_start\": 86, \"first_page\": 5, \"page_offset\": 6, \"first_bytes\": 6, \"remaining\": 0, \"first_physical\": 166, \"second_physical\": 64, \"spans\": [[166, 6]], \"destination_offsets\": [0], \"byte_addresses\": [166, 167, 168, 169, 170, 171]}, \"passed\": false}, {\"check\": \"layout fixture 6\", \"actual\": {\"virtual_start\": 141, \"first_page\": 9, \"page_offset\": 13, \"first_bytes\": 3, \"remaining\": 3, \"first_physical\": 189, \"second_physical\": 80, \"spans\": [[189, 3], [80, 3]], \"destination_offsets\": [0, 3], \"byte_addresses\": [189, 190, 191, 80, 81, 82]}, \"expected\": {\"virtual_start\": 141, \"first_page\": 8, \"page_offset\": 13, \"first_bytes\": 3, \"remaining\": 3, \"first_physical\": 109, \"second_physical\": 176, \"spans\": [[109, 3], [176, 3]], \"destination_offsets\": [0, 3], \"byte_addresses\": [109, 110, 111, 176, 177, 178]}, \"passed\": false}], \"passed\": false}\n"},"broken":{"elapsed_ms":43.444,"exit_code":1,"observations":[{"actual":{"byte_addresses":[29,30,31,128,129,130],"destination_offsets":[0,3],"first_bytes":3,"first_page":2,"first_physical":29,"page_offset":13,"remaining":3,"second_physical":128,"spans":[[29,3],[128,3]],"virtual_start":13},"check":"layout fixture 1","expected":{"byte_addresses":[61,62,63,112,113,114],"destination_offsets":[0,3],"first_bytes":3,"first_page":0,"first_physical":61,"page_offset":13,"remaining":3,"second_physical":112,"spans":[[61,3],[112,3]],"virtual_start":13},"passed":false},{"actual":{"byte_addresses":[196,197,198,199,200,201],"destination_offsets":[0],"first_bytes":6,"first_page":11,"first_physical":196,"page_offset":4,"remaining":0,"second_physical":224,"spans":[[196,6]],"virtual_start":68},"check":"layout fixture 2","expected":{"byte_addresses":[36,37,38,39,40,41],"destination_offsets":[0],"first_bytes":6,"first_page":4,"first_physical":36,"page_offset":4,"remaining":0,"second_physical":160,"spans":[[36,6]],"virtual_start":68},"passed":false},{"actual":{"byte_addresses":[347,348,349,350,351,352],"destination_offsets":[0,5],"first_bytes":5,"first_page":20,"first_physical":347,"page_offset":11,"remaining":1,"second_physical":352,"spans":[[347,5],[352,1]],"virtual_start":123},"check":"layout fixture 3","expected":{"byte_addresses":[155,156,157,158,159,96],"destination_offsets":[0,5],"first_bytes":5,"first_page":7,"first_physical":155,"page_offset":11,"remaining":1,"second_physical":96,"spans":[[155,5],[96,1]],"virtual_start":123},"passed":false},{"actual":{"byte_addresses":[175,64,65,66,67,68],"destination_offsets":[0,1],"first_bytes":1,"first_page":5,"first_physical":175,"page_offset":15,"remaining":5,"second_physical":64,"spans":[[175,1],[64,5]],"virtual_start":31},"check":"layout fixture 4","expected":{"byte_addresses":[127,16,17,18,19,20],"destination_offsets":[0,1],"first_bytes":1,"first_page":1,"first_physical":127,"page_offset":15,"remaining":5,"second_physical":16,"spans":[[127,1],[16,5]],"virtual_start":31},"passed":false},{"actual":{"byte_addresses":[246,247,248,249,250,251],"destination_offsets":[0],"first_bytes":6,"first_page":14,"first_physical":246,"page_offset":6,"remaining":0,"second_physical":256,"spans":[[246,6]],"virtual_start":86},"check":"layout fixture 5","expected":{"byte_addresses":[166,167,168,169,170,171],"destination_offsets":[0],"first_bytes":6,"first_page":5,"first_physical":166,"page_offset":6,"remaining":0,"second_physical":64,"spans":[[166,6]],"virtual_start":86},"passed":false},{"actual":{"byte_addresses":[397,398,399,400,401,402],"destination_offsets":[0,3],"first_bytes":3,"first_page":23,"first_physical":397,"page_offset":13,"remaining":3,"second_physical":400,"spans":[[397,3],[400,3]],"virtual_start":141},"check":"layout fixture 6","expected":{"byte_addresses":[109,110,111,176,177,178],"destination_offsets":[0,3],"first_bytes":3,"first_page":8,"first_physical":109,"page_offset":13,"remaining":3,"second_physical":176,"spans":[[109,3],[176,3]],"virtual_start":141},"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"layout fixture 1\", \"actual\": {\"virtual_start\": 13, \"first_page\": 2, \"page_offset\": 13, \"first_bytes\": 3, \"remaining\": 3, \"first_physical\": 29, \"second_physical\": 128, \"spans\": [[29, 3], [128, 3]], \"destination_offsets\": [0, 3], \"byte_addresses\": [29, 30, 31, 128, 129, 130]}, \"expected\": {\"virtual_start\": 13, \"first_page\": 0, \"page_offset\": 13, \"first_bytes\": 3, \"remaining\": 3, \"first_physical\": 61, \"second_physical\": 112, \"spans\": [[61, 3], [112, 3]], \"destination_offsets\": [0, 3], \"byte_addresses\": [61, 62, 63, 112, 113, 114]}, \"passed\": false}, {\"check\": \"layout fixture 2\", \"actual\": {\"virtual_start\": 68, \"first_page\": 11, \"page_offset\": 4, \"first_bytes\": 6, \"remaining\": 0, \"first_physical\": 196, \"second_physical\": 224, \"spans\": [[196, 6]], \"destination_offsets\": [0], \"byte_addresses\": [196, 197, 198, 199, 200, 201]}, \"expected\": {\"virtual_start\": 68, \"first_page\": 4, \"page_offset\": 4, \"first_bytes\": 6, \"remaining\": 0, \"first_physical\": 36, \"second_physical\": 160, \"spans\": [[36, 6]], \"destination_offsets\": [0], \"byte_addresses\": [36, 37, 38, 39, 40, 41]}, \"passed\": false}, {\"check\": \"layout fixture 3\", \"actual\": {\"virtual_start\": 123, \"first_page\": 20, \"page_offset\": 11, \"first_bytes\": 5, \"remaining\": 1, \"first_physical\": 347, \"second_physical\": 352, \"spans\": [[347, 5], [352, 1]], \"destination_offsets\": [0, 5], \"byte_addresses\": [347, 348, 349, 350, 351, 352]}, \"expected\": {\"virtual_start\": 123, \"first_page\": 7, \"page_offset\": 11, \"first_bytes\": 5, \"remaining\": 1, \"first_physical\": 155, \"second_physical\": 96, \"spans\": [[155, 5], [96, 1]], \"destination_offsets\": [0, 5], \"byte_addresses\": [155, 156, 157, 158, 159, 96]}, \"passed\": false}, {\"check\": \"layout fixture 4\", \"actual\": {\"virtual_start\": 31, \"first_page\": 5, \"page_offset\": 15, \"first_bytes\": 1, \"remaining\": 5, \"first_physical\": 175, \"second_physical\": 64, \"spans\": [[175, 1], [64, 5]], \"destination_offsets\": [0, 1], \"byte_addresses\": [175, 64, 65, 66, 67, 68]}, \"expected\": {\"virtual_start\": 31, \"first_page\": 1, \"page_offset\": 15, \"first_bytes\": 1, \"remaining\": 5, \"first_physical\": 127, \"second_physical\": 16, \"spans\": [[127, 1], [16, 5]], \"destination_offsets\": [0, 1], \"byte_addresses\": [127, 16, 17, 18, 19, 20]}, \"passed\": false}, {\"check\": \"layout fixture 5\", \"actual\": {\"virtual_start\": 86, \"first_page\": 14, \"page_offset\": 6, \"first_bytes\": 6, \"remaining\": 0, \"first_physical\": 246, \"second_physical\": 256, \"spans\": [[246, 6]], \"destination_offsets\": [0], \"byte_addresses\": [246, 247, 248, 249, 250, 251]}, \"expected\": {\"virtual_start\": 86, \"first_page\": 5, \"page_offset\": 6, \"first_bytes\": 6, \"remaining\": 0, \"first_physical\": 166, \"second_physical\": 64, \"spans\": [[166, 6]], \"destination_offsets\": [0], \"byte_addresses\": [166, 167, 168, 169, 170, 171]}, \"passed\": false}, {\"check\": \"layout fixture 6\", \"actual\": {\"virtual_start\": 141, \"first_page\": 23, \"page_offset\": 13, \"first_bytes\": 3, \"remaining\": 3, \"first_physical\": 397, \"second_physical\": 400, \"spans\": [[397, 3], [400, 3]], \"destination_offsets\": [0, 3], \"byte_addresses\": [397, 398, 399, 400, 401, 402]}, \"expected\": {\"virtual_start\": 141, \"first_page\": 8, \"page_offset\": 13, \"first_bytes\": 3, \"remaining\": 3, \"first_physical\": 109, \"second_physical\": 176, \"spans\": [[109, 3], [176, 3]], \"destination_offsets\": [0, 3], \"byte_addresses\": [109, 110, 111, 176, 177, 178]}, \"passed\": false}], \"passed\": false}\n"},"fixed":{"elapsed_ms":47.768,"exit_code":0,"observations":[{"actual":{"byte_addresses":[61,62,63,112,113,114],"destination_offsets":[0,3],"first_bytes":3,"first_page":0,"first_physical":61,"page_offset":13,"remaining":3,"second_physical":112,"spans":[[61,3],[112,3]],"virtual_start":13},"check":"layout fixture 1","expected":{"byte_addresses":[61,62,63,112,113,114],"destination_offsets":[0,3],"first_bytes":3,"first_page":0,"first_physical":61,"page_offset":13,"remaining":3,"second_physical":112,"spans":[[61,3],[112,3]],"virtual_start":13},"passed":true},{"actual":{"byte_addresses":[36,37,38,39,40,41],"destination_offsets":[0],"first_bytes":6,"first_page":4,"first_physical":36,"page_offset":4,"remaining":0,"second_physical":160,"spans":[[36,6]],"virtual_start":68},"check":"layout fixture 2","expected":{"byte_addresses":[36,37,38,39,40,41],"destination_offsets":[0],"first_bytes":6,"first_page":4,"first_physical":36,"page_offset":4,"remaining":0,"second_physical":160,"spans":[[36,6]],"virtual_start":68},"passed":true},{"actual":{"byte_addresses":[155,156,157,158,159,96],"destination_offsets":[0,5],"first_bytes":5,"first_page":7,"first_physical":155,"page_offset":11,"remaining":1,"second_physical":96,"spans":[[155,5],[96,1]],"virtual_start":123},"check":"layout fixture 3","expected":{"byte_addresses":[155,156,157,158,159,96],"destination_offsets":[0,5],"first_bytes":5,"first_page":7,"first_physical":155,"page_offset":11,"remaining":1,"second_physical":96,"spans":[[155,5],[96,1]],"virtual_start":123},"passed":true},{"actual":{"byte_addresses":[127,16,17,18,19,20],"destination_offsets":[0,1],"first_bytes":1,"first_page":1,"first_physical":127,"page_offset":15,"remaining":5,"second_physical":16,"spans":[[127,1],[16,5]],"virtual_start":31},"check":"layout fixture 4","expected":{"byte_addresses":[127,16,17,18,19,20],"destination_offsets":[0,1],"first_bytes":1,"first_page":1,"first_physical":127,"page_offset":15,"remaining":5,"second_physical":16,"spans":[[127,1],[16,5]],"virtual_start":31},"passed":true},{"actual":{"byte_addresses":[166,167,168,169,170,171],"destination_offsets":[0],"first_bytes":6,"first_page":5,"first_physical":166,"page_offset":6,"remaining":0,"second_physical":64,"spans":[[166,6]],"virtual_start":86},"check":"layout fixture 5","expected":{"byte_addresses":[166,167,168,169,170,171],"destination_offsets":[0],"first_bytes":6,"first_page":5,"first_physical":166,"page_offset":6,"remaining":0,"second_physical":64,"spans":[[166,6]],"virtual_start":86},"passed":true},{"actual":{"byte_addresses":[109,110,111,176,177,178],"destination_offsets":[0,3],"first_bytes":3,"first_page":8,"first_physical":109,"page_offset":13,"remaining":3,"second_physical":176,"spans":[[109,3],[176,3]],"virtual_start":141},"check":"layout fixture 6","expected":{"byte_addresses":[109,110,111,176,177,178],"destination_offsets":[0,3],"first_bytes":3,"first_page":8,"first_physical":109,"page_offset":13,"remaining":3,"second_physical":176,"spans":[[109,3],[176,3]],"virtual_start":141},"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"layout fixture 1\", \"actual\": {\"virtual_start\": 13, \"first_page\": 0, \"page_offset\": 13, \"first_bytes\": 3, \"remaining\": 3, \"first_physical\": 61, \"second_physical\": 112, \"spans\": [[61, 3], [112, 3]], \"destination_offsets\": [0, 3], \"byte_addresses\": [61, 62, 63, 112, 113, 114]}, \"expected\": {\"virtual_start\": 13, \"first_page\": 0, \"page_offset\": 13, \"first_bytes\": 3, \"remaining\": 3, \"first_physical\": 61, \"second_physical\": 112, \"spans\": [[61, 3], [112, 3]], \"destination_offsets\": [0, 3], \"byte_addresses\": [61, 62, 63, 112, 113, 114]}, \"passed\": true}, {\"check\": \"layout fixture 2\", \"actual\": {\"virtual_start\": 68, \"first_page\": 4, \"page_offset\": 4, \"first_bytes\": 6, \"remaining\": 0, \"first_physical\": 36, \"second_physical\": 160, \"spans\": [[36, 6]], \"destination_offsets\": [0], \"byte_addresses\": [36, 37, 38, 39, 40, 41]}, \"expected\": {\"virtual_start\": 68, \"first_page\": 4, \"page_offset\": 4, \"first_bytes\": 6, \"remaining\": 0, \"first_physical\": 36, \"second_physical\": 160, \"spans\": [[36, 6]], \"destination_offsets\": [0], \"byte_addresses\": [36, 37, 38, 39, 40, 41]}, \"passed\": true}, {\"check\": \"layout fixture 3\", \"actual\": {\"virtual_start\": 123, \"first_page\": 7, \"page_offset\": 11, \"first_bytes\": 5, \"remaining\": 1, \"first_physical\": 155, \"second_physical\": 96, \"spans\": [[155, 5], [96, 1]], \"destination_offsets\": [0, 5], \"byte_addresses\": [155, 156, 157, 158, 159, 96]}, \"expected\": {\"virtual_start\": 123, \"first_page\": 7, \"page_offset\": 11, \"first_bytes\": 5, \"remaining\": 1, \"first_physical\": 155, \"second_physical\": 96, \"spans\": [[155, 5], [96, 1]], \"destination_offsets\": [0, 5], \"byte_addresses\": [155, 156, 157, 158, 159, 96]}, \"passed\": true}, {\"check\": \"layout fixture 4\", \"actual\": {\"virtual_start\": 31, \"first_page\": 1, \"page_offset\": 15, \"first_bytes\": 1, \"remaining\": 5, \"first_physical\": 127, \"second_physical\": 16, \"spans\": [[127, 1], [16, 5]], \"destination_offsets\": [0, 1], \"byte_addresses\": [127, 16, 17, 18, 19, 20]}, \"expected\": {\"virtual_start\": 31, \"first_page\": 1, \"page_offset\": 15, \"first_bytes\": 1, \"remaining\": 5, \"first_physical\": 127, \"second_physical\": 16, \"spans\": [[127, 1], [16, 5]], \"destination_offsets\": [0, 1], \"byte_addresses\": [127, 16, 17, 18, 19, 20]}, \"passed\": true}, {\"check\": \"layout fixture 5\", \"actual\": {\"virtual_start\": 86, \"first_page\": 5, \"page_offset\": 6, \"first_bytes\": 6, \"remaining\": 0, \"first_physical\": 166, \"second_physical\": 64, \"spans\": [[166, 6]], \"destination_offsets\": [0], \"byte_addresses\": [166, 167, 168, 169, 170, 171]}, \"expected\": {\"virtual_start\": 86, \"first_page\": 5, \"page_offset\": 6, \"first_bytes\": 6, \"remaining\": 0, \"first_physical\": 166, \"second_physical\": 64, \"spans\": [[166, 6]], \"destination_offsets\": [0], \"byte_addresses\": [166, 167, 168, 169, 170, 171]}, \"passed\": true}, {\"check\": \"layout fixture 6\", \"actual\": {\"virtual_start\": 141, \"first_page\": 8, \"page_offset\": 13, \"first_bytes\": 3, \"remaining\": 3, \"first_physical\": 109, \"second_physical\": 176, \"spans\": [[109, 3], [176, 3]], \"destination_offsets\": [0, 3], \"byte_addresses\": [109, 110, 111, 176, 177, 178]}, \"expected\": {\"virtual_start\": 141, \"first_page\": 8, \"page_offset\": 13, \"first_bytes\": 3, \"remaining\": 3, \"first_physical\": 109, \"second_physical\": 176, \"spans\": [[109, 3], [176, 3]], \"destination_offsets\": [0, 3], \"byte_addresses\": [109, 110, 111, 176, 177, 178]}, \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}