{"format":"murdoku-puzzle/1","id":"midnight-waltz","version":1,"difficulty":"hard","level":8,"size":{"rows":16,"cols":16},"languages":["en","hu","de","fr","es","it","nl","pl","pt","ro","ca","cs","fi","vi","tr","el","ru","uk","ar","ko","ja","zh-Hans","zh-Hant"],"defaultLanguage":"en","title":"The Midnight Waltz","tagline":"New Year’s Eve · Winterhall Palace · midnight","author":"mathace","concept":"Murdoku – Manuel Garand (murdoku.com); unofficial fan-made case","created":"2026-09-15","story":"New Year’s Eve ball at Winterhall Palace. At the stroke of midnight the host, Lord Vernon, is found dead on the sofa in the Mirror Hall. Fifteen guests were in the house: seven couples were waltzing – and one guest was not dancing at all, because they were alone with the host. Read the statements, find everyone’s exact position on the plan and unmask the murderer: the killer was alone with Vernon in the Mirror Hall.","rules":{"standard":["Every <b>row</b> and every <b>column</b> holds exactly <b>one person</b>. As soon as you place someone, cross out their whole row and column.","<b>“Beside”</b> = directly left, right, above or below, and <b>in the same area</b>. Squares with furniture (planters, tables, pillars, racks…) cannot be occupied; benches, chairs, armchairs, the sofa and the doormats can.","Directions refer to rows and columns, not to the same line: <i>“he was north of her”</i> = in a row further up, in any column; <i>“east of him”</i> = in a column further right, in any row.","The murderer was <b>alone with the victim</b>: nobody else was in that area."],"special":["Everyone except the victim and the murderer was <b>dancing in a couple</b>. The two partners stand on <b>diagonally touching squares</b> (corner to corner), <b>in the same area</b>. A couple is always <b>one gentleman and one lady</b>, and the <b>gentleman stands north of his lady</b> – in the row directly above her.","<b>Nobody touches anybody else corner to corner</b>: a dancer’s only diagonal neighbour is their partner, and the victim and the murderer have no diagonal neighbour at all."]},"roleNames":{"lady":"lady","gentleman":"gentleman","host":"host","victim":"victim"},"personGroups":[{"id":"ladies","name":"Ladies","persons":["A","B","C","D","E","F","G","H"]},{"id":"gentlemen","name":"Gentlemen","persons":["I","J","K","L","M","N","O"]},{"id":"host","name":"The host","persons":["V"]}],"map":{"groups":[{"id":"north","name":"NORTH WING","style":"building"},{"id":"middle","name":"BALLROOM FLOOR","style":"building"},{"id":"south","name":"SOUTH WING","style":"building"},{"id":"front","name":"ENTRANCE","style":"building"}],"gaps":[],"areas":[{"id":"Terrace","cells":[[1,1],[1,2],[1,3],[1,4],[2,1],[2,2],[2,3],[2,4],[3,1],[3,2],[3,3],[3,4]],"fill":"#d7e4cf","pattern":"tiles","group":"north","name":"Terrace"},{"id":"Gallery","cells":[[1,5],[1,6],[1,7],[1,8],[1,9],[1,10],[1,11],[1,12]],"fill":"#e2cfa8","pattern":"planks","group":"north","name":"Musicians’ Gallery"},{"id":"Library","cells":[[1,13],[1,14],[1,15],[1,16],[2,13],[2,14],[2,15],[2,16],[3,13],[3,14],[3,15],[3,16]],"fill":"#e9dcc4","group":"north","name":"Library"},{"id":"Ballroom","cells":[[2,5],[2,6],[2,7],[2,8],[2,9],[2,10],[2,11],[2,12],[3,5],[3,6],[3,7],[3,8],[3,9],[3,10],[3,11],[3,12],[4,5],[4,6],[4,7],[4,8],[4,9],[4,10],[4,11],[4,12],[5,5],[5,6],[5,7],[5,8],[5,9],[5,10],[5,11],[5,12],[6,5],[6,6],[6,7],[6,8],[6,9],[6,10],[6,11],[6,12],[7,5],[7,6],[7,7],[7,8],[7,9],[7,10],[7,11],[7,12],[8,5],[8,6],[8,7],[8,8],[8,9],[8,10],[8,11],[8,12]],"fill":"#f4e6c8","pattern":"planks","group":"middle","name":"Grand Ballroom"},{"id":"Card Room","cells":[[4,2],[4,3],[4,4],[5,2],[5,3],[5,4],[6,2],[6,3],[6,4],[7,2],[7,3],[7,4],[8,2],[8,3],[8,4]],"fill":"#cfe0cf","group":"middle","name":"Card Room"},{"id":"West Corridor","cells":[[4,1],[5,1],[6,1],[7,1],[8,1],[9,1],[10,1],[11,1],[12,1]],"fill":"#dcdcd8","pattern":"tiles","group":"middle","name":"West Corridor"},{"id":"Winter Garden","cells":[[4,13],[4,14],[4,15],[5,13],[5,14],[5,15],[6,13],[6,14],[6,15],[7,13],[7,14],[7,15],[8,13],[8,14],[8,15]],"fill":"#d8ead3","pattern":"tiles","group":"middle","name":"Winter Garden"},{"id":"Balcony","cells":[[4,16],[5,16],[6,16],[7,16],[8,16],[9,16],[10,16],[11,16],[12,16],[13,16]],"fill":"#dcdcd8","pattern":"tiles","group":"middle","name":"Balcony"},{"id":"Smoking Room","cells":[[9,2],[9,3],[9,4],[10,2],[10,3],[10,4],[11,2],[11,3],[11,4],[12,2],[12,3],[12,4]],"fill":"#e3cdb5","pattern":"planks","group":"south","name":"Smoking Room"},{"id":"Mirror Hall","cells":[[9,5],[9,6],[9,7],[9,8],[9,9],[9,10],[9,11],[9,12],[10,5],[10,6],[10,7],[10,8],[10,9],[10,10],[10,11],[10,12],[11,5],[11,6],[11,7],[11,8],[11,9],[11,10],[11,11],[11,12],[12,5],[12,6],[12,7],[12,8],[12,9],[12,10],[12,11],[12,12],[13,5],[13,6],[13,7],[13,8],[13,9],[13,10],[13,11],[13,12]],"fill":"#dfe7ee","pattern":"marble","group":"south","name":"Mirror Hall"},{"id":"Dining Room","cells":[[9,13],[9,14],[9,15],[10,13],[10,14],[10,15],[11,13],[11,14],[11,15],[12,13],[12,14],[12,15],[13,13],[13,14],[13,15]],"fill":"#efd5cf","group":"south","name":"Dining Room"},{"id":"Cloakroom","cells":[[13,1],[13,2],[13,3],[13,4],[14,1],[14,2],[14,3],[14,4],[15,1],[15,2],[15,3],[15,4],[16,1],[16,2],[16,3],[16,4]],"fill":"#e6e2d6","group":"front","name":"Cloakroom"},{"id":"Staircase","cells":[[14,5],[14,6],[14,7],[15,5],[15,6],[15,7],[16,5],[16,6],[16,7]],"fill":"#e9e4d8","pattern":"marble","group":"front","name":"Staircase"},{"id":"Entrance Hall","cells":[[14,8],[14,9],[14,10],[14,11],[14,12],[15,8],[15,9],[15,10],[15,11],[15,12],[16,8],[16,9],[16,10],[16,11],[16,12]],"fill":"#ece5d5","pattern":"marble","group":"front","name":"Entrance Hall"},{"id":"Buffet","cells":[[14,13],[14,14],[14,15],[14,16],[15,13],[15,14],[15,15],[15,16],[16,13],[16,14],[16,15],[16,16]],"fill":"#f0dcc2","pattern":"planks","group":"front","name":"Buffet"}],"objectTypes":{"bench":{"occupiable":true,"name":"bench","icon":"<rect x=\"7\" y=\"8\" width=\"3.2\" height=\"31\" fill=\"#5e4127\"/><rect x=\"35.8\" y=\"8\" width=\"3.2\" height=\"31\" fill=\"#5e4127\"/><rect x=\"4\" y=\"8\" width=\"38\" height=\"6\" rx=\"1.5\" fill=\"#a5733f\" stroke=\"#4e3a1e\" stroke-width=\"1.3\"/><rect x=\"4\" y=\"17.5\" width=\"38\" height=\"6\" rx=\"1.5\" fill=\"#c08a50\" stroke=\"#6b4a26\" stroke-width=\"1.2\"/><rect x=\"4\" y=\"25\" width=\"38\" height=\"6\" rx=\"1.5\" fill=\"#c08a50\" stroke=\"#6b4a26\" stroke-width=\"1.2\"/><rect x=\"4\" y=\"32.5\" width=\"38\" height=\"6\" rx=\"1.5\" fill=\"#c08a50\" stroke=\"#6b4a26\" stroke-width=\"1.2\"/>"},"chair":{"occupiable":true,"name":"chair","icon":"<rect x=\"9\" y=\"7\" width=\"28\" height=\"32\" rx=\"6\" fill=\"#fbfaf6\" stroke=\"#8c8a82\" stroke-width=\"1.5\"/><rect x=\"9\" y=\"7\" width=\"28\" height=\"9\" rx=\"4\" fill=\"#d9d5cc\" stroke=\"#8c8a82\" stroke-width=\"1.5\"/>"},"armchair":{"occupiable":true,"name":"armchair","icon":"<rect x=\"6\" y=\"14\" width=\"34\" height=\"24\" rx=\"6\" fill=\"#b3252f\" stroke=\"#6b1218\" stroke-width=\"1.5\"/><rect x=\"11\" y=\"8\" width=\"24\" height=\"14\" rx=\"5\" fill=\"#d0333f\" stroke=\"#6b1218\" stroke-width=\"1.5\"/><rect x=\"6\" y=\"20\" width=\"7\" height=\"14\" rx=\"3\" fill=\"#8a1a22\"/><rect x=\"33\" y=\"20\" width=\"7\" height=\"14\" rx=\"3\" fill=\"#8a1a22\"/>"},"sofa":{"occupiable":true,"name":"sofa","icon":"<rect x=\"3\" y=\"14\" width=\"40\" height=\"20\" rx=\"6\" fill=\"#7a5a9a\" stroke=\"#4a3560\" stroke-width=\"1.5\"/><rect x=\"7\" y=\"9\" width=\"32\" height=\"10\" rx=\"4\" fill=\"#9a7abd\" stroke=\"#4a3560\" stroke-width=\"1.5\"/><line x1=\"8\" y1=\"34\" x2=\"8\" y2=\"39\" stroke=\"#4a3560\" stroke-width=\"2\"/><line x1=\"38\" y1=\"34\" x2=\"38\" y2=\"39\" stroke=\"#4a3560\" stroke-width=\"2\"/>"},"doormat":{"occupiable":true,"name":"doormat","icon":"<rect x=\"5\" y=\"14\" width=\"36\" height=\"18\" rx=\"2\" fill=\"#a5834f\" stroke=\"#5e4127\" stroke-width=\"1.5\"/><g stroke=\"#7a5a2a\" stroke-width=\"1.2\"><line x1=\"9\" y1=\"18\" x2=\"37\" y2=\"18\"/><line x1=\"9\" y1=\"23\" x2=\"37\" y2=\"23\"/><line x1=\"9\" y1=\"28\" x2=\"37\" y2=\"28\"/></g>"},"planter":{"occupiable":false,"name":"planter","icon":"<path d=\"M6 25 q3 -9 11 -7 q5 -6 11 -1 q9 -1 11 8 z\" fill=\"#3f8a4a\" stroke=\"#2c6434\" stroke-width=\"1\"/><circle cx=\"14\" cy=\"19\" r=\"1.9\" fill=\"#e0526a\"/><circle cx=\"24\" cy=\"15\" r=\"1.9\" fill=\"#f2d24a\"/><circle cx=\"33\" cy=\"19\" r=\"1.9\" fill=\"#e0526a\"/><rect x=\"4\" y=\"25\" width=\"38\" height=\"14\" rx=\"2\" fill=\"#a5733f\" stroke=\"#4e3a1e\" stroke-width=\"1.5\"/><path d=\"M4 30 h38 M4 34.5 h38\" stroke=\"#7a5630\" stroke-width=\"1\"/><rect x=\"4\" y=\"25\" width=\"4\" height=\"14\" fill=\"#8a5a2f\" stroke=\"#4e3a1e\" stroke-width=\"1\"/><rect x=\"38\" y=\"25\" width=\"4\" height=\"14\" fill=\"#8a5a2f\" stroke=\"#4e3a1e\" stroke-width=\"1\"/><rect x=\"8\" y=\"39\" width=\"4\" height=\"3\" fill=\"#4e3a1e\"/><rect x=\"34\" y=\"39\" width=\"4\" height=\"3\" fill=\"#4e3a1e\"/>"},"harp":{"occupiable":false,"name":"harp","icon":"<path d=\"M12 40 V10 q0 -6 8 -6 q14 0 16 20 q1 10 -8 16 z\" fill=\"#e6cfa8\" stroke=\"#8a6a3a\" stroke-width=\"2\"/><g stroke=\"#8a6a3a\" stroke-width=\"1\"><line x1=\"17\" y1=\"12\" x2=\"17\" y2=\"38\"/><line x1=\"21\" y1=\"12\" x2=\"21\" y2=\"38\"/><line x1=\"25\" y1=\"14\" x2=\"25\" y2=\"38\"/><line x1=\"29\" y1=\"18\" x2=\"29\" y2=\"38\"/></g>"},"stand":{"occupiable":false,"name":"music stand","icon":"<rect x=\"13\" y=\"6\" width=\"20\" height=\"16\" rx=\"2\" fill=\"#3d444b\" stroke=\"#161c25\"/><line x1=\"16\" y1=\"11\" x2=\"30\" y2=\"11\" stroke=\"#f4efe6\"/><line x1=\"16\" y1=\"16\" x2=\"30\" y2=\"16\" stroke=\"#f4efe6\"/><line x1=\"23\" y1=\"22\" x2=\"23\" y2=\"38\" stroke=\"#3d444b\" stroke-width=\"2.5\"/><path d=\"M14 42 l9 -6 l9 6\" fill=\"none\" stroke=\"#3d444b\" stroke-width=\"2.5\"/>"},"piano":{"occupiable":false,"name":"piano","icon":"<path d=\"M8 8 h22 q10 0 12 12 v18 h-34 z\" fill=\"#1c1c1c\" stroke=\"#0b0b0b\" stroke-width=\"1.5\"/><rect x=\"10\" y=\"32\" width=\"18\" height=\"5\" fill=\"#f4efe6\"/><g fill=\"#1c1c1c\"><rect x=\"12\" y=\"32\" width=\"2\" height=\"3\"/><rect x=\"16\" y=\"32\" width=\"2\" height=\"3\"/><rect x=\"22\" y=\"32\" width=\"2\" height=\"3\"/></g>"},"bookcase":{"occupiable":false,"name":"bookcase","icon":"<rect x=\"7\" y=\"4\" width=\"32\" height=\"38\" fill=\"#6e4a2a\" stroke=\"#3f2d1d\" stroke-width=\"1.5\"/><g><rect x=\"10\" y=\"8\" width=\"4\" height=\"10\" fill=\"#b3252f\"/><rect x=\"15\" y=\"8\" width=\"3\" height=\"10\" fill=\"#2f6f5a\"/><rect x=\"19\" y=\"8\" width=\"5\" height=\"10\" fill=\"#c9a03a\"/><rect x=\"25\" y=\"8\" width=\"4\" height=\"10\" fill=\"#3a6fb0\"/><rect x=\"30\" y=\"8\" width=\"6\" height=\"10\" fill=\"#7a5a9a\"/><rect x=\"10\" y=\"21\" width=\"6\" height=\"10\" fill=\"#3a6fb0\"/><rect x=\"17\" y=\"21\" width=\"4\" height=\"10\" fill=\"#b3252f\"/><rect x=\"22\" y=\"21\" width=\"5\" height=\"10\" fill=\"#2f6f5a\"/><rect x=\"28\" y=\"21\" width=\"3\" height=\"10\" fill=\"#c9a03a\"/><rect x=\"32\" y=\"21\" width=\"4\" height=\"10\" fill=\"#b3252f\"/><rect x=\"10\" y=\"34\" width=\"26\" height=\"5\" fill=\"#8a6a3a\"/></g>"},"globe":{"occupiable":false,"name":"globe","icon":"<circle cx=\"23\" cy=\"19\" r=\"12\" fill=\"#7fb8d0\" stroke=\"#3a4148\" stroke-width=\"1.5\"/><path d=\"M14 14 q9 -4 18 2 M13 22 q10 4 20 -1 M23 7 v24\" fill=\"none\" stroke=\"#3f8a4a\" stroke-width=\"2\"/><path d=\"M11 12 q-6 10 4 20\" fill=\"none\" stroke=\"#3a4148\" stroke-width=\"2\"/><rect x=\"18\" y=\"33\" width=\"10\" height=\"4\" fill=\"#8a6a3a\"/><rect x=\"14\" y=\"37\" width=\"18\" height=\"4\" rx=\"1\" fill=\"#5b5852\"/>"},"desk":{"occupiable":false,"name":"desk","icon":"<rect x=\"5\" y=\"12\" width=\"36\" height=\"22\" rx=\"3\" fill=\"#8f6a44\" stroke=\"#5e4127\" stroke-width=\"1.5\"/><rect x=\"9\" y=\"16\" width=\"14\" height=\"10\" fill=\"#f4efe6\" stroke=\"#8c8a82\"/><rect x=\"27\" y=\"17\" width=\"10\" height=\"4\" fill=\"#3d444b\"/>"},"pillar":{"occupiable":false,"name":"pillar","icon":"<circle cx=\"23\" cy=\"23\" r=\"12\" fill=\"#b9b6ae\" stroke=\"#5b5852\" stroke-width=\"2\"/><circle cx=\"23\" cy=\"23\" r=\"6\" fill=\"#9a968d\"/>"},"table":{"occupiable":false,"name":"table","icon":"<rect x=\"7\" y=\"7\" width=\"32\" height=\"32\" rx=\"5\" fill=\"#b98a5a\" stroke=\"#6e4d2c\" stroke-width=\"1.5\"/><rect x=\"12\" y=\"12\" width=\"22\" height=\"22\" rx=\"3\" fill=\"#d1a675\"/>"},"cabinet":{"occupiable":false,"name":"cabinet","icon":"<rect x=\"10\" y=\"4\" width=\"26\" height=\"38\" rx=\"2\" fill=\"#6b7680\" stroke=\"#3d444b\" stroke-width=\"1.5\"/><rect x=\"14\" y=\"9\" width=\"18\" height=\"9\" fill=\"#9aa1a8\"/><rect x=\"14\" y=\"21\" width=\"18\" height=\"9\" fill=\"#9aa1a8\"/><rect x=\"14\" y=\"33\" width=\"18\" height=\"6\" fill=\"#9aa1a8\"/>"},"plant":{"occupiable":false,"name":"plant","icon":"<path d=\"M15 28 h16 l-2 12 h-12 z\" fill=\"#c2643a\" stroke=\"#7a3d20\" stroke-width=\"1.2\"/><ellipse cx=\"15\" cy=\"17\" rx=\"7\" ry=\"10\" fill=\"#3f8a4a\" transform=\"rotate(-30 15 17)\"/><ellipse cx=\"31\" cy=\"17\" rx=\"7\" ry=\"10\" fill=\"#3f8a4a\" transform=\"rotate(30 31 17)\"/><ellipse cx=\"23\" cy=\"13\" rx=\"6\" ry=\"11\" fill=\"#57a35e\"/>"},"fountain":{"occupiable":false,"name":"fountain","icon":"<ellipse cx=\"23\" cy=\"33\" rx=\"18\" ry=\"8\" fill=\"#9fd3ea\" stroke=\"#4a7c95\" stroke-width=\"1.5\"/><rect x=\"19\" y=\"14\" width=\"8\" height=\"18\" fill=\"#b9b6ae\" stroke=\"#5b5852\"/><ellipse cx=\"23\" cy=\"14\" rx=\"10\" ry=\"4\" fill=\"#9fd3ea\" stroke=\"#4a7c95\"/><path d=\"M23 4 q-6 6 -4 10 M23 4 q6 6 4 10\" fill=\"none\" stroke=\"#7fb8d0\" stroke-width=\"2\"/>"},"fireplace":{"occupiable":false,"name":"fireplace","icon":"<rect x=\"5\" y=\"6\" width=\"36\" height=\"34\" fill=\"#b9b6ae\" stroke=\"#5b5852\" stroke-width=\"1.5\"/><rect x=\"12\" y=\"14\" width=\"22\" height=\"26\" fill=\"#2b2b2b\"/><path d=\"M23 38 q-8 -8 -3 -14 q1 6 5 6 q3 -6 0 -12 q9 8 4 20 z\" fill=\"#f2a53a\"/><path d=\"M23 38 q-4 -5 -1 -9 q2 4 4 3 q1 -4 0 -6 q5 6 1 12 z\" fill=\"#f2d24a\"/><rect x=\"5\" y=\"6\" width=\"36\" height=\"5\" fill=\"#8f8c84\"/>"},"statue":{"occupiable":false,"name":"statue","icon":"<rect x=\"13\" y=\"32\" width=\"20\" height=\"9\" fill=\"#b9b6ae\" stroke=\"#5b5852\" stroke-width=\"1.5\"/><circle cx=\"23\" cy=\"9\" r=\"5\" fill=\"#d9d5cc\" stroke=\"#8c8a82\"/><path d=\"M16 15 h14 l2 17 h-18 z\" fill=\"#d9d5cc\" stroke=\"#8c8a82\" stroke-width=\"1.2\"/>"},"rack":{"occupiable":false,"name":"coat rack","icon":"<line x1=\"6\" y1=\"10\" x2=\"40\" y2=\"10\" stroke=\"#5b5852\" stroke-width=\"3\"/><line x1=\"9\" y1=\"10\" x2=\"9\" y2=\"40\" stroke=\"#5b5852\" stroke-width=\"2.5\"/><line x1=\"37\" y1=\"10\" x2=\"37\" y2=\"40\" stroke=\"#5b5852\" stroke-width=\"2.5\"/><path d=\"M15 14 v2 h8 v14 h-8 z\" fill=\"#c8536a\"/><path d=\"M25 14 v2 h7 v12 h-7 z\" fill=\"#3a6fb0\"/><line x1=\"19\" y1=\"10\" x2=\"19\" y2=\"14\" stroke=\"#333\"/><line x1=\"28\" y1=\"10\" x2=\"28\" y2=\"14\" stroke=\"#333\"/>"},"counter":{"occupiable":false,"name":"counter","icon":"<rect x=\"0\" y=\"10\" width=\"46\" height=\"26\" fill=\"#a97c50\" stroke=\"#5e4127\" stroke-width=\"1.5\"/><rect x=\"0\" y=\"10\" width=\"46\" height=\"7\" fill=\"#c9a06f\"/>"},"mirror":{"occupiable":false,"name":"mirror","icon":"<rect x=\"12\" y=\"4\" width=\"22\" height=\"38\" rx=\"9\" fill=\"#c9a03a\" stroke=\"#7a5a12\" stroke-width=\"1.5\"/><rect x=\"15\" y=\"7\" width=\"16\" height=\"32\" rx=\"7\" fill=\"#dfe9ee\"/><path d=\"M19 11 q-3 8 0 20\" fill=\"none\" stroke=\"#ffffff\" stroke-width=\"2.5\" opacity=\".8\"/>"},"stairs":{"occupiable":false,"name":"stairs","icon":"<path d=\"M4 42 h10 v-10 h10 v-10 h10 v-10 h8 v40 z\" fill=\"#b9b6ae\" stroke=\"#5b5852\" stroke-width=\"1.5\"/>"}},"wallTypes":{"window":{"name":"window","icon":"<rect x=\"4\" y=\"18\" width=\"38\" height=\"8\" rx=\"2\" fill=\"#bfe3f2\" stroke=\"#4a7c95\"/>"},"door":{"name":"door","icon":"<rect x=\"8\" y=\"17\" width=\"30\" height=\"10\" rx=\"2\" fill=\"#8a5a34\" stroke=\"#3f2d1d\"/><circle cx=\"34\" cy=\"22\" r=\"1.6\" fill=\"#f0b429\"/>"}},"objects":[{"cell":[1,1],"type":"planter"},{"cell":[1,2],"type":"planter"},{"cell":[1,3],"type":"planter"},{"cell":[2,1],"type":"bench"},{"cell":[3,1],"type":"planter"},{"cell":[3,3],"type":"bench"},{"cell":[1,5],"type":"harp"},{"cell":[1,6],"type":"stand"},{"cell":[1,8],"type":"stand"},{"cell":[1,10],"type":"stand"},{"cell":[1,11],"type":"piano","span":[1,2]},{"cell":[1,13],"type":"bookcase"},{"cell":[1,14],"type":"bookcase"},{"cell":[1,15],"type":"bookcase"},{"cell":[2,16],"type":"globe"},{"cell":[2,14],"type":"armchair"},{"cell":[3,13],"type":"desk"},{"cell":[3,16],"type":"armchair"},{"cell":[2,5],"type":"pillar"},{"cell":[4,12],"type":"pillar"},{"cell":[8,5],"type":"pillar"},{"cell":[8,12],"type":"pillar"},{"cell":[5,8],"type":"table","span":[1,2]},{"cell":[4,2],"type":"cabinet"},{"cell":[5,3],"type":"table"},{"cell":[5,2],"type":"chair"},{"cell":[5,4],"type":"chair"},{"cell":[7,3],"type":"table"},{"cell":[7,2],"type":"chair"},{"cell":[7,4],"type":"chair"},{"cell":[6,1],"type":"plant"},{"cell":[10,1],"type":"plant"},{"cell":[8,16],"type":"plant"},{"cell":[4,16],"type":"planter"},{"cell":[4,13],"type":"plant"},{"cell":[4,15],"type":"plant"},{"cell":[6,14],"type":"fountain"},{"cell":[8,13],"type":"plant"},{"cell":[5,15],"type":"bench"},{"cell":[7,13],"type":"bench"},{"cell":[9,4],"type":"cabinet"},{"cell":[9,2],"type":"armchair"},{"cell":[11,2],"type":"armchair"},{"cell":[12,3],"type":"fireplace"},{"cell":[11,4],"type":"table"},{"cell":[12,9],"type":"sofa"},{"cell":[10,7],"type":"statue"},{"cell":[10,12],"type":"pillar"},{"cell":[13,5],"type":"pillar"},{"cell":[13,12],"type":"plant"},{"cell":[10,15],"type":"table","span":[3,1]},{"cell":[12,13],"type":"fireplace"},{"cell":[9,13],"type":"cabinet"},{"cell":[13,13],"type":"chair"},{"cell":[11,14],"type":"chair"},{"cell":[13,15],"type":"chair"},{"cell":[15,1],"type":"rack"},{"cell":[16,1],"type":"rack"},{"cell":[16,2],"type":"rack"},{"cell":[13,4],"type":"counter"},{"cell":[14,4],"type":"counter"},{"cell":[16,4],"type":"mirror"},{"cell":[14,5],"type":"stairs"},{"cell":[15,5],"type":"stairs"},{"cell":[16,5],"type":"stairs"},{"cell":[16,7],"type":"plant"},{"cell":[14,8],"type":"plant"},{"cell":[14,12],"type":"plant"},{"cell":[15,10],"type":"statue"},{"cell":[16,9],"type":"doormat"},{"cell":[16,11],"type":"doormat"},{"cell":[14,13],"type":"counter"},{"cell":[14,14],"type":"counter"},{"cell":[14,15],"type":"counter"},{"cell":[15,13],"type":"chair"},{"cell":[16,14],"type":"chair"},{"cell":[15,16],"type":"plant"}],"wallFeatures":[{"cell":[1,1],"side":"N","type":"window"},{"cell":[1,4],"side":"N","type":"window"},{"cell":[1,14],"side":"N","type":"window"},{"cell":[1,16],"side":"N","type":"window"},{"cell":[16,10],"side":"S","type":"door"},{"cell":[4,16],"side":"E","type":"window"},{"cell":[8,16],"side":"E","type":"window"},{"cell":[12,16],"side":"E","type":"window"}],"extras":[],"cellSize":46},"persons":[{"id":"A","name":"Alice","gender":"F","role":"lady","color":"#c62828","avatar":{"bg":"#8c3a5a","skin":"#f4d3b6","hair":"#d9b464","style":"bun","shirt":"#c8536a","necklace":true,"earrings":true},"clue":"She was <b>dancing with Ian</b>.","job":"debutante","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Alice\"><rect width=\"80\" height=\"80\" fill=\"#8c3a5a\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#c8536a\"/><path d=\"M31 58 Q40 66 49 58\" fill=\"none\" stroke=\"#f3e2b3\" stroke-width=\"2\" stroke-dasharray=\"2 2\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#f4d3b6\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#f4d3b6\"/><circle cx=\"40\" cy=\"15\" r=\"7\" fill=\"#d9b464\"/><path d=\"M26 32 Q26 16 40 16 Q54 16 54 32 Q50 24 40 24 Q30 24 26 32 Z\" fill=\"#d9b464\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><circle cx=\"26\" cy=\"41\" r=\"1.8\" fill=\"#f0c95a\"/><circle cx=\"54\" cy=\"41\" r=\"1.8\" fill=\"#f0c95a\"/></svg>","solverRole":"guest","constraints":[{"type":"partner","q":"I"}]},{"id":"B","name":"Bridget","gender":"F","role":"lady","color":"#2e7d32","avatar":{"bg":"#3a5a6e","skin":"#f1c8a5","hair":"#b7482c","style":"curly","shirt":"#2f6f5a","earrings":true},"clue":"She was <b>dancing with Jeremy</b>, beside a <b>table</b>, <b>north of Celia</b>.","job":"actress","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Bridget\"><rect width=\"80\" height=\"80\" fill=\"#3a5a6e\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#2f6f5a\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#f1c8a5\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#f1c8a5\"/><path d=\"M25 34 q-3 -8 4 -10 q0 -8 8 -7 q3 -4 8 -1 q6 -3 9 3 q7 0 5 8 q4 4 -1 9 q-6 -14 -16 -12 q-9 -1 -17 10 Z\" fill=\"#b7482c\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><circle cx=\"26\" cy=\"41\" r=\"1.8\" fill=\"#f0c95a\"/><circle cx=\"54\" cy=\"41\" r=\"1.8\" fill=\"#f0c95a\"/></svg>","solverRole":"guest","constraints":[{"type":"partner","q":"J"},{"type":"rel","q":"C","dir":"N"},{"type":"beside","obj":"table"}]},{"id":"C","name":"Celia","gender":"F","role":"lady","color":"#1565c0","avatar":{"bg":"#4b4b6d","skin":"#f6d8c0","hair":"#1c1a1a","style":"long","shirt":"#3a6fb0","necklace":true},"clue":"She was <b>north of Lucas</b>.","job":"pianist","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Celia\"><rect width=\"80\" height=\"80\" fill=\"#4b4b6d\"/><path d=\"M22 42 Q20 14 40 14 Q60 14 58 42 L62 72 L18 72 Z\" fill=\"#1c1a1a\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#3a6fb0\"/><path d=\"M31 58 Q40 66 49 58\" fill=\"none\" stroke=\"#f3e2b3\" stroke-width=\"2\" stroke-dasharray=\"2 2\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#f6d8c0\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#f6d8c0\"/><path d=\"M26 36 Q26 16 40 16 Q54 16 54 36 Q52 24 40 24 Q28 24 26 36 Z\" fill=\"#1c1a1a\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/></svg>","solverRole":"guest","constraints":[{"type":"rel","q":"L","dir":"N"}]},{"id":"D","name":"Delia","gender":"F","role":"lady","color":"#6a1b9a","avatar":{"bg":"#5b4a6e","skin":"#e9c6a4","hair":"#3b2418","style":"bob","shirt":"#7a4d9a","earrings":true},"clue":"She was <b>east of Eleanor</b>.","job":"widow","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Delia\"><rect width=\"80\" height=\"80\" fill=\"#5b4a6e\"/><path d=\"M22 40 Q22 14 40 14 Q58 14 58 40 L58 58 L22 58 Z\" fill=\"#3b2418\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#7a4d9a\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#e9c6a4\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#e9c6a4\"/><path d=\"M26 36 Q26 16 40 16 Q54 16 54 36 Q52 24 40 24 Q28 24 26 36 Z\" fill=\"#3b2418\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><circle cx=\"26\" cy=\"41\" r=\"1.8\" fill=\"#f0c95a\"/><circle cx=\"54\" cy=\"41\" r=\"1.8\" fill=\"#f0c95a\"/></svg>","solverRole":"guest","constraints":[{"type":"rel","q":"E","dir":"E"}]},{"id":"E","name":"Eleanor","gender":"F","role":"lady","color":"#e65100","avatar":{"bg":"#7a6a3c","skin":"#f0cdb0","hair":"#6b3f22","style":"ponytail","shirt":"#d97b2a"},"clue":"She was <b>south of Bridget</b>.","job":"painter","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Eleanor\"><rect width=\"80\" height=\"80\" fill=\"#7a6a3c\"/><path d=\"M50 30 Q64 34 60 62 L54 62 Q56 40 48 36 Z\" fill=\"#6b3f22\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#d97b2a\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#f0cdb0\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#f0cdb0\"/><path d=\"M26 33 Q26 16 40 16 Q54 16 54 33 Q50 24 40 24 Q30 24 26 33 Z\" fill=\"#6b3f22\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/></svg>","solverRole":"guest","constraints":[{"type":"rel","q":"B","dir":"S"}]},{"id":"F","name":"Felicity","gender":"F","role":"lady","color":"#00838f","avatar":{"bg":"#3f6d5a","skin":"#f4d5bb","hair":"#c9c3b8","style":"bun","shirt":"#1f8a8a","glasses":true,"necklace":true},"clue":"She was beside a <b>fireplace</b>.","job":"novelist","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Felicity\"><rect width=\"80\" height=\"80\" fill=\"#3f6d5a\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#1f8a8a\"/><path d=\"M31 58 Q40 66 49 58\" fill=\"none\" stroke=\"#f3e2b3\" stroke-width=\"2\" stroke-dasharray=\"2 2\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#f4d5bb\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#f4d5bb\"/><circle cx=\"40\" cy=\"15\" r=\"7\" fill=\"#c9c3b8\"/><path d=\"M26 32 Q26 16 40 16 Q54 16 54 32 Q50 24 40 24 Q30 24 26 32 Z\" fill=\"#c9c3b8\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><circle cx=\"34\" cy=\"35\" r=\"5\" fill=\"none\" stroke=\"#2b2b2b\" stroke-width=\"1.4\"/><circle cx=\"46\" cy=\"35\" r=\"5\" fill=\"none\" stroke=\"#2b2b2b\" stroke-width=\"1.4\"/><line x1=\"39\" y1=\"35\" x2=\"41\" y2=\"35\" stroke=\"#2b2b2b\" stroke-width=\"1.4\"/></svg>","solverRole":"guest","constraints":[{"type":"beside","obj":"fireplace"}]},{"id":"G","name":"Grace","gender":"F","role":"lady","color":"#ad1457","avatar":{"bg":"#6a4d8a","skin":"#8a5a3c","hair":"#1a1210","style":"curly","shirt":"#b3255f","earrings":true},"clue":"She was beside the <b>coat rack</b>.","job":"countess","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Grace\"><rect width=\"80\" height=\"80\" fill=\"#6a4d8a\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#b3255f\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#8a5a3c\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#8a5a3c\"/><path d=\"M25 34 q-3 -8 4 -10 q0 -8 8 -7 q3 -4 8 -1 q6 -3 9 3 q7 0 5 8 q4 4 -1 9 q-6 -14 -16 -12 q-9 -1 -17 10 Z\" fill=\"#1a1210\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><circle cx=\"26\" cy=\"41\" r=\"1.8\" fill=\"#f0c95a\"/><circle cx=\"54\" cy=\"41\" r=\"1.8\" fill=\"#f0c95a\"/></svg>","solverRole":"guest","constraints":[{"type":"beside","obj":"rack"}]},{"id":"H","name":"Harriet","gender":"F","role":"lady","color":"#5d4037","avatar":{"bg":"#2c3e58","skin":"#f1cfb2","hair":"#2b1c14","style":"long","shirt":"#8a5a2a","headband":"#f2d24a"},"clue":"She was <b>dancing with Oswald</b>.","job":"heiress","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Harriet\"><rect width=\"80\" height=\"80\" fill=\"#2c3e58\"/><path d=\"M22 42 Q20 14 40 14 Q60 14 58 42 L62 72 L18 72 Z\" fill=\"#2b1c14\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#8a5a2a\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#f1cfb2\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#f1cfb2\"/><path d=\"M26 36 Q26 16 40 16 Q54 16 54 36 Q52 24 40 24 Q28 24 26 36 Z\" fill=\"#2b1c14\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><rect x=\"26\" y=\"23\" width=\"28\" height=\"5\" rx=\"2\" fill=\"#f2d24a\"/></svg>","solverRole":"guest","constraints":[{"type":"partner","q":"O"}]},{"id":"I","name":"Ian","gender":"M","role":"gentleman","color":"#827717","avatar":{"bg":"#3f3f3f","skin":"#e7b98f","hair":"#3b2418","style":"short","shirt":"#1b1b1b","bow":true},"clue":"He was beside a <b>planter</b>.","job":"officer","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Ian\"><rect width=\"80\" height=\"80\" fill=\"#3f3f3f\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#1b1b1b\"/><path d=\"M40 60 l-8 -4 v8 z M40 60 l8 -4 v8 z\" fill=\"#b8302b\"/><circle cx=\"40\" cy=\"60\" r=\"2\" fill=\"#7a1f1c\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#e7b98f\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#e7b98f\"/><path d=\"M26 32 Q26 15 40 15 Q54 15 54 32 Q50 24 40 24 Q30 24 26 32 Z\" fill=\"#3b2418\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/></svg>","solverRole":"guest","constraints":[{"type":"beside","obj":"planter"}]},{"id":"J","name":"Jeremy","gender":"M","role":"gentleman","color":"#283593","avatar":{"bg":"#5a2a2a","skin":"#e4b998","hair":"#8a8a8a","style":"slick","shirt":"#1b1b1b","bow":true,"mustache":true,"mustacheColor":"#8a8a8a"},"clue":"He was <b>west of Kenneth</b>.","job":"banker","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Jeremy\"><rect width=\"80\" height=\"80\" fill=\"#5a2a2a\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#1b1b1b\"/><path d=\"M40 60 l-8 -4 v8 z M40 60 l8 -4 v8 z\" fill=\"#b8302b\"/><circle cx=\"40\" cy=\"60\" r=\"2\" fill=\"#7a1f1c\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#e4b998\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#e4b998\"/><path d=\"M26 30 Q27 16 44 15 Q56 15 55 26 Q48 22 40 23 Q30 24 26 30 Z\" fill=\"#8a8a8a\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><path d=\"M33 41 Q40 37 47 41 Q40 43 33 41 Z\" fill=\"#8a8a8a\"/></svg>","solverRole":"guest","constraints":[{"type":"rel","q":"K","dir":"W"}]},{"id":"K","name":"Kenneth","gender":"M","role":"gentleman","color":"#33691e","avatar":{"bg":"#33526e","skin":"#d9a57a","hair":"#1c1a1a","style":"short","shirt":"#1b1b1b","bow":true,"beard":true},"clue":"He was beside a <b>pillar</b>.","job":"colonel","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Kenneth\"><rect width=\"80\" height=\"80\" fill=\"#33526e\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#1b1b1b\"/><path d=\"M40 60 l-8 -4 v8 z M40 60 l8 -4 v8 z\" fill=\"#b8302b\"/><circle cx=\"40\" cy=\"60\" r=\"2\" fill=\"#7a1f1c\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#d9a57a\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#d9a57a\"/><path d=\"M26 32 Q26 15 40 15 Q54 15 54 32 Q50 24 40 24 Q30 24 26 32 Z\" fill=\"#1c1a1a\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><path d=\"M27 38 Q30 52 40 53 Q50 52 53 38 Q50 47 40 48 Q30 47 27 38 Z\" fill=\"#1c1a1a\"/></svg>","solverRole":"guest","constraints":[{"type":"beside","obj":"pillar"}]},{"id":"L","name":"Lucas","gender":"M","role":"gentleman","color":"#4e342e","avatar":{"bg":"#2f5d7c","skin":"#e9c6a4","hair":"#5a3a22","style":"slick","shirt":"#1b1b1b","bow":true,"glasses":true},"clue":"He was beside a <b>pillar</b>.","job":"architect","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Lucas\"><rect width=\"80\" height=\"80\" fill=\"#2f5d7c\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#1b1b1b\"/><path d=\"M40 60 l-8 -4 v8 z M40 60 l8 -4 v8 z\" fill=\"#b8302b\"/><circle cx=\"40\" cy=\"60\" r=\"2\" fill=\"#7a1f1c\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#e9c6a4\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#e9c6a4\"/><path d=\"M26 30 Q27 16 44 15 Q56 15 55 26 Q48 22 40 23 Q30 24 26 30 Z\" fill=\"#5a3a22\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><circle cx=\"34\" cy=\"35\" r=\"5\" fill=\"none\" stroke=\"#2b2b2b\" stroke-width=\"1.4\"/><circle cx=\"46\" cy=\"35\" r=\"5\" fill=\"none\" stroke=\"#2b2b2b\" stroke-width=\"1.4\"/><line x1=\"39\" y1=\"35\" x2=\"41\" y2=\"35\" stroke=\"#2b2b2b\" stroke-width=\"1.4\"/></svg>","solverRole":"guest","constraints":[{"type":"beside","obj":"pillar"}]},{"id":"M","name":"Martin","gender":"M","role":"gentleman","color":"#00695c","avatar":{"bg":"#4e4e7a","skin":"#8a5a3c","hair":"#1a1210","style":"short","shirt":"#1b1b1b","bow":true,"mustache":true},"clue":"He was dancing in the <b>Dining Room</b>.","job":"doctor","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Martin\"><rect width=\"80\" height=\"80\" fill=\"#4e4e7a\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#1b1b1b\"/><path d=\"M40 60 l-8 -4 v8 z M40 60 l8 -4 v8 z\" fill=\"#b8302b\"/><circle cx=\"40\" cy=\"60\" r=\"2\" fill=\"#7a1f1c\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#8a5a3c\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#8a5a3c\"/><path d=\"M26 32 Q26 15 40 15 Q54 15 54 32 Q50 24 40 24 Q30 24 26 32 Z\" fill=\"#1a1210\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><path d=\"M33 41 Q40 37 47 41 Q40 43 33 41 Z\" fill=\"#3a2a1c\"/></svg>","solverRole":"guest","constraints":[{"type":"area","areas":["Dining Room"]}]},{"id":"N","name":"Nathan","gender":"M","role":"gentleman","color":"#b71c1c","avatar":{"bg":"#7a1f3c","skin":"#e8bf9a","hair":"#2a1d16","style":"short","shirt":"#1b1b1b","bow":true},"clue":"He was <b>north of Oswald</b>.","job":"lawyer","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Nathan\"><rect width=\"80\" height=\"80\" fill=\"#7a1f3c\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#1b1b1b\"/><path d=\"M40 60 l-8 -4 v8 z M40 60 l8 -4 v8 z\" fill=\"#b8302b\"/><circle cx=\"40\" cy=\"60\" r=\"2\" fill=\"#7a1f1c\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#e8bf9a\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#e8bf9a\"/><path d=\"M26 32 Q26 15 40 15 Q54 15 54 32 Q50 24 40 24 Q30 24 26 32 Z\" fill=\"#2a1d16\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/></svg>","solverRole":"guest","constraints":[{"type":"rel","q":"O","dir":"N"}]},{"id":"O","name":"Oswald","gender":"M","role":"gentleman","color":"#37474f","avatar":{"bg":"#8a5a2a","skin":"#e9c6a4","hair":"#c9c3b8","style":"bald","shirt":"#1b1b1b","bow":true,"glasses":true,"mustache":true,"mustacheColor":"#8a8a8a"},"clue":"He was <b>east of Martin</b>.","job":"professor","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Oswald\"><rect width=\"80\" height=\"80\" fill=\"#8a5a2a\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#1b1b1b\"/><path d=\"M40 60 l-8 -4 v8 z M40 60 l8 -4 v8 z\" fill=\"#b8302b\"/><circle cx=\"40\" cy=\"60\" r=\"2\" fill=\"#7a1f1c\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#e9c6a4\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#e9c6a4\"/><path d=\"M26 30 Q26 22 30 20 L30 34 Q26 34 26 30 Z\" fill=\"#c9c3b8\"/><path d=\"M54 30 Q54 22 50 20 L50 34 Q54 34 54 30 Z\" fill=\"#c9c3b8\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><circle cx=\"34\" cy=\"35\" r=\"5\" fill=\"none\" stroke=\"#2b2b2b\" stroke-width=\"1.4\"/><circle cx=\"46\" cy=\"35\" r=\"5\" fill=\"none\" stroke=\"#2b2b2b\" stroke-width=\"1.4\"/><line x1=\"39\" y1=\"35\" x2=\"41\" y2=\"35\" stroke=\"#2b2b2b\" stroke-width=\"1.4\"/><path d=\"M33 41 Q40 37 47 41 Q40 43 33 41 Z\" fill=\"#8a8a8a\"/></svg>","solverRole":"guest","constraints":[{"type":"rel","q":"M","dir":"E"}]},{"id":"V","name":"Vernon","gender":"M","role":"victim","color":"#1b1b1b","avatar":{"bg":"#3a4a3a","skin":"#e4b998","hair":"#cfcfd2","style":"slick","shirt":"#22406f","bow":true,"mustache":true,"mustacheColor":"#bdbdbd"},"clue":"<b>The victim.</b> He was found on the <b>sofa</b> in the Mirror Hall – alone with the murderer.","job":"the host","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Vernon\"><rect width=\"80\" height=\"80\" fill=\"#3a4a3a\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#22406f\"/><path d=\"M40 60 l-8 -4 v8 z M40 60 l8 -4 v8 z\" fill=\"#b8302b\"/><circle cx=\"40\" cy=\"60\" r=\"2\" fill=\"#7a1f1c\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#e4b998\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#e4b998\"/><path d=\"M26 30 Q27 16 44 15 Q56 15 55 26 Q48 22 40 23 Q30 24 26 30 Z\" fill=\"#cfcfd2\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><path d=\"M33 41 Q40 37 47 41 Q40 43 33 41 Z\" fill=\"#bdbdbd\"/><path d=\"M12 12 L68 68 M68 12 L12 68\" stroke=\"#e0362e\" stroke-width=\"5\" stroke-linecap=\"round\" opacity=\".9\"/></svg>","solverRole":"staff","constraints":[{"type":"on","obj":"sofa"}]}],"victim":"V","murderer":"D","solution":{"I":[1,4],"A":[2,3],"J":[3,7],"B":[4,8],"K":[5,12],"C":[6,11],"L":[7,5],"E":[8,6],"D":[9,10],"M":[10,14],"F":[11,13],"V":[12,9],"N":[13,2],"G":[14,1],"O":[15,15],"H":[16,16]},"walkthrough":[{"place":["V"],"focus":{"group":"south"},"text":"Vernon lies on the <b>sofa</b>: <b>R12C9</b>, in the Mirror Hall. The murderer was alone with him there. Count the guests: seven gentlemen and eight ladies. Every couple is one gentleman and one lady, so all seven gentlemen are dancing – the guest who is not dancing, the murderer, is one of the <b>eight ladies</b>."},{"text":"The key idea: partners stand corner to corner, so every couple occupies <b>two neighbouring rows</b> and <b>two neighbouring columns</b>. Only Vernon’s row (12) and the murderer’s row are “single”; the other fourteen rows split into seven pairs of neighbours, so the stretches of rows above, between and below the two single rows all have an even length. Row 12 is even, so the murderer’s row is <b>odd and above Vernon’s</b>: row 9 or 11 (rows 1–8 pair up as 1–2, 3–4, 5–6, 7–8, then 10–11 or 9–10, then 13–14 and 15–16). The same holds for columns: column 9 is odd, so the murderer’s column is <b>even and to the right</b>: 10 or 12. The murderer stands at <b>R9C10, R9C12 or R11C12</b> (R11C10 would touch Vernon corner to corner). Further consequences: the gentleman of a couple is in the upper row of its pair, so the gentlemen are in rows 1, 3, 5, 7, 13, 15 (and 9 or 10), the ladies in rows 2, 4, 6, 8, 14, 16 (and 10 or 11); the one-square-wide Gallery, West Corridor and Balcony cannot hold a couple and are empty – and so is the Staircase, where the stairs and the plant leave no diagonal pair."},{"place":["G","I","A"],"text":"Rows 13 and 14 form a pair, and the only area containing both rows with room for a couple is the <b>Cloakroom</b>: the counters at R13C4 and R14C4 rule out columns 3–4, so this couple stands in columns 1–2 – the gentleman at R13C1 or R13C2, the lady at R14C2 or R14C1. Grace is beside a coat rack: she is that lady, <b>Grace R14C1</b> (next to the rack at R15C1), and her partner stands at R13C2. Columns 1–2 are used up. Rows 1–2 are a pair as well: Terrace or Library. Ian is beside a planter, and as a gentleman he stands in an upper row – R1C4 (at R3C2 his partner would be in row 4, outside the Terrace): <b>Ian R1C4</b> and <b>Alice, who dances with him, R2C3</b>. Column pair 3–4 is now taken, so the Card Room and the Smoking Room (columns 2–4) can host no couple: both are empty."},{"place":["F","M"],"text":"The middle row pair (9–10 or 10–11) needs an area with those rows: the Smoking Room is empty and the Mirror Hall is Vernon’s, so this couple dances in the <b>Dining Room</b> – Martin is its gentleman. Felicity is beside a fireplace: not in the empty Smoking Room, so <b>Felicity R11C13</b>, next to the dining-room fireplace. Row 11 is a dancer’s row, so the murderer is in <b>row 9</b> and the middle pair is 10–11: <b>Martin R10C14</b> (R10C12 belongs to the Mirror Hall). The dining couple uses columns 13–14, so the Winter Garden (columns 13–15) is empty; the Library would need rows 1–2, which are Alice’s and Ian’s – empty as well."},{"place":["O","H","N"],"cand":{"J":[[3,7],[5,7]],"B":[[4,8],[6,8]],"K":[[3,12],[5,12],[7,12]],"L":[[3,5],[7,5],[3,12],[5,12],[7,12]]},"text":"Rows 15–16: Harriet dances with Oswald, and Oswald is east of Martin (column 14), so their couple uses columns 15–16 – only the <b>Buffet</b> has those rows and columns: <b>Oswald R15C15, Harriet R16C16</b> (R15C16 is a plant). The gentleman at R13C2: Jeremy, Kenneth and Lucas are all in the Ballroom (Bridget, Jeremy’s partner, is beside a table, and the tables outside the Ballroom stand in empty or full rooms; the pillars Kenneth and Lucas stand beside are in the Ballroom – the Mirror Hall’s are out of reach for a gentleman), so Grace’s partner is <b>Nathan, R13C2</b> – north of Oswald, as he said."},{"cand":{"J":[[3,7],[5,7]],"B":[[4,8],[6,8]],"K":[[3,12],[5,12],[7,12]],"L":[[3,5],[7,5]]},"text":"The Ballroom hosts the three couples of row pairs 3–4, 5–6 and 7–8, using column pairs 5–6, 7–8 and the middle pair (10–11 or 11–12). Bridget, in a lady’s row, is beside the champagne table (R5C8–9): R4C8 or R6C8 (column 9 is Vernon’s), so <b>Jeremy is at R3C7 or R5C7</b> and their couple takes columns 7–8. Kenneth is east of Jeremy and beside a pillar: R3C12, R5C12 or R7C12 – in <b>column 12</b>. Column 12 is a dancer’s column, so the middle column pair is 11–12 and the murderer’s column is 10: the murderer stands at <b>R9C10</b>. Lucas, beside a pillar with column 12 taken, is at R3C5 or R7C5 – columns 5–6."},{"place":["B","J","L","K"],"cand":{"C":[[6,11],[8,6]],"E":[[6,11],[8,6]]},"text":"Bridget is north of Celia and Eleanor is south of Bridget. Were Bridget at R6C8, both Celia and Eleanor would have to be in row 8 – impossible. So <b>Bridget R4C8, Jeremy R3C7</b>. Row 3 is Jeremy’s, so <b>Lucas R7C5</b>, and with rows 3 and 7 taken <b>Kenneth R5C12</b>."},{"place":["C","E","D"],"text":"Kenneth’s partner stands at R6C11 and Lucas’s at R8C6 (R6C13 and R8C4 lie outside the Ballroom). Celia is north of Lucas (row 7): <b>Celia R6C11</b>, dancing with Kenneth; <b>Eleanor R8C6</b> with Lucas – south of Bridget, as she said. Delia is the lady nobody was dancing with: she was alone with Vernon in the Mirror Hall, at <b>R9C10</b> – east of Eleanor indeed. <b>Delia is the murderer.</b>"},{"final":true,"text":"Case closed. Seven couples, seven pairs of rows and seven pairs of columns: the domino structure of the waltz confined the killer’s square before a single dancer was placed, the column pairs decided which rooms stayed empty, and Delia – the one lady without a partner – was alone with Vernon in the Mirror Hall."}],"solver":{"rules":[{"type":"couples","opposite_gender":true,"man_north":true}],"groups":{"North wing":["Terrace","Gallery","Library"],"Middle":["Ballroom","Card Room","West Corridor","Winter Garden","Balcony"],"South wing":["Smoking Room","Mirror Hall","Dining Room"],"Front of house":["Cloakroom","Staircase","Entrance Hall","Buffet"]},"occupiable":["bench","chair","armchair","sofa","doormat"]},"verification":{"tool":"tools/murdoku_solver.py","unique":true,"guessFree":true,"checked":"2026-09-15"}}