{"abstract":"The returned physical layout descriptor disagrees with the declared buffer mapping at page_bytes.","category":"Raster memory layout","checks":6,"contract":"Square 4x4 texel pages use row-major page-directory order and Morton x/y interleaving within each page. Each page has an eight-byte header; directory entries are four bytes and directory storage precedes page bodies. 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-morton-page-directory","failed_approach":"The attempted repair uses 16+p[\"header\"] and still violates the layout contract.","family":"s3-raster-memory-layout-morton-page-directory-page-bytes","id":"FA-51876","implementations":{"attempt":{"sha256":"8bbac04c066cc55416a26ce15270ea15e37adf209c485e042a3020ca9250755e","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(p):\n    p = dict(p)\n    pages_x = (p[\"w\"]+3)//4\n    pages_y = (p[\"h\"]+3)//4\n    directory_bytes = pages_x*pages_y*p[\"entry\"]\n    page_x = p[\"x\"]//4\n    page_y = p[\"y\"]//4\n    page_index = page_y*pages_x+page_x\n    morton = sum(((p[\"x\"]>>i)&1)<<(2*i) | ((p[\"y\"]>>i)&1)<<(2*i+1) for i in range(2))\n    page_bytes = 16+p[\"header\"]\n    page_start = p[\"base\"]+directory_bytes+page_index*page_bytes\n    address = page_start+p[\"header\"]+morton*p[\"b\"]\n    return {'pages_x': pages_x, 'pages_y': pages_y, 'directory_bytes': directory_bytes, 'page_x': page_x, 'page_y': page_y, 'page_index': page_index, 'morton': morton, 'page_bytes': page_bytes, 'page_start': page_start, 'address': address}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncases = {1: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 2, 'base': 11, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 1, 'pages_y': 1, 'directory_bytes': 4, 'page_x': 0, 'page_y': 0, 'page_index': 0, 'morton': 0, 'page_bytes': 40, 'page_start': 15, 'address': 23}), ({'w': 6, 'h': 4, 'x': 1, 'y': 2, 'b': 2, 'base': 11, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 2, 'pages_y': 1, 'directory_bytes': 8, 'page_x': 0, 'page_y': 0, 'page_index': 0, 'morton': 9, 'page_bytes': 40, 'page_start': 19, 'address': 45}), ({'w': 10, 'h': 8, 'x': 8, 'y': 6, 'b': 2, 'base': 11, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 3, 'pages_y': 2, 'directory_bytes': 24, 'page_x': 2, 'page_y': 1, 'page_index': 5, 'morton': 8, 'page_bytes': 40, 'page_start': 235, 'address': 259}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 2, 'base': 11, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 4, 'pages_y': 2, 'directory_bytes': 32, 'page_x': 3, 'page_y': 1, 'page_index': 7, 'morton': 15, 'page_bytes': 40, 'page_start': 323, 'address': 361}), ({'w': 18, 'h': 10, 'x': 16, 'y': 8, 'b': 2, 'base': 11, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 5, 'pages_y': 3, 'directory_bytes': 60, 'page_x': 4, 'page_y': 2, 'page_index': 14, 'morton': 0, 'page_bytes': 40, 'page_start': 631, 'address': 639}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 2, 'base': 11, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 2, 'pages_y': 4, 'directory_bytes': 32, 'page_x': 0, 'page_y': 3, 'page_index': 6, 'morton': 5, 'page_bytes': 40, 'page_start': 283, 'address': 301})], 2: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 3, 'base': 22, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 1, 'pages_y': 1, 'directory_bytes': 4, 'page_x': 0, 'page_y': 0, 'page_index': 0, 'morton': 0, 'page_bytes': 56, 'page_start': 26, 'address': 34}), ({'w': 7, 'h': 5, 'x': 1, 'y': 2, 'b': 3, 'base': 22, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 2, 'pages_y': 2, 'directory_bytes': 16, 'page_x': 0, 'page_y': 0, 'page_index': 0, 'morton': 9, 'page_bytes': 56, 'page_start': 38, 'address': 73}), ({'w': 11, 'h': 9, 'x': 8, 'y': 6, 'b': 3, 'base': 22, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 3, 'pages_y': 3, 'directory_bytes': 36, 'page_x': 2, 'page_y': 1, 'page_index': 5, 'morton': 8, 'page_bytes': 56, 'page_start': 338, 'address': 370}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 3, 'base': 22, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 4, 'pages_y': 2, 'directory_bytes': 32, 'page_x': 3, 'page_y': 1, 'page_index': 7, 'morton': 15, 'page_bytes': 56, 'page_start': 446, 'address': 499}), ({'w': 19, 'h': 11, 'x': 16, 'y': 8, 'b': 3, 'base': 22, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 5, 'pages_y': 3, 'directory_bytes': 60, 'page_x': 4, 'page_y': 2, 'page_index': 14, 'morton': 0, 'page_bytes': 56, 'page_start': 866, 'address': 874}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 3, 'base': 22, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 2, 'pages_y': 4, 'directory_bytes': 32, 'page_x': 0, 'page_y': 3, 'page_index': 6, 'morton': 5, 'page_bytes': 56, 'page_start': 390, 'address': 413})], 3: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 4, 'base': 33, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 1, 'pages_y': 1, 'directory_bytes': 4, 'page_x': 0, 'page_y': 0, 'page_index': 0, 'morton': 0, 'page_bytes': 72, 'page_start': 37, 'address': 45}), ({'w': 8, 'h': 6, 'x': 1, 'y': 2, 'b': 4, 'base': 33, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 2, 'pages_y': 2, 'directory_bytes': 16, 'page_x': 0, 'page_y': 0, 'page_index': 0, 'morton': 9, 'page_bytes': 72, 'page_start': 49, 'address': 93}), ({'w': 12, 'h': 10, 'x': 8, 'y': 6, 'b': 4, 'base': 33, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 3, 'pages_y': 3, 'directory_bytes': 36, 'page_x': 2, 'page_y': 1, 'page_index': 5, 'morton': 8, 'page_bytes': 72, 'page_start': 429, 'address': 469}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 4, 'base': 33, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 4, 'pages_y': 2, 'directory_bytes': 32, 'page_x': 3, 'page_y': 1, 'page_index': 7, 'morton': 15, 'page_bytes': 72, 'page_start': 569, 'address': 637}), ({'w': 20, 'h': 12, 'x': 16, 'y': 8, 'b': 4, 'base': 33, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 5, 'pages_y': 3, 'directory_bytes': 60, 'page_x': 4, 'page_y': 2, 'page_index': 14, 'morton': 0, 'page_bytes': 72, 'page_start': 1101, 'address': 1109}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 4, 'base': 33, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 2, 'pages_y': 4, 'directory_bytes': 32, 'page_x': 0, 'page_y': 3, 'page_index': 6, 'morton': 5, 'page_bytes': 72, 'page_start': 497, 'address': 525})], 4: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 5, 'base': 44, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 1, 'pages_y': 1, 'directory_bytes': 4, 'page_x': 0, 'page_y': 0, 'page_index': 0, 'morton': 0, 'page_bytes': 88, 'page_start': 48, 'address': 56}), ({'w': 9, 'h': 7, 'x': 1, 'y': 2, 'b': 5, 'base': 44, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 3, 'pages_y': 2, 'directory_bytes': 24, 'page_x': 0, 'page_y': 0, 'page_index': 0, 'morton': 9, 'page_bytes': 88, 'page_start': 68, 'address': 121}), ({'w': 13, 'h': 11, 'x': 8, 'y': 6, 'b': 5, 'base': 44, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 4, 'pages_y': 3, 'directory_bytes': 48, 'page_x': 2, 'page_y': 1, 'page_index': 6, 'morton': 8, 'page_bytes': 88, 'page_start': 620, 'address': 668}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 5, 'base': 44, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 4, 'pages_y': 2, 'directory_bytes': 32, 'page_x': 3, 'page_y': 1, 'page_index': 7, 'morton': 15, 'page_bytes': 88, 'page_start': 692, 'address': 775}), ({'w': 21, 'h': 13, 'x': 16, 'y': 8, 'b': 5, 'base': 44, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 6, 'pages_y': 4, 'directory_bytes': 96, 'page_x': 4, 'page_y': 2, 'page_index': 16, 'morton': 0, 'page_bytes': 88, 'page_start': 1548, 'address': 1556}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 5, 'base': 44, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 2, 'pages_y': 4, 'directory_bytes': 32, 'page_x': 0, 'page_y': 3, 'page_index': 6, 'morton': 5, 'page_bytes': 88, 'page_start': 604, 'address': 637})], 5: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 6, 'base': 55, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 1, 'pages_y': 1, 'directory_bytes': 4, 'page_x': 0, 'page_y': 0, 'page_index': 0, 'morton': 0, 'page_bytes': 104, 'page_start': 59, 'address': 67}), ({'w': 10, 'h': 8, 'x': 1, 'y': 2, 'b': 6, 'base': 55, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 3, 'pages_y': 2, 'directory_bytes': 24, 'page_x': 0, 'page_y': 0, 'page_index': 0, 'morton': 9, 'page_bytes': 104, 'page_start': 79, 'address': 141}), ({'w': 14, 'h': 12, 'x': 8, 'y': 6, 'b': 6, 'base': 55, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 4, 'pages_y': 3, 'directory_bytes': 48, 'page_x': 2, 'page_y': 1, 'page_index': 6, 'morton': 8, 'page_bytes': 104, 'page_start': 727, 'address': 783}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 6, 'base': 55, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 4, 'pages_y': 2, 'directory_bytes': 32, 'page_x': 3, 'page_y': 1, 'page_index': 7, 'morton': 15, 'page_bytes': 104, 'page_start': 815, 'address': 913}), ({'w': 22, 'h': 14, 'x': 16, 'y': 8, 'b': 6, 'base': 55, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 6, 'pages_y': 4, 'directory_bytes': 96, 'page_x': 4, 'page_y': 2, 'page_index': 16, 'morton': 0, 'page_bytes': 104, 'page_start': 1815, 'address': 1823}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 6, 'base': 55, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 2, 'pages_y': 4, 'directory_bytes': 32, 'page_x': 0, 'page_y': 3, 'page_index': 6, 'morton': 5, 'page_bytes': 104, 'page_start': 711, 'address': 749})]}\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":"6787f15dca8f727cd432e3935666fee25d143c100e7e36876497c6376de49588","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(p):\n    p = dict(p)\n    pages_x = (p[\"w\"]+3)//4\n    pages_y = (p[\"h\"]+3)//4\n    directory_bytes = pages_x*pages_y*p[\"entry\"]\n    page_x = p[\"x\"]//4\n    page_y = p[\"y\"]//4\n    page_index = page_y*pages_x+page_x\n    morton = sum(((p[\"x\"]>>i)&1)<<(2*i) | ((p[\"y\"]>>i)&1)<<(2*i+1) for i in range(2))\n    page_bytes = 16*p[\"b\"]\n    page_start = p[\"base\"]+directory_bytes+page_index*page_bytes\n    address = page_start+p[\"header\"]+morton*p[\"b\"]\n    return {'pages_x': pages_x, 'pages_y': pages_y, 'directory_bytes': directory_bytes, 'page_x': page_x, 'page_y': page_y, 'page_index': page_index, 'morton': morton, 'page_bytes': page_bytes, 'page_start': page_start, 'address': address}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncases = {1: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 2, 'base': 11, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 1, 'pages_y': 1, 'directory_bytes': 4, 'page_x': 0, 'page_y': 0, 'page_index': 0, 'morton': 0, 'page_bytes': 40, 'page_start': 15, 'address': 23}), ({'w': 6, 'h': 4, 'x': 1, 'y': 2, 'b': 2, 'base': 11, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 2, 'pages_y': 1, 'directory_bytes': 8, 'page_x': 0, 'page_y': 0, 'page_index': 0, 'morton': 9, 'page_bytes': 40, 'page_start': 19, 'address': 45}), ({'w': 10, 'h': 8, 'x': 8, 'y': 6, 'b': 2, 'base': 11, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 3, 'pages_y': 2, 'directory_bytes': 24, 'page_x': 2, 'page_y': 1, 'page_index': 5, 'morton': 8, 'page_bytes': 40, 'page_start': 235, 'address': 259}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 2, 'base': 11, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 4, 'pages_y': 2, 'directory_bytes': 32, 'page_x': 3, 'page_y': 1, 'page_index': 7, 'morton': 15, 'page_bytes': 40, 'page_start': 323, 'address': 361}), ({'w': 18, 'h': 10, 'x': 16, 'y': 8, 'b': 2, 'base': 11, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 5, 'pages_y': 3, 'directory_bytes': 60, 'page_x': 4, 'page_y': 2, 'page_index': 14, 'morton': 0, 'page_bytes': 40, 'page_start': 631, 'address': 639}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 2, 'base': 11, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 2, 'pages_y': 4, 'directory_bytes': 32, 'page_x': 0, 'page_y': 3, 'page_index': 6, 'morton': 5, 'page_bytes': 40, 'page_start': 283, 'address': 301})], 2: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 3, 'base': 22, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 1, 'pages_y': 1, 'directory_bytes': 4, 'page_x': 0, 'page_y': 0, 'page_index': 0, 'morton': 0, 'page_bytes': 56, 'page_start': 26, 'address': 34}), ({'w': 7, 'h': 5, 'x': 1, 'y': 2, 'b': 3, 'base': 22, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 2, 'pages_y': 2, 'directory_bytes': 16, 'page_x': 0, 'page_y': 0, 'page_index': 0, 'morton': 9, 'page_bytes': 56, 'page_start': 38, 'address': 73}), ({'w': 11, 'h': 9, 'x': 8, 'y': 6, 'b': 3, 'base': 22, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 3, 'pages_y': 3, 'directory_bytes': 36, 'page_x': 2, 'page_y': 1, 'page_index': 5, 'morton': 8, 'page_bytes': 56, 'page_start': 338, 'address': 370}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 3, 'base': 22, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 4, 'pages_y': 2, 'directory_bytes': 32, 'page_x': 3, 'page_y': 1, 'page_index': 7, 'morton': 15, 'page_bytes': 56, 'page_start': 446, 'address': 499}), ({'w': 19, 'h': 11, 'x': 16, 'y': 8, 'b': 3, 'base': 22, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 5, 'pages_y': 3, 'directory_bytes': 60, 'page_x': 4, 'page_y': 2, 'page_index': 14, 'morton': 0, 'page_bytes': 56, 'page_start': 866, 'address': 874}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 3, 'base': 22, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 2, 'pages_y': 4, 'directory_bytes': 32, 'page_x': 0, 'page_y': 3, 'page_index': 6, 'morton': 5, 'page_bytes': 56, 'page_start': 390, 'address': 413})], 3: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 4, 'base': 33, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 1, 'pages_y': 1, 'directory_bytes': 4, 'page_x': 0, 'page_y': 0, 'page_index': 0, 'morton': 0, 'page_bytes': 72, 'page_start': 37, 'address': 45}), ({'w': 8, 'h': 6, 'x': 1, 'y': 2, 'b': 4, 'base': 33, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 2, 'pages_y': 2, 'directory_bytes': 16, 'page_x': 0, 'page_y': 0, 'page_index': 0, 'morton': 9, 'page_bytes': 72, 'page_start': 49, 'address': 93}), ({'w': 12, 'h': 10, 'x': 8, 'y': 6, 'b': 4, 'base': 33, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 3, 'pages_y': 3, 'directory_bytes': 36, 'page_x': 2, 'page_y': 1, 'page_index': 5, 'morton': 8, 'page_bytes': 72, 'page_start': 429, 'address': 469}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 4, 'base': 33, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 4, 'pages_y': 2, 'directory_bytes': 32, 'page_x': 3, 'page_y': 1, 'page_index': 7, 'morton': 15, 'page_bytes': 72, 'page_start': 569, 'address': 637}), ({'w': 20, 'h': 12, 'x': 16, 'y': 8, 'b': 4, 'base': 33, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 5, 'pages_y': 3, 'directory_bytes': 60, 'page_x': 4, 'page_y': 2, 'page_index': 14, 'morton': 0, 'page_bytes': 72, 'page_start': 1101, 'address': 1109}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 4, 'base': 33, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 2, 'pages_y': 4, 'directory_bytes': 32, 'page_x': 0, 'page_y': 3, 'page_index': 6, 'morton': 5, 'page_bytes': 72, 'page_start': 497, 'address': 525})], 4: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 5, 'base': 44, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 1, 'pages_y': 1, 'directory_bytes': 4, 'page_x': 0, 'page_y': 0, 'page_index': 0, 'morton': 0, 'page_bytes': 88, 'page_start': 48, 'address': 56}), ({'w': 9, 'h': 7, 'x': 1, 'y': 2, 'b': 5, 'base': 44, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 3, 'pages_y': 2, 'directory_bytes': 24, 'page_x': 0, 'page_y': 0, 'page_index': 0, 'morton': 9, 'page_bytes': 88, 'page_start': 68, 'address': 121}), ({'w': 13, 'h': 11, 'x': 8, 'y': 6, 'b': 5, 'base': 44, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 4, 'pages_y': 3, 'directory_bytes': 48, 'page_x': 2, 'page_y': 1, 'page_index': 6, 'morton': 8, 'page_bytes': 88, 'page_start': 620, 'address': 668}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 5, 'base': 44, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 4, 'pages_y': 2, 'directory_bytes': 32, 'page_x': 3, 'page_y': 1, 'page_index': 7, 'morton': 15, 'page_bytes': 88, 'page_start': 692, 'address': 775}), ({'w': 21, 'h': 13, 'x': 16, 'y': 8, 'b': 5, 'base': 44, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 6, 'pages_y': 4, 'directory_bytes': 96, 'page_x': 4, 'page_y': 2, 'page_index': 16, 'morton': 0, 'page_bytes': 88, 'page_start': 1548, 'address': 1556}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 5, 'base': 44, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 2, 'pages_y': 4, 'directory_bytes': 32, 'page_x': 0, 'page_y': 3, 'page_index': 6, 'morton': 5, 'page_bytes': 88, 'page_start': 604, 'address': 637})], 5: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 6, 'base': 55, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 1, 'pages_y': 1, 'directory_bytes': 4, 'page_x': 0, 'page_y': 0, 'page_index': 0, 'morton': 0, 'page_bytes': 104, 'page_start': 59, 'address': 67}), ({'w': 10, 'h': 8, 'x': 1, 'y': 2, 'b': 6, 'base': 55, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 3, 'pages_y': 2, 'directory_bytes': 24, 'page_x': 0, 'page_y': 0, 'page_index': 0, 'morton': 9, 'page_bytes': 104, 'page_start': 79, 'address': 141}), ({'w': 14, 'h': 12, 'x': 8, 'y': 6, 'b': 6, 'base': 55, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 4, 'pages_y': 3, 'directory_bytes': 48, 'page_x': 2, 'page_y': 1, 'page_index': 6, 'morton': 8, 'page_bytes': 104, 'page_start': 727, 'address': 783}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 6, 'base': 55, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 4, 'pages_y': 2, 'directory_bytes': 32, 'page_x': 3, 'page_y': 1, 'page_index': 7, 'morton': 15, 'page_bytes': 104, 'page_start': 815, 'address': 913}), ({'w': 22, 'h': 14, 'x': 16, 'y': 8, 'b': 6, 'base': 55, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 6, 'pages_y': 4, 'directory_bytes': 96, 'page_x': 4, 'page_y': 2, 'page_index': 16, 'morton': 0, 'page_bytes': 104, 'page_start': 1815, 'address': 1823}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 6, 'base': 55, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 2, 'pages_y': 4, 'directory_bytes': 32, 'page_x': 0, 'page_y': 3, 'page_index': 6, 'morton': 5, 'page_bytes': 104, 'page_start': 711, 'address': 749})]}\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":"b440f4333430bdcdb288d4a4439ea4e39250e90291a5f04585f6caaae7c52466","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(p):\n    p = dict(p)\n    pages_x = (p[\"w\"]+3)//4\n    pages_y = (p[\"h\"]+3)//4\n    directory_bytes = pages_x*pages_y*p[\"entry\"]\n    page_x = p[\"x\"]//4\n    page_y = p[\"y\"]//4\n    page_index = page_y*pages_x+page_x\n    morton = sum(((p[\"x\"]>>i)&1)<<(2*i) | ((p[\"y\"]>>i)&1)<<(2*i+1) for i in range(2))\n    page_bytes = 16*p[\"b\"]+p[\"header\"]\n    page_start = p[\"base\"]+directory_bytes+page_index*page_bytes\n    address = page_start+p[\"header\"]+morton*p[\"b\"]\n    return {'pages_x': pages_x, 'pages_y': pages_y, 'directory_bytes': directory_bytes, 'page_x': page_x, 'page_y': page_y, 'page_index': page_index, 'morton': morton, 'page_bytes': page_bytes, 'page_start': page_start, 'address': address}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncases = {1: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 2, 'base': 11, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 1, 'pages_y': 1, 'directory_bytes': 4, 'page_x': 0, 'page_y': 0, 'page_index': 0, 'morton': 0, 'page_bytes': 40, 'page_start': 15, 'address': 23}), ({'w': 6, 'h': 4, 'x': 1, 'y': 2, 'b': 2, 'base': 11, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 2, 'pages_y': 1, 'directory_bytes': 8, 'page_x': 0, 'page_y': 0, 'page_index': 0, 'morton': 9, 'page_bytes': 40, 'page_start': 19, 'address': 45}), ({'w': 10, 'h': 8, 'x': 8, 'y': 6, 'b': 2, 'base': 11, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 3, 'pages_y': 2, 'directory_bytes': 24, 'page_x': 2, 'page_y': 1, 'page_index': 5, 'morton': 8, 'page_bytes': 40, 'page_start': 235, 'address': 259}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 2, 'base': 11, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 4, 'pages_y': 2, 'directory_bytes': 32, 'page_x': 3, 'page_y': 1, 'page_index': 7, 'morton': 15, 'page_bytes': 40, 'page_start': 323, 'address': 361}), ({'w': 18, 'h': 10, 'x': 16, 'y': 8, 'b': 2, 'base': 11, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 5, 'pages_y': 3, 'directory_bytes': 60, 'page_x': 4, 'page_y': 2, 'page_index': 14, 'morton': 0, 'page_bytes': 40, 'page_start': 631, 'address': 639}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 2, 'base': 11, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 2, 'pages_y': 4, 'directory_bytes': 32, 'page_x': 0, 'page_y': 3, 'page_index': 6, 'morton': 5, 'page_bytes': 40, 'page_start': 283, 'address': 301})], 2: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 3, 'base': 22, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 1, 'pages_y': 1, 'directory_bytes': 4, 'page_x': 0, 'page_y': 0, 'page_index': 0, 'morton': 0, 'page_bytes': 56, 'page_start': 26, 'address': 34}), ({'w': 7, 'h': 5, 'x': 1, 'y': 2, 'b': 3, 'base': 22, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 2, 'pages_y': 2, 'directory_bytes': 16, 'page_x': 0, 'page_y': 0, 'page_index': 0, 'morton': 9, 'page_bytes': 56, 'page_start': 38, 'address': 73}), ({'w': 11, 'h': 9, 'x': 8, 'y': 6, 'b': 3, 'base': 22, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 3, 'pages_y': 3, 'directory_bytes': 36, 'page_x': 2, 'page_y': 1, 'page_index': 5, 'morton': 8, 'page_bytes': 56, 'page_start': 338, 'address': 370}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 3, 'base': 22, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 4, 'pages_y': 2, 'directory_bytes': 32, 'page_x': 3, 'page_y': 1, 'page_index': 7, 'morton': 15, 'page_bytes': 56, 'page_start': 446, 'address': 499}), ({'w': 19, 'h': 11, 'x': 16, 'y': 8, 'b': 3, 'base': 22, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 5, 'pages_y': 3, 'directory_bytes': 60, 'page_x': 4, 'page_y': 2, 'page_index': 14, 'morton': 0, 'page_bytes': 56, 'page_start': 866, 'address': 874}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 3, 'base': 22, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 2, 'pages_y': 4, 'directory_bytes': 32, 'page_x': 0, 'page_y': 3, 'page_index': 6, 'morton': 5, 'page_bytes': 56, 'page_start': 390, 'address': 413})], 3: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 4, 'base': 33, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 1, 'pages_y': 1, 'directory_bytes': 4, 'page_x': 0, 'page_y': 0, 'page_index': 0, 'morton': 0, 'page_bytes': 72, 'page_start': 37, 'address': 45}), ({'w': 8, 'h': 6, 'x': 1, 'y': 2, 'b': 4, 'base': 33, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 2, 'pages_y': 2, 'directory_bytes': 16, 'page_x': 0, 'page_y': 0, 'page_index': 0, 'morton': 9, 'page_bytes': 72, 'page_start': 49, 'address': 93}), ({'w': 12, 'h': 10, 'x': 8, 'y': 6, 'b': 4, 'base': 33, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 3, 'pages_y': 3, 'directory_bytes': 36, 'page_x': 2, 'page_y': 1, 'page_index': 5, 'morton': 8, 'page_bytes': 72, 'page_start': 429, 'address': 469}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 4, 'base': 33, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 4, 'pages_y': 2, 'directory_bytes': 32, 'page_x': 3, 'page_y': 1, 'page_index': 7, 'morton': 15, 'page_bytes': 72, 'page_start': 569, 'address': 637}), ({'w': 20, 'h': 12, 'x': 16, 'y': 8, 'b': 4, 'base': 33, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 5, 'pages_y': 3, 'directory_bytes': 60, 'page_x': 4, 'page_y': 2, 'page_index': 14, 'morton': 0, 'page_bytes': 72, 'page_start': 1101, 'address': 1109}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 4, 'base': 33, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 2, 'pages_y': 4, 'directory_bytes': 32, 'page_x': 0, 'page_y': 3, 'page_index': 6, 'morton': 5, 'page_bytes': 72, 'page_start': 497, 'address': 525})], 4: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 5, 'base': 44, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 1, 'pages_y': 1, 'directory_bytes': 4, 'page_x': 0, 'page_y': 0, 'page_index': 0, 'morton': 0, 'page_bytes': 88, 'page_start': 48, 'address': 56}), ({'w': 9, 'h': 7, 'x': 1, 'y': 2, 'b': 5, 'base': 44, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 3, 'pages_y': 2, 'directory_bytes': 24, 'page_x': 0, 'page_y': 0, 'page_index': 0, 'morton': 9, 'page_bytes': 88, 'page_start': 68, 'address': 121}), ({'w': 13, 'h': 11, 'x': 8, 'y': 6, 'b': 5, 'base': 44, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 4, 'pages_y': 3, 'directory_bytes': 48, 'page_x': 2, 'page_y': 1, 'page_index': 6, 'morton': 8, 'page_bytes': 88, 'page_start': 620, 'address': 668}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 5, 'base': 44, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 4, 'pages_y': 2, 'directory_bytes': 32, 'page_x': 3, 'page_y': 1, 'page_index': 7, 'morton': 15, 'page_bytes': 88, 'page_start': 692, 'address': 775}), ({'w': 21, 'h': 13, 'x': 16, 'y': 8, 'b': 5, 'base': 44, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 6, 'pages_y': 4, 'directory_bytes': 96, 'page_x': 4, 'page_y': 2, 'page_index': 16, 'morton': 0, 'page_bytes': 88, 'page_start': 1548, 'address': 1556}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 5, 'base': 44, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 2, 'pages_y': 4, 'directory_bytes': 32, 'page_x': 0, 'page_y': 3, 'page_index': 6, 'morton': 5, 'page_bytes': 88, 'page_start': 604, 'address': 637})], 5: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 6, 'base': 55, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 1, 'pages_y': 1, 'directory_bytes': 4, 'page_x': 0, 'page_y': 0, 'page_index': 0, 'morton': 0, 'page_bytes': 104, 'page_start': 59, 'address': 67}), ({'w': 10, 'h': 8, 'x': 1, 'y': 2, 'b': 6, 'base': 55, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 3, 'pages_y': 2, 'directory_bytes': 24, 'page_x': 0, 'page_y': 0, 'page_index': 0, 'morton': 9, 'page_bytes': 104, 'page_start': 79, 'address': 141}), ({'w': 14, 'h': 12, 'x': 8, 'y': 6, 'b': 6, 'base': 55, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 4, 'pages_y': 3, 'directory_bytes': 48, 'page_x': 2, 'page_y': 1, 'page_index': 6, 'morton': 8, 'page_bytes': 104, 'page_start': 727, 'address': 783}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 6, 'base': 55, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 4, 'pages_y': 2, 'directory_bytes': 32, 'page_x': 3, 'page_y': 1, 'page_index': 7, 'morton': 15, 'page_bytes': 104, 'page_start': 815, 'address': 913}), ({'w': 22, 'h': 14, 'x': 16, 'y': 8, 'b': 6, 'base': 55, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 6, 'pages_y': 4, 'directory_bytes': 96, 'page_x': 4, 'page_y': 2, 'page_index': 16, 'morton': 0, 'page_bytes': 104, 'page_start': 1815, 'address': 1823}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 6, 'base': 55, 'px': 4, 'py': 4, 'header': 8, 'entry': 4}, {'pages_x': 2, 'pages_y': 4, 'directory_bytes': 32, 'page_x': 0, 'page_y': 3, 'page_index': 6, 'morton': 5, 'page_bytes': 104, 'page_start': 711, 'address': 749})]}\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-morton-page-directory-page-bytes","generated_at":"2026-09-29T14:45:23.342655+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 page_bytes: 16*p[\"b\"]+p[\"header\"].","root_cause":"Page pitch omits header or texel byte width The faulty expression is 16*p[\"b\"].","sha256":"ddb7ee3a19dab9ff68e84c9c8630d8a5f1c09b1473cf2cc81d01e53bfdb888ba","title":"Morton Page Directory: Page pitch omits header or texel byte width · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":45.529,"exit_code":1,"observations":[{"actual":{"address":23,"directory_bytes":4,"morton":0,"page_bytes":24,"page_index":0,"page_start":15,"page_x":0,"page_y":0,"pages_x":1,"pages_y":1},"check":"layout fixture 1","expected":{"address":23,"directory_bytes":4,"morton":0,"page_bytes":40,"page_index":0,"page_start":15,"page_x":0,"page_y":0,"pages_x":1,"pages_y":1},"passed":false},{"actual":{"address":45,"directory_bytes":8,"morton":9,"page_bytes":24,"page_index":0,"page_start":19,"page_x":0,"page_y":0,"pages_x":2,"pages_y":1},"check":"layout fixture 2","expected":{"address":45,"directory_bytes":8,"morton":9,"page_bytes":40,"page_index":0,"page_start":19,"page_x":0,"page_y":0,"pages_x":2,"pages_y":1},"passed":false},{"actual":{"address":179,"directory_bytes":24,"morton":8,"page_bytes":24,"page_index":5,"page_start":155,"page_x":2,"page_y":1,"pages_x":3,"pages_y":2},"check":"layout fixture 3","expected":{"address":259,"directory_bytes":24,"morton":8,"page_bytes":40,"page_index":5,"page_start":235,"page_x":2,"page_y":1,"pages_x":3,"pages_y":2},"passed":false},{"actual":{"address":249,"directory_bytes":32,"morton":15,"page_bytes":24,"page_index":7,"page_start":211,"page_x":3,"page_y":1,"pages_x":4,"pages_y":2},"check":"layout fixture 4","expected":{"address":361,"directory_bytes":32,"morton":15,"page_bytes":40,"page_index":7,"page_start":323,"page_x":3,"page_y":1,"pages_x":4,"pages_y":2},"passed":false},{"actual":{"address":415,"directory_bytes":60,"morton":0,"page_bytes":24,"page_index":14,"page_start":407,"page_x":4,"page_y":2,"pages_x":5,"pages_y":3},"check":"layout fixture 5","expected":{"address":639,"directory_bytes":60,"morton":0,"page_bytes":40,"page_index":14,"page_start":631,"page_x":4,"page_y":2,"pages_x":5,"pages_y":3},"passed":false},{"actual":{"address":205,"directory_bytes":32,"morton":5,"page_bytes":24,"page_index":6,"page_start":187,"page_x":0,"page_y":3,"pages_x":2,"pages_y":4},"check":"layout fixture 6","expected":{"address":301,"directory_bytes":32,"morton":5,"page_bytes":40,"page_index":6,"page_start":283,"page_x":0,"page_y":3,"pages_x":2,"pages_y":4},"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"layout fixture 1\", \"actual\": {\"pages_x\": 1, \"pages_y\": 1, \"directory_bytes\": 4, \"page_x\": 0, \"page_y\": 0, \"page_index\": 0, \"morton\": 0, \"page_bytes\": 24, \"page_start\": 15, \"address\": 23}, \"expected\": {\"pages_x\": 1, \"pages_y\": 1, \"directory_bytes\": 4, \"page_x\": 0, \"page_y\": 0, \"page_index\": 0, \"morton\": 0, \"page_bytes\": 40, \"page_start\": 15, \"address\": 23}, \"passed\": false}, {\"check\": \"layout fixture 2\", \"actual\": {\"pages_x\": 2, \"pages_y\": 1, \"directory_bytes\": 8, \"page_x\": 0, \"page_y\": 0, \"page_index\": 0, \"morton\": 9, \"page_bytes\": 24, \"page_start\": 19, \"address\": 45}, \"expected\": {\"pages_x\": 2, \"pages_y\": 1, \"directory_bytes\": 8, \"page_x\": 0, \"page_y\": 0, \"page_index\": 0, \"morton\": 9, \"page_bytes\": 40, \"page_start\": 19, \"address\": 45}, \"passed\": false}, {\"check\": \"layout fixture 3\", \"actual\": {\"pages_x\": 3, \"pages_y\": 2, \"directory_bytes\": 24, \"page_x\": 2, \"page_y\": 1, \"page_index\": 5, \"morton\": 8, \"page_bytes\": 24, \"page_start\": 155, \"address\": 179}, \"expected\": {\"pages_x\": 3, \"pages_y\": 2, \"directory_bytes\": 24, \"page_x\": 2, \"page_y\": 1, \"page_index\": 5, \"morton\": 8, \"page_bytes\": 40, \"page_start\": 235, \"address\": 259}, \"passed\": false}, {\"check\": \"layout fixture 4\", \"actual\": {\"pages_x\": 4, \"pages_y\": 2, \"directory_bytes\": 32, \"page_x\": 3, \"page_y\": 1, \"page_index\": 7, \"morton\": 15, \"page_bytes\": 24, \"page_start\": 211, \"address\": 249}, \"expected\": {\"pages_x\": 4, \"pages_y\": 2, \"directory_bytes\": 32, \"page_x\": 3, \"page_y\": 1, \"page_index\": 7, \"morton\": 15, \"page_bytes\": 40, \"page_start\": 323, \"address\": 361}, \"passed\": false}, {\"check\": \"layout fixture 5\", \"actual\": {\"pages_x\": 5, \"pages_y\": 3, \"directory_bytes\": 60, \"page_x\": 4, \"page_y\": 2, \"page_index\": 14, \"morton\": 0, \"page_bytes\": 24, \"page_start\": 407, \"address\": 415}, \"expected\": {\"pages_x\": 5, \"pages_y\": 3, \"directory_bytes\": 60, \"page_x\": 4, \"page_y\": 2, \"page_index\": 14, \"morton\": 0, \"page_bytes\": 40, \"page_start\": 631, \"address\": 639}, \"passed\": false}, {\"check\": \"layout fixture 6\", \"actual\": {\"pages_x\": 2, \"pages_y\": 4, \"directory_bytes\": 32, \"page_x\": 0, \"page_y\": 3, \"page_index\": 6, \"morton\": 5, \"page_bytes\": 24, \"page_start\": 187, \"address\": 205}, \"expected\": {\"pages_x\": 2, \"pages_y\": 4, \"directory_bytes\": 32, \"page_x\": 0, \"page_y\": 3, \"page_index\": 6, \"morton\": 5, \"page_bytes\": 40, \"page_start\": 283, \"address\": 301}, \"passed\": false}], \"passed\": false}\n"},"broken":{"elapsed_ms":53.257,"exit_code":1,"observations":[{"actual":{"address":23,"directory_bytes":4,"morton":0,"page_bytes":32,"page_index":0,"page_start":15,"page_x":0,"page_y":0,"pages_x":1,"pages_y":1},"check":"layout fixture 1","expected":{"address":23,"directory_bytes":4,"morton":0,"page_bytes":40,"page_index":0,"page_start":15,"page_x":0,"page_y":0,"pages_x":1,"pages_y":1},"passed":false},{"actual":{"address":45,"directory_bytes":8,"morton":9,"page_bytes":32,"page_index":0,"page_start":19,"page_x":0,"page_y":0,"pages_x":2,"pages_y":1},"check":"layout fixture 2","expected":{"address":45,"directory_bytes":8,"morton":9,"page_bytes":40,"page_index":0,"page_start":19,"page_x":0,"page_y":0,"pages_x":2,"pages_y":1},"passed":false},{"actual":{"address":219,"directory_bytes":24,"morton":8,"page_bytes":32,"page_index":5,"page_start":195,"page_x":2,"page_y":1,"pages_x":3,"pages_y":2},"check":"layout fixture 3","expected":{"address":259,"directory_bytes":24,"morton":8,"page_bytes":40,"page_index":5,"page_start":235,"page_x":2,"page_y":1,"pages_x":3,"pages_y":2},"passed":false},{"actual":{"address":305,"directory_bytes":32,"morton":15,"page_bytes":32,"page_index":7,"page_start":267,"page_x":3,"page_y":1,"pages_x":4,"pages_y":2},"check":"layout fixture 4","expected":{"address":361,"directory_bytes":32,"morton":15,"page_bytes":40,"page_index":7,"page_start":323,"page_x":3,"page_y":1,"pages_x":4,"pages_y":2},"passed":false},{"actual":{"address":527,"directory_bytes":60,"morton":0,"page_bytes":32,"page_index":14,"page_start":519,"page_x":4,"page_y":2,"pages_x":5,"pages_y":3},"check":"layout fixture 5","expected":{"address":639,"directory_bytes":60,"morton":0,"page_bytes":40,"page_index":14,"page_start":631,"page_x":4,"page_y":2,"pages_x":5,"pages_y":3},"passed":false},{"actual":{"address":253,"directory_bytes":32,"morton":5,"page_bytes":32,"page_index":6,"page_start":235,"page_x":0,"page_y":3,"pages_x":2,"pages_y":4},"check":"layout fixture 6","expected":{"address":301,"directory_bytes":32,"morton":5,"page_bytes":40,"page_index":6,"page_start":283,"page_x":0,"page_y":3,"pages_x":2,"pages_y":4},"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"layout fixture 1\", \"actual\": {\"pages_x\": 1, \"pages_y\": 1, \"directory_bytes\": 4, \"page_x\": 0, \"page_y\": 0, \"page_index\": 0, \"morton\": 0, \"page_bytes\": 32, \"page_start\": 15, \"address\": 23}, \"expected\": {\"pages_x\": 1, \"pages_y\": 1, \"directory_bytes\": 4, \"page_x\": 0, \"page_y\": 0, \"page_index\": 0, \"morton\": 0, \"page_bytes\": 40, \"page_start\": 15, \"address\": 23}, \"passed\": false}, {\"check\": \"layout fixture 2\", \"actual\": {\"pages_x\": 2, \"pages_y\": 1, \"directory_bytes\": 8, \"page_x\": 0, \"page_y\": 0, \"page_index\": 0, \"morton\": 9, \"page_bytes\": 32, \"page_start\": 19, \"address\": 45}, \"expected\": {\"pages_x\": 2, \"pages_y\": 1, \"directory_bytes\": 8, \"page_x\": 0, \"page_y\": 0, \"page_index\": 0, \"morton\": 9, \"page_bytes\": 40, \"page_start\": 19, \"address\": 45}, \"passed\": false}, {\"check\": \"layout fixture 3\", \"actual\": {\"pages_x\": 3, \"pages_y\": 2, \"directory_bytes\": 24, \"page_x\": 2, \"page_y\": 1, \"page_index\": 5, \"morton\": 8, \"page_bytes\": 32, \"page_start\": 195, \"address\": 219}, \"expected\": {\"pages_x\": 3, \"pages_y\": 2, \"directory_bytes\": 24, \"page_x\": 2, \"page_y\": 1, \"page_index\": 5, \"morton\": 8, \"page_bytes\": 40, \"page_start\": 235, \"address\": 259}, \"passed\": false}, {\"check\": \"layout fixture 4\", \"actual\": {\"pages_x\": 4, \"pages_y\": 2, \"directory_bytes\": 32, \"page_x\": 3, \"page_y\": 1, \"page_index\": 7, \"morton\": 15, \"page_bytes\": 32, \"page_start\": 267, \"address\": 305}, \"expected\": {\"pages_x\": 4, \"pages_y\": 2, \"directory_bytes\": 32, \"page_x\": 3, \"page_y\": 1, \"page_index\": 7, \"morton\": 15, \"page_bytes\": 40, \"page_start\": 323, \"address\": 361}, \"passed\": false}, {\"check\": \"layout fixture 5\", \"actual\": {\"pages_x\": 5, \"pages_y\": 3, \"directory_bytes\": 60, \"page_x\": 4, \"page_y\": 2, \"page_index\": 14, \"morton\": 0, \"page_bytes\": 32, \"page_start\": 519, \"address\": 527}, \"expected\": {\"pages_x\": 5, \"pages_y\": 3, \"directory_bytes\": 60, \"page_x\": 4, \"page_y\": 2, \"page_index\": 14, \"morton\": 0, \"page_bytes\": 40, \"page_start\": 631, \"address\": 639}, \"passed\": false}, {\"check\": \"layout fixture 6\", \"actual\": {\"pages_x\": 2, \"pages_y\": 4, \"directory_bytes\": 32, \"page_x\": 0, \"page_y\": 3, \"page_index\": 6, \"morton\": 5, \"page_bytes\": 32, \"page_start\": 235, \"address\": 253}, \"expected\": {\"pages_x\": 2, \"pages_y\": 4, \"directory_bytes\": 32, \"page_x\": 0, \"page_y\": 3, \"page_index\": 6, \"morton\": 5, \"page_bytes\": 40, \"page_start\": 283, \"address\": 301}, \"passed\": false}], \"passed\": false}\n"},"fixed":{"elapsed_ms":53.19,"exit_code":0,"observations":[{"actual":{"address":23,"directory_bytes":4,"morton":0,"page_bytes":40,"page_index":0,"page_start":15,"page_x":0,"page_y":0,"pages_x":1,"pages_y":1},"check":"layout fixture 1","expected":{"address":23,"directory_bytes":4,"morton":0,"page_bytes":40,"page_index":0,"page_start":15,"page_x":0,"page_y":0,"pages_x":1,"pages_y":1},"passed":true},{"actual":{"address":45,"directory_bytes":8,"morton":9,"page_bytes":40,"page_index":0,"page_start":19,"page_x":0,"page_y":0,"pages_x":2,"pages_y":1},"check":"layout fixture 2","expected":{"address":45,"directory_bytes":8,"morton":9,"page_bytes":40,"page_index":0,"page_start":19,"page_x":0,"page_y":0,"pages_x":2,"pages_y":1},"passed":true},{"actual":{"address":259,"directory_bytes":24,"morton":8,"page_bytes":40,"page_index":5,"page_start":235,"page_x":2,"page_y":1,"pages_x":3,"pages_y":2},"check":"layout fixture 3","expected":{"address":259,"directory_bytes":24,"morton":8,"page_bytes":40,"page_index":5,"page_start":235,"page_x":2,"page_y":1,"pages_x":3,"pages_y":2},"passed":true},{"actual":{"address":361,"directory_bytes":32,"morton":15,"page_bytes":40,"page_index":7,"page_start":323,"page_x":3,"page_y":1,"pages_x":4,"pages_y":2},"check":"layout fixture 4","expected":{"address":361,"directory_bytes":32,"morton":15,"page_bytes":40,"page_index":7,"page_start":323,"page_x":3,"page_y":1,"pages_x":4,"pages_y":2},"passed":true},{"actual":{"address":639,"directory_bytes":60,"morton":0,"page_bytes":40,"page_index":14,"page_start":631,"page_x":4,"page_y":2,"pages_x":5,"pages_y":3},"check":"layout fixture 5","expected":{"address":639,"directory_bytes":60,"morton":0,"page_bytes":40,"page_index":14,"page_start":631,"page_x":4,"page_y":2,"pages_x":5,"pages_y":3},"passed":true},{"actual":{"address":301,"directory_bytes":32,"morton":5,"page_bytes":40,"page_index":6,"page_start":283,"page_x":0,"page_y":3,"pages_x":2,"pages_y":4},"check":"layout fixture 6","expected":{"address":301,"directory_bytes":32,"morton":5,"page_bytes":40,"page_index":6,"page_start":283,"page_x":0,"page_y":3,"pages_x":2,"pages_y":4},"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"layout fixture 1\", \"actual\": {\"pages_x\": 1, \"pages_y\": 1, \"directory_bytes\": 4, \"page_x\": 0, \"page_y\": 0, \"page_index\": 0, \"morton\": 0, \"page_bytes\": 40, \"page_start\": 15, \"address\": 23}, \"expected\": {\"pages_x\": 1, \"pages_y\": 1, \"directory_bytes\": 4, \"page_x\": 0, \"page_y\": 0, \"page_index\": 0, \"morton\": 0, \"page_bytes\": 40, \"page_start\": 15, \"address\": 23}, \"passed\": true}, {\"check\": \"layout fixture 2\", \"actual\": {\"pages_x\": 2, \"pages_y\": 1, \"directory_bytes\": 8, \"page_x\": 0, \"page_y\": 0, \"page_index\": 0, \"morton\": 9, \"page_bytes\": 40, \"page_start\": 19, \"address\": 45}, \"expected\": {\"pages_x\": 2, \"pages_y\": 1, \"directory_bytes\": 8, \"page_x\": 0, \"page_y\": 0, \"page_index\": 0, \"morton\": 9, \"page_bytes\": 40, \"page_start\": 19, \"address\": 45}, \"passed\": true}, {\"check\": \"layout fixture 3\", \"actual\": {\"pages_x\": 3, \"pages_y\": 2, \"directory_bytes\": 24, \"page_x\": 2, \"page_y\": 1, \"page_index\": 5, \"morton\": 8, \"page_bytes\": 40, \"page_start\": 235, \"address\": 259}, \"expected\": {\"pages_x\": 3, \"pages_y\": 2, \"directory_bytes\": 24, \"page_x\": 2, \"page_y\": 1, \"page_index\": 5, \"morton\": 8, \"page_bytes\": 40, \"page_start\": 235, \"address\": 259}, \"passed\": true}, {\"check\": \"layout fixture 4\", \"actual\": {\"pages_x\": 4, \"pages_y\": 2, \"directory_bytes\": 32, \"page_x\": 3, \"page_y\": 1, \"page_index\": 7, \"morton\": 15, \"page_bytes\": 40, \"page_start\": 323, \"address\": 361}, \"expected\": {\"pages_x\": 4, \"pages_y\": 2, \"directory_bytes\": 32, \"page_x\": 3, \"page_y\": 1, \"page_index\": 7, \"morton\": 15, \"page_bytes\": 40, \"page_start\": 323, \"address\": 361}, \"passed\": true}, {\"check\": \"layout fixture 5\", \"actual\": {\"pages_x\": 5, \"pages_y\": 3, \"directory_bytes\": 60, \"page_x\": 4, \"page_y\": 2, \"page_index\": 14, \"morton\": 0, \"page_bytes\": 40, \"page_start\": 631, \"address\": 639}, \"expected\": {\"pages_x\": 5, \"pages_y\": 3, \"directory_bytes\": 60, \"page_x\": 4, \"page_y\": 2, \"page_index\": 14, \"morton\": 0, \"page_bytes\": 40, \"page_start\": 631, \"address\": 639}, \"passed\": true}, {\"check\": \"layout fixture 6\", \"actual\": {\"pages_x\": 2, \"pages_y\": 4, \"directory_bytes\": 32, \"page_x\": 0, \"page_y\": 3, \"page_index\": 6, \"morton\": 5, \"page_bytes\": 40, \"page_start\": 283, \"address\": 301}, \"expected\": {\"pages_x\": 2, \"pages_y\": 4, \"directory_bytes\": 32, \"page_x\": 0, \"page_y\": 3, \"page_index\": 6, \"morton\": 5, \"page_bytes\": 40, \"page_start\": 283, \"address\": 301}, \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}