{"format":"murdoku-puzzle/1","id":"laundry","version":1,"difficulty":"medium","level":5,"size":{"rows":8,"cols":8},"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 Laundry","tagline":"An old steam laundry · washing day · the owner was found at the mangle","author":"mathace","concept":"Murdoku – Manuel Garand (murdoku.com); unofficial fan-made case","created":"2026-10-06","story":"Monday is washing day at Ventura's steam laundry, and the old building was full of steam and noise from dawn: the washtubs bubbled, the mangle creaked and the yard was white with drying sheets. Four workers kept the place running, and three customers had come in with their bundles – a hotel housekeeper, a waiter and a bride with her wedding dress. Ventura, the owner, was last seen going into the ironing room to check the irons heating on the stove. When the mangle fell silent, Amparo went to see why – and found him dead beside it. Nobody had left the building, so the police asked all seven where they had been.","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 objects (the counter, the shelf, the tree, the desk, the carpet-beating rail, the handcart, the laundry baskets, the washtubs, the rinsing trough, the table, the mangle and the stove) cannot be occupied; the benches and the stool can.","Directions refer to rows and columns, not to the same line: <i>“exactly one row north of him was a woman”</i> = the person in the row directly above is a woman, in any column.","The murderer was <b>alone with the victim</b>: nobody else was in that area."],"special":[]},"roleNames":{"worker":"laundry worker","customer":"customer","victim":"victim"},"personGroups":[{"id":"workers","name":"Laundry workers","persons":["A","B","C","D"]},{"id":"customers","name":"Customers","persons":["E","F","G"]},{"id":"owner","name":"The owner","persons":["V"]}],"map":{"groups":[],"gaps":[],"areas":[{"id":"Entrance","cells":[[1,1],[1,2],[2,1],[2,2],[3,1]],"fill":"#ece7dd","pattern":"tiles","labelAt":[2,1],"name":"Entrance"},{"id":"Office","cells":[[1,3],[1,4],[2,3],[2,4]],"fill":"#e2d6c4","pattern":"planks","labelAt":[1,3],"name":"Office"},{"id":"Washing Hall","cells":[[3,2],[3,3],[3,4],[3,5],[4,1],[4,2],[4,3],[4,4],[4,5],[4,6],[5,1],[5,2],[5,3],[5,4],[5,5],[5,6],[6,4],[6,5],[7,5],[7,6]],"fill":"#dfe6ea","pattern":"tiles","labelAt":[4,4],"name":"Washing Hall"},{"id":"Ironing Room","cells":[[6,1],[6,2],[6,3],[7,1],[7,2],[7,3],[7,4],[8,1],[8,2],[8,3],[8,4],[8,5]],"fill":"#efe2cb","pattern":"boards","labelAt":[7,3],"name":"Ironing Room"},{"id":"Drying Yard","cells":[[1,5],[1,6],[1,7],[1,8],[2,5],[2,6],[2,7],[2,8],[3,6],[3,7],[3,8],[4,7],[4,8],[5,7],[5,8],[6,6],[6,7],[6,8],[7,7],[7,8],[8,6],[8,7],[8,8]],"fill":"#dce8d0","pattern":"marble","labelAt":[5,7],"name":"Drying Yard"}],"objectTypes":{"bench":{"occupiable":true,"name":"bench","icon":"<rect x=\"2\" y=\"13\" width=\"42\" height=\"21\" rx=\"3.5\" fill=\"#fbfaf6\" stroke=\"#8c8a82\" stroke-width=\"1.5\"/><rect x=\"2\" y=\"13\" width=\"42\" height=\"7\" rx=\"3\" fill=\"#d9d5cc\" stroke=\"#8c8a82\" stroke-width=\"1.5\"/><line x1=\"16\" y1=\"20\" x2=\"16\" y2=\"34\" stroke=\"#a9a49a\" stroke-width=\"1.3\"/><line x1=\"30\" y1=\"20\" x2=\"30\" y2=\"34\" stroke=\"#a9a49a\" stroke-width=\"1.3\"/>"},"stool":{"occupiable":true,"name":"stool","icon":"<circle cx=\"23\" cy=\"23\" r=\"11\" fill=\"#fbfaf6\" stroke=\"#8c8a82\" stroke-width=\"1.5\"/><circle cx=\"23\" cy=\"23\" r=\"5\" fill=\"#d9d5cc\"/>"},"basket":{"occupiable":false,"name":"laundry basket","icon":"<path d=\"M12 18 V6 M34 18 V6 M12 6 H34\" stroke=\"#6b4a2a\" stroke-width=\"2\" fill=\"none\" stroke-linecap=\"round\"/><rect x=\"8\" y=\"18\" width=\"30\" height=\"22\" rx=\"3\" fill=\"#c79a55\" stroke=\"#7a5626\" stroke-width=\"1.5\"/><path d=\"M8 24 h30 M8 30 h30 M8 36 h30\" stroke=\"#9c7434\" stroke-width=\"1.2\"/><path d=\"M14 18 v22 M20 18 v22 M26 18 v22 M32 18 v22\" stroke=\"#9c7434\" stroke-width=\"1\"/><rect x=\"7\" y=\"16.5\" width=\"32\" height=\"4\" rx=\"2\" fill=\"#7a4a22\"/>"},"carpetrack":{"occupiable":false,"name":"carpet-beating rail","icon":"<path d=\"M7 43 V8 M39 43 V8\" stroke=\"#4a4f55\" stroke-width=\"3\" stroke-linecap=\"round\"/><path d=\"M5 10 h36\" stroke=\"#4a4f55\" stroke-width=\"3\" stroke-linecap=\"round\"/><path d=\"M11 10 h24 v20 h-24 z\" fill=\"#b8323c\" stroke=\"#5a1a1a\" stroke-width=\"1.2\"/><path d=\"M14 14 h18 v12 h-18 z\" fill=\"none\" stroke=\"#e8c070\" stroke-width=\"1.2\"/><path d=\"M23 16 l4 4 l-4 4 l-4 -4 z\" fill=\"#e8c070\"/><path d=\"M12 30 v3 M16 30 v3 M20 30 v3 M24 30 v3 M28 30 v3 M32 30 v3\" stroke=\"#e8c070\" stroke-width=\"1\"/>"},"cart":{"occupiable":false,"name":"handcart","icon":"<rect x=\"8\" y=\"12\" width=\"30\" height=\"16\" rx=\"2\" fill=\"#8a5a34\" stroke=\"#3f2d1d\" stroke-width=\"1.3\"/><circle cx=\"15\" cy=\"34\" r=\"5\" fill=\"#2b2b2b\"/><circle cx=\"31\" cy=\"34\" r=\"5\" fill=\"#2b2b2b\"/><path d=\"M38 20 h6\" stroke=\"#3f2d1d\" stroke-width=\"2.5\"/>"},"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\"/>"},"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\"/>"},"mangle":{"occupiable":false,"name":"mangle","icon":"<path d=\"M10 42 l4 -26 M36 42 l-4 -26\" stroke=\"#2f3439\" stroke-width=\"3\" stroke-linecap=\"round\"/><path d=\"M8 42 h30\" stroke=\"#2f3439\" stroke-width=\"2.5\" stroke-linecap=\"round\"/><rect x=\"11\" y=\"15\" width=\"24\" height=\"6\" rx=\"3\" fill=\"#e8dcc0\" stroke=\"#5a4a2a\" stroke-width=\"1.3\"/><rect x=\"11\" y=\"22\" width=\"24\" height=\"6\" rx=\"3\" fill=\"#e8dcc0\" stroke=\"#5a4a2a\" stroke-width=\"1.3\"/><rect x=\"14\" y=\"7\" width=\"18\" height=\"6\" rx=\"1.5\" fill=\"#2f3439\"/><circle cx=\"39\" cy=\"18\" r=\"6\" fill=\"none\" stroke=\"#2f3439\" stroke-width=\"2\"/><path d=\"M39 12 v12 M33 18 h12\" stroke=\"#2f3439\" stroke-width=\"1.4\"/><path d=\"M45 18 v-6\" stroke=\"#7a4a2a\" stroke-width=\"2.5\" stroke-linecap=\"round\"/>"},"shelf":{"occupiable":false,"name":"shelf","icon":"<rect x=\"8\" y=\"5\" width=\"30\" height=\"36\" fill=\"#8f6a44\" stroke=\"#5e4127\" stroke-width=\"1.5\"/><rect x=\"11\" y=\"9\" width=\"24\" height=\"8\" fill=\"#e6cfa8\"/><rect x=\"11\" y=\"20\" width=\"24\" height=\"8\" fill=\"#d4b98f\"/><rect x=\"11\" y=\"31\" width=\"24\" height=\"8\" fill=\"#e6cfa8\"/>"},"stove":{"occupiable":false,"name":"stove","icon":"<rect x=\"9\" y=\"8\" width=\"28\" height=\"30\" rx=\"3\" fill=\"#5a5a5a\" stroke=\"#2b2b2b\" stroke-width=\"1.5\"/><circle cx=\"17\" cy=\"20\" r=\"4\" fill=\"#8a8a8a\"/><circle cx=\"29\" cy=\"20\" r=\"4\" fill=\"#8a8a8a\"/><circle cx=\"23\" cy=\"28\" r=\"4\" fill=\"#8a8a8a\"/><path d=\"M16 8 q2 -6 5 -3 q3 -6 6 0 q3 -4 4 2\" fill=\"none\" stroke=\"#e0362e\" stroke-width=\"2\"/>"},"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\"/>"},"tree":{"occupiable":false,"name":"tree","icon":"<rect x=\"20\" y=\"28\" width=\"6\" height=\"14\" rx=\"1\" fill=\"#6e4a2a\"/><circle cx=\"23\" cy=\"19\" r=\"13\" fill=\"#3f8a4a\" stroke=\"#2c5e33\" stroke-width=\"1.5\"/><circle cx=\"16\" cy=\"23\" r=\"7\" fill=\"#57a35e\"/><circle cx=\"30\" cy=\"14\" r=\"7\" fill=\"#57a35e\"/>"},"trough":{"occupiable":false,"name":"rinsing trough","icon":"<path d=\"M9 34 l-2 8 M37 34 l2 8\" stroke=\"#5a3a1a\" stroke-width=\"3\" stroke-linecap=\"round\"/><path d=\"M4 18 h38 l-4 16 h-30 z\" fill=\"#a8733f\" stroke=\"#5a3a1a\" stroke-width=\"1.4\" stroke-linejoin=\"round\"/><path d=\"M6.5 19.5 h33 l-1 4 h-31 z\" fill=\"#6fb7e0\" stroke=\"#2f6f9a\" stroke-width=\".8\"/><path d=\"M12 23.5 v10.5 M23 23.5 v10.5 M34 23.5 v10.5\" stroke=\"#5a3a1a\" stroke-width=\"1\"/><path d=\"M14 21.4 q2 -1 4 0 M26 21.8 q2 -1 4 0\" fill=\"none\" stroke=\"#e8f4fb\" stroke-width=\"1\" stroke-linecap=\"round\"/>"},"washtub":{"occupiable":false,"name":"washtub","icon":"<ellipse cx=\"23\" cy=\"38\" rx=\"15\" ry=\"4\" fill=\"#5a3a1a\" opacity=\".35\"/><path d=\"M6 17 h34 l-4 20 q-13 4 -26 0 z\" fill=\"#b07a45\" stroke=\"#5a3a1a\" stroke-width=\"1.5\" stroke-linejoin=\"round\"/><path d=\"M7.5 24 h31 M9 31 h28\" stroke=\"#4a4f55\" stroke-width=\"2\"/><ellipse cx=\"23\" cy=\"17\" rx=\"17\" ry=\"4.5\" fill=\"#cfe8f2\" stroke=\"#5a3a1a\" stroke-width=\"1.5\"/><path d=\"M14 16 q3 -2 6 0 M25 17.5 q3 -2 6 0\" fill=\"none\" stroke=\"#ffffff\" stroke-width=\"1.2\" stroke-linecap=\"round\"/><rect x=\"27\" y=\"4\" width=\"10\" height=\"15\" rx=\"1.5\" fill=\"#d9b98a\" stroke=\"#5a3a1a\" stroke-width=\"1.2\" transform=\"rotate(14 32 11)\"/><path d=\"M28.500 7 h7 M28.500 10 h7 M28.500 13 h7\" stroke=\"#8a6a3a\" stroke-width=\"1\" transform=\"rotate(14 32 11)\"/>"}},"wallTypes":{},"objects":[{"cell":[1,1],"type":"counter"},{"cell":[1,2],"type":"bench"},{"cell":[1,4],"type":"shelf"},{"cell":[1,8],"type":"tree"},{"cell":[2,3],"type":"desk"},{"cell":[2,7],"type":"carpetrack"},{"cell":[3,3],"type":"cart"},{"cell":[3,4],"type":"basket"},{"cell":[4,2],"type":"washtub"},{"cell":[4,5],"type":"washtub"},{"cell":[4,7],"type":"trough"},{"cell":[5,4],"type":"bench"},{"cell":[6,2],"type":"basket"},{"cell":[6,3],"type":"table"},{"cell":[6,8],"type":"washtub"},{"cell":[7,2],"type":"mangle"},{"cell":[8,1],"type":"stove"},{"cell":[8,4],"type":"stool"}],"wallFeatures":[],"extras":[],"cellSize":46},"persons":[{"id":"A","name":"Amparo","gender":"F","role":"worker","color":"#c62828","avatar":{"bg":"#6e2c4b","skin":"#f3d3b5","hair":"#1c1a1a","style":"bun","shirt":"#f4efe6","apron":true},"clue":"A <b>laundry basket</b> was somewhere in her <b>column</b>.","job":"ironer","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Amparo\"><rect width=\"80\" height=\"80\" fill=\"#6e2c4b\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#f4efe6\"/><path d=\"M28 80 L30 62 Q40 58 50 62 L52 80 Z\" fill=\"#f4efe6\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#f3d3b5\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#f3d3b5\"/><circle cx=\"40\" cy=\"15\" r=\"7\" fill=\"#1c1a1a\"/><path d=\"M26 32 Q26 16 40 16 Q54 16 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\"/></svg>","solverRole":"worker","constraints":[{"type":"col_has","obj":"basket"}]},{"id":"B","name":"Baltasar","gender":"M","role":"worker","color":"#2e7d32","avatar":{"bg":"#35607a","skin":"#e4b998","hair":"#3a2a1c","style":"short","shirt":"#4a5a7a","mustache":true,"mustacheColor":"#3a2a1c","apron":true},"clue":"<b>Exactly one row north</b> of him was a <b>man</b>.","job":"washerman","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Baltasar\"><rect width=\"80\" height=\"80\" fill=\"#35607a\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#4a5a7a\"/><path d=\"M28 80 L30 62 Q40 58 50 62 L52 80 Z\" fill=\"#f4efe6\"/><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 32 Q26 15 40 15 Q54 15 54 32 Q50 24 40 24 Q30 24 26 32 Z\" fill=\"#3a2a1c\"/><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":"worker","constraints":[{"type":"rel_any","dir":"N","exact":1,"gender":"M"}]},{"id":"C","name":"Consuelo","gender":"F","role":"worker","color":"#1565c0","avatar":{"bg":"#ad1457","skin":"#f0cdb0","hair":"#7a4a2a","style":"ponytail","shirt":"#f4efe6","apron":true,"headband":"#c62828"},"clue":"She was beside the <b>handcart</b>.","job":"washerwoman","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Consuelo\"><rect width=\"80\" height=\"80\" fill=\"#ad1457\"/><path d=\"M50 30 Q64 34 60 62 L54 62 Q56 40 48 36 Z\" fill=\"#7a4a2a\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#f4efe6\"/><path d=\"M28 80 L30 62 Q40 58 50 62 L52 80 Z\" fill=\"#f4efe6\"/><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=\"#7a4a2a\"/><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=\"#c62828\"/></svg>","solverRole":"worker","constraints":[{"type":"beside","obj":"cart"}]},{"id":"D","name":"Domingo","gender":"M","role":"worker","color":"#6a1b9a","avatar":{"bg":"#5d4037","skin":"#e7b98f","hair":"#1c1a1a","style":"short","shirt":"#2f3b4c","cap":true,"beard":true},"clue":"There were <b>exactly two other people</b> in his area. He was in the <b>last column</b>.","job":"delivery man","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Domingo\"><rect width=\"80\" height=\"80\" fill=\"#5d4037\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#2f3b4c\"/><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=\"#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\"/><path d=\"M24 24 Q24 11 40 11 Q56 11 56 24 Z\" fill=\"#22406f\"/><rect x=\"22\" y=\"22\" width=\"36\" height=\"5\" rx=\"2\" fill=\"#12213a\"/><circle cx=\"40\" cy=\"18\" r=\"2.6\" fill=\"#f0b429\"/></svg>","solverRole":"worker","constraints":[{"type":"with_count","n":2},{"type":"col","cols":[8]}]},{"id":"E","name":"Encarna","gender":"F","role":"customer","color":"#e65100","avatar":{"bg":"#3d2a5a","skin":"#f6d8c0","hair":"#8a8278","style":"bob","shirt":"#5b2c6f","glasses":true,"necklace":true},"clue":"She was sitting on a <b>bench</b>. She was <b>alone with a laundry worker</b>.","job":"hotel housekeeper","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Encarna\"><rect width=\"80\" height=\"80\" fill=\"#3d2a5a\"/><path d=\"M22 40 Q22 14 40 14 Q58 14 58 40 L58 58 L22 58 Z\" fill=\"#8a8278\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#5b2c6f\"/><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=\"#8a8278\"/><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":"customer","constraints":[{"type":"on","obj":"bench"},{"type":"with_role","role":"worker","exact":true}]},{"id":"F","name":"Fermín","gender":"M","role":"customer","color":"#00838f","avatar":{"bg":"#1b2a33","skin":"#f1c8a5","hair":"#1c1a1a","style":"slick","shirt":"#1b1b1b","bow":true,"mustache":true,"mustacheColor":"#1c1a1a"},"clue":"A <b>washtub</b> was somewhere in his <b>column</b>.","job":"a waiter collecting his uniforms","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Fermín\"><rect width=\"80\" height=\"80\" fill=\"#1b2a33\"/><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=\"#f1c8a5\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#f1c8a5\"/><path d=\"M26 30 Q27 16 44 15 Q56 15 55 26 Q48 22 40 23 Q30 24 26 30 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=\"M33 41 Q40 37 47 41 Q40 43 33 41 Z\" fill=\"#1c1a1a\"/></svg>","solverRole":"customer","constraints":[{"type":"col_has","obj":"washtub"}]},{"id":"G","name":"Graciela","gender":"F","role":"customer","color":"#ad1457","avatar":{"bg":"#00695c","skin":"#f6d8c0","hair":"#d9b464","style":"long","shirt":"#f4efe6","necklace":true,"earrings":true},"clue":"She was beside a <b>washtub</b>.","job":"a bride with her wedding dress","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Graciela\"><rect width=\"80\" height=\"80\" fill=\"#00695c\"/><path d=\"M22 42 Q20 14 40 14 Q60 14 58 42 L62 72 L18 72 Z\" fill=\"#d9b464\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#f4efe6\"/><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=\"#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":"customer","constraints":[{"type":"beside","obj":"washtub"}]},{"id":"V","name":"Ventura","gender":"M","role":"victim","color":"#1b1b1b","avatar":{"bg":"#5a2a2a","skin":"#e4b998","hair":"#d9d4cc","style":"bald","shirt":"#8b7a5a","mustache":true,"mustacheColor":"#d9d4cc","apron":true},"clue":"<b>The victim.</b> He was found in the <b>Ironing Room</b>, beside the <b>mangle</b> – alone with the murderer.","job":"owner of the laundry","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Ventura\"><rect width=\"80\" height=\"80\" fill=\"#5a2a2a\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#8b7a5a\"/><path d=\"M28 80 L30 62 Q40 58 50 62 L52 80 Z\" fill=\"#f4efe6\"/><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 Q26 22 30 20 L30 34 Q26 34 26 30 Z\" fill=\"#d9d4cc\"/><path d=\"M54 30 Q54 22 50 20 L50 34 Q54 34 54 30 Z\" fill=\"#d9d4cc\"/><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=\"#d9d4cc\"/><path d=\"M12 12 L68 68 M68 12 L12 68\" stroke=\"#e0362e\" stroke-width=\"5\" stroke-linecap=\"round\" opacity=\".9\"/></svg>","solverRole":"owner","constraints":[{"type":"area","areas":["Ironing Room"]},{"type":"beside","obj":"mangle"}]}],"victim":"V","murderer":"F","solution":{"A":[1,2],"D":[2,8],"B":[3,6],"C":[4,3],"E":[5,4],"G":[6,7],"V":[7,1],"F":[8,5]},"walkthrough":[{"place":["C","V"],"cand":{"A":[[1,2],[2,2],[2,4],[3,2],[5,2],[5,4],[6,4],[8,2],[8,4]],"B":[[2,5],[2,6],[3,5],[3,6],[3,7],[5,5],[5,6],[5,7],[6,5],[6,6],[6,7],[8,5],[8,6],[8,7]],"D":[[2,8],[3,8],[5,8],[8,8]],"E":[[1,2],[5,4]],"F":[[1,5],[2,5],[3,5],[5,5],[6,5],[8,5]],"G":[[3,5],[5,5],[6,7]]},"text":"Ventura was found in the Ironing Room beside the mangle (R7C2): R7C1, R7C3 or R8C2 (R6C2 is a laundry basket) – and the murderer was alone with him, so the Ironing Room holds exactly two people. Consuelo was beside the handcart (R3C3): R3C2 or R4C3 (R3C4 is a laundry basket, and the desk at R2C3 is in the Office). Amparo had a laundry basket (R3C4 or R6C2) somewhere in her column, so she is in column 2 or 4; Encarna was sitting on a bench, R1C2 or R5C4 – column 2 or 4 as well. Two people confined to the same two columns fill them between them: nobody else is in column 2 or 4. So Consuelo is not at R3C2: <b>Consuelo is at R4C3</b>, in the Washing Hall. Ventura’s R8C2 lies in column 2 and R7C3 in Consuelo’s column: <b>Ventura is at R7C1.</b> Two facts for later: Domingo was in the last column, and every free square of column 8 lies in the Drying Yard – so Domingo is in the Yard, the Yard holds exactly three people (him and two others) and nobody else is in column 8; and Baltasar had a man one row north of him, so he is not in row 1."},{"place":["E","G"],"cand":{"A":[[1,2],[2,2],[8,2]],"B":[[2,5],[2,6],[3,6],[8,5],[8,6]],"D":[[2,8],[3,8],[8,8]],"F":[[1,5],[2,5],[8,5]]},"text":"Encarna was alone with one laundry worker: her area holds exactly two people, she and a worker. On the bench at R1C2 in the Entrance she would have nobody with her at all – R2C2 is in her own column, R2C1 and R3C1 are in Ventura’s column, and R1C1 is the counter. So <b>Encarna is at R5C4</b>, on the bench in the Washing Hall, and the worker with her is Consuelo. The Washing Hall is therefore full: nobody else is in it. Column 4 is Encarna’s, so Amparo is in column 2 – R1C2, R2C2 or R8C2 (R3C2 lies in the full Washing Hall). Graciela was beside a washtub. Every square beside the washtubs R4C2 and R4C5 lies in the Washing Hall; beside the washtub R6C8 there are R5C8 (Encarna’s row), R7C8 (Ventura’s row) and R6C7: <b>Graciela is at R6C7</b>, in the Drying Yard."},{"place":["F","A"],"cand":{"B":[[2,6],[3,6]],"D":[[2,8],[3,8]]},"text":"Now a head count of the Drying Yard. Domingo said exactly two other people were in his area, so the Yard holds exactly three people – Domingo, Graciela and one more. Who can the third be? Four people are left, Amparo, Baltasar, Domingo and Fermín, for the four free columns 2, 5, 6 and 8. Amparo is in column 2 and Domingo in column 8; Fermín had a washtub somewhere in his column – column 2, 5 or 8 – so he is in column 5, and column 6 is left for Baltasar. Outside the taken rows 4–7, column 6 has R1C6, R2C6, R3C6 and R8C6 left – all in the Drying Yard: Baltasar is the third person of the Yard, and the Yard is full. Fermín’s squares in column 5: R1C5 and R2C5 lie in the full Yard, R3C5 in the full Washing Hall, rows 5–7 are taken – <b>Fermín is at R8C5</b>, in the Ironing Room. He is the one who was alone with Ventura: Fermín is the murderer. Rows 1, 2 and 3 remain for Amparo, Baltasar and Domingo; Baltasar is not in row 1, and Domingo’s column has the tree at R1C8 – so Amparo is in row 1: <b>Amparo is at R1C2</b>, on the bench in the Entrance."},{"place":["B","D"],"cand":{},"text":"Baltasar is in column 6, in row 2 or 3 (R2C6 or R3C6), Domingo in column 8, in row 2 or 3 (R2C8 or R3C8). Baltasar had a man exactly one row north of him: at R2C6 the person one row north would be Amparo – a woman. So <b>Baltasar is at R3C6</b>, and Domingo takes row 2: <b>Domingo is at R2C8</b> – indeed a man one row north of Baltasar. The Drying Yard holds Domingo, Baltasar and Graciela: exactly two other people with Domingo, as he said. Everyone is placed."},{"final":true,"text":"Case closed: Ventura was alone in the Ironing Room with the waiter who had come for his uniforms. <b>Fermín is the murderer!</b>"}],"solver":{"rules":[],"occupiable":["bench","stool"]},"verification":{"tool":"tools/murdoku_solver.py","unique":true,"guessFree":true,"checked":"2026-10-06"},"score":8.1332}