{"format":"murdoku-puzzle/1","id":"amber-workshop","version":1,"difficulty":"medium","level":5,"size":{"rows":9,"cols":9},"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":"호박 공방","tagline":"그단스크의 호박 공방 · 박람회 전날 밤 · 자외선 램프는 아직 켜져 있었고 마스터 커터는 사라졌다","author":"mathace","concept":"Murdoku – Manuel Garand (murdoku.com); unofficial fan-made case","created":"2026-10-17","story":"그단스크 마리아츠카 거리의 호박 공방들은 여섯 시에 문을 닫지만, 박람회 전날 밤 Violetta의 집에는 불이 켜져 있었다. 두 시 반에도 연마 휠은 곁에 아무도 없는 채로 돌고 있었고 – 절단 장인 Violetta는 사라졌다. 집에는 아홉 명이 있었다. Violetta는 죽은 채 발견되었다. 박람회는 그녀 없이 열렸다.","rules":{"standard":["모든 <b>행</b>과 모든 <b>열</b>에는 정확히 <b>한 사람</b>이 있다. 누군가를 배치하는 즉시 그 사람의 행과 열 전체를 지워라.","<b>“옆”</b> = 바로 왼쪽, 오른쪽, 위, 아래이며 <b>같은 구역 안</b>이어야 한다. 물건(카운터, 선반, 캐비닛, 책상, 금고, 상자, 저울, 드릴, 테이블, 싱크대, 화덕, 램프, 나무, 우물)이 있는 칸에는 있을 수 없다; 의자, 푸프, 소파, 스툴, 벤치에는 있을 수 있다.","방향은 행과 열을 가리키며 같은 직선일 필요는 없다: <i>“그의 정확히 한 행 북쪽에 여자가 있었다”</i> = 바로 위의 행에 있는 사람이 여자였다, 열은 무관; <i>“자신의 구역에서 가장 북쪽에 있는 사람”</i> = 그녀의 구역에서 다른 누구도 그보다 위쪽 행에 있지 않았다.","범인은 <b>피해자와 단둘이</b> 있었다: 그 구역에는 다른 누구도 없었다. 피해자는 진술하지 않았다 – 그녀의 칸도 나머지 진술에서 도출된다."],"special":[],"notes":["<i>“드릴 옆에 있던 유일한 남자였다”</i> = 그 사람 외에는 드릴 옆에 있던 남자가 없었다."],"example":{}},"roleNames":{"craftsman":"장인","staff":"매장 직원","other":"외부인","victim":"피해자"},"personGroups":[{"id":"craftsmen","name":"장인들","persons":["A","B","C","V"]},{"id":"staff","name":"매장 직원들","persons":["D","E","F"]},{"id":"others","name":"외부인들","persons":["G","H"]}],"map":{"groups":[],"gaps":[],"areas":[{"id":"Shop","cells":[[1,1],[1,2],[1,3],[1,4],[2,1],[2,2],[2,3]],"fill":"#dfe9ee","pattern":"tiles","labelAt":[1,1.5],"name":"매장"},{"id":"Gallery","cells":[[1,5],[1,6],[1,7],[1,8],[1,9],[2,4],[2,5],[2,6],[2,7],[2,8],[2,9],[3,4],[3,5],[3,6]],"fill":"#e6dcc8","pattern":"boards","labelAt":[1,5.5],"name":"갤러리"},{"id":"Office","cells":[[3,1],[3,2],[4,1],[4,2]],"fill":"#efd9c9","pattern":"marble","labelAt":[3,1.5],"name":"사무실"},{"id":"Strongroom","cells":[[3,7],[3,8],[3,9],[4,7],[4,8],[4,9]],"fill":"#f2e6c8","pattern":"planks","labelAt":[3,7.5],"name":"금고실"},{"id":"Workshop","cells":[[3,3],[4,3],[4,4],[4,5],[4,6],[5,1],[5,2],[5,3],[5,4],[5,5],[5,6],[6,1],[6,2],[6,3],[6,4]],"fill":"#d5e6d8","pattern":"tiles","labelAt":[3,3],"name":"작업장"},{"id":"Kitchen","cells":[[5,7],[5,8],[5,9],[6,7],[6,8],[6,9]],"fill":"#d9d6e0","pattern":"tiles","labelAt":[5,7.5],"name":"부엌"},{"id":"Polishing Room","cells":[[6,5],[6,6],[7,3],[7,4],[7,5],[7,6],[8,4],[8,5]],"fill":"#e4ddd0","pattern":"boards","labelAt":[6,5.5],"name":"연마실"},{"id":"Storeroom","cells":[[7,1],[7,2],[8,1],[8,2],[8,3],[9,1],[9,2],[9,3]],"fill":"#e8e4d8","pattern":"planks","labelAt":[7,1.5],"name":"창고"},{"id":"Courtyard","cells":[[7,7],[7,8],[7,9],[8,6],[8,7],[8,8],[8,9],[9,4],[9,5],[9,6],[9,7],[9,8],[9,9]],"fill":"#e2e8d0","pattern":"marble","labelAt":[7,7.5],"name":"안뜰"}],"objectTypes":{"counter":{"occupiable":false,"name":"카운터","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\"/>"},"chair":{"occupiable":true,"name":"의자","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\"/>"},"shelf":{"occupiable":false,"name":"선반","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\"/>"},"cabinet":{"occupiable":false,"name":"캐비닛","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\"/>"},"pouf":{"occupiable":true,"name":"푸프","icon":"<circle cx=\"23\" cy=\"23\" r=\"16\" fill=\"#c8843a\" stroke=\"#6b3f14\" stroke-width=\"1.5\"/><path d=\"M23 7 v32 M7 23 h32 M11.7 11.7 l22.6 22.6 M34.3 11.7 l-22.6 22.6\" stroke=\"#9a5a22\" stroke-width=\"1\"/><circle cx=\"23\" cy=\"23\" r=\"9.5\" fill=\"#d99a52\" stroke=\"#f2d49a\" stroke-width=\"1.4\" stroke-dasharray=\"2.2 1.8\"/><circle cx=\"23\" cy=\"23\" r=\"2.6\" fill=\"#6b3f14\"/>"},"sofa":{"occupiable":true,"name":"소파","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\"/>"},"desk":{"occupiable":false,"name":"책상","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\"/>"},"safe":{"occupiable":false,"name":"금고","icon":"<rect x=\"9\" y=\"6\" width=\"28\" height=\"34\" rx=\"3\" fill=\"#3d444b\" stroke=\"#161c25\" stroke-width=\"1.5\"/><circle cx=\"23\" cy=\"23\" r=\"7\" fill=\"none\" stroke=\"#9aa1a8\" stroke-width=\"2.5\"/><circle cx=\"23\" cy=\"23\" r=\"2\" fill=\"#9aa1a8\"/><rect x=\"31\" y=\"14\" width=\"3\" height=\"18\" fill=\"#9aa1a8\"/>"},"stool":{"occupiable":true,"name":"스툴","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\"/>"},"crate":{"occupiable":false,"name":"상자","icon":"<rect x=\"6\" y=\"10\" width=\"34\" height=\"30\" fill=\"#b98a5a\" stroke=\"#6e4d2c\" stroke-width=\"1.5\"/><line x1=\"6\" y1=\"20\" x2=\"40\" y2=\"20\" stroke=\"#6e4d2c\" stroke-width=\"1.5\"/><line x1=\"6\" y1=\"30\" x2=\"40\" y2=\"30\" stroke=\"#6e4d2c\" stroke-width=\"1.5\"/><line x1=\"17\" y1=\"10\" x2=\"17\" y2=\"40\" stroke=\"#6e4d2c\" stroke-width=\"1.5\"/><line x1=\"29\" y1=\"10\" x2=\"29\" y2=\"40\" stroke=\"#6e4d2c\" stroke-width=\"1.5\"/>"},"scales":{"occupiable":false,"name":"저울","icon":"<rect x=\"8\" y=\"30\" width=\"30\" height=\"8\" rx=\"2\" fill=\"#5a6068\"/><rect x=\"21\" y=\"12\" width=\"4\" height=\"18\" fill=\"#5a6068\"/><path d=\"M8 14 h30\" stroke=\"#5a6068\" stroke-width=\"3\"/><path d=\"M10 14 l-3 9 h10 l-3 -9\" fill=\"#b9c3cc\" stroke=\"#5a6068\"/><path d=\"M36 14 l-3 9 h10 l-3 -9\" fill=\"#b9c3cc\" stroke=\"#5a6068\"/>"},"drill":{"occupiable":false,"name":"드릴","icon":"<ellipse cx=\"23\" cy=\"40\" rx=\"9\" ry=\"2.6\" fill=\"#bfe3f5\" stroke=\"#2f6f9a\" stroke-width=\"1\"/><path d=\"M23 6 L9 40 M23 6 L37 40\" stroke=\"#6b7278\" stroke-width=\"2\" stroke-linecap=\"round\"/><path d=\"M23 11 V39\" stroke=\"#3b3f44\" stroke-width=\"2.4\"/><path d=\"M19 17 l8 3 M19 22 l8 3 M19 27 l8 3 M19 32 l8 3\" stroke=\"#9aa0a6\" stroke-width=\"1.6\" stroke-linecap=\"round\"/><rect x=\"18\" y=\"4\" width=\"10\" height=\"7\" rx=\"1.5\" fill=\"#d7263d\" stroke=\"#5a1510\" stroke-width=\"1.2\"/><rect x=\"37\" y=\"28\" width=\"4\" height=\"14\" rx=\"2\" fill=\"#dff1fa\" stroke=\"#2f6f9a\" stroke-width=\"1\"/><path d=\"M37 32.500 h4 M37 37 h4\" stroke=\"#2f6f9a\" stroke-width=\".7\"/>"},"table":{"occupiable":false,"name":"테이블","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\"/>","iconTall":"<rect x=\"7\" y=\"7\" width=\"32\" height=\"78\" rx=\"5\" fill=\"#b98a5a\" stroke=\"#6e4d2c\" stroke-width=\"1.5\"/><rect x=\"12\" y=\"12\" width=\"22\" height=\"68\" rx=\"3\" fill=\"#d1a675\"/>"},"bench":{"occupiable":true,"name":"벤치","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\"/>"},"sink":{"occupiable":false,"name":"싱크대","icon":"<rect x=\"7\" y=\"9\" width=\"32\" height=\"28\" rx=\"4\" fill=\"#dfe6ea\" stroke=\"#6b7680\" stroke-width=\"1.5\"/><ellipse cx=\"23\" cy=\"24\" rx=\"11\" ry=\"7\" fill=\"#ffffff\" stroke=\"#8a949c\"/><circle cx=\"23\" cy=\"24\" r=\"2\" fill=\"#8a949c\"/><rect x=\"21\" y=\"10\" width=\"4\" height=\"6\" fill=\"#8a949c\"/>"},"stove":{"occupiable":false,"name":"화덕","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\"/>"},"lamp":{"occupiable":false,"name":"램프","icon":"<circle cx=\"23\" cy=\"12\" r=\"9\" fill=\"#f7e9a8\" opacity=\".5\"/><rect x=\"21\" y=\"16\" width=\"4\" height=\"24\" fill=\"#2f3b4a\"/><rect x=\"14\" y=\"39\" width=\"18\" height=\"4\" rx=\"1.5\" fill=\"#2f3b4a\"/><circle cx=\"23\" cy=\"12\" r=\"5\" fill=\"#f2c94c\" stroke=\"#2f3b4a\" stroke-width=\"1.4\"/>"},"tree":{"occupiable":false,"name":"나무","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\"/>"},"well":{"occupiable":false,"name":"우물","icon":"<rect x=\"10\" y=\"22\" width=\"26\" height=\"16\" rx=\"2\" fill=\"#8a949c\" stroke=\"#3d444b\" stroke-width=\"1.5\"/><path d=\"M12 24 h22 M12 30 h22 M23 22 v16\" stroke=\"#3d444b\" stroke-width=\"1\"/><rect x=\"13\" y=\"5\" width=\"20\" height=\"4\" rx=\"1\" fill=\"#6e4a2a\"/><rect x=\"14\" y=\"9\" width=\"3\" height=\"13\" fill=\"#6e4a2a\"/><rect x=\"29\" y=\"9\" width=\"3\" height=\"13\" fill=\"#6e4a2a\"/><circle cx=\"23\" cy=\"14\" r=\"3\" fill=\"none\" stroke=\"#3d444b\" stroke-width=\"1.5\"/><rect x=\"21\" y=\"16\" width=\"4\" height=\"7\" fill=\"#7fc4d8\"/>"}},"wallTypes":{},"objects":[{"cell":[1,2],"type":"counter"},{"cell":[1,4],"type":"chair"},{"cell":[1,6],"type":"cabinet"},{"cell":[2,1],"type":"shelf"},{"cell":[2,3],"type":"cabinet"},{"cell":[2,5],"type":"pouf"},{"cell":[2,8],"type":"sofa"},{"cell":[3,1],"type":"desk"},{"cell":[3,3],"type":"scales"},{"cell":[3,9],"type":"safe"},{"cell":[4,2],"type":"chair"},{"cell":[4,4],"type":"drill"},{"cell":[4,5],"type":"stool"},{"cell":[4,7],"type":"cabinet"},{"cell":[4,8],"type":"stool"},{"cell":[4,9],"type":"crate"},{"cell":[5,3],"type":"table"},{"cell":[5,5],"type":"stool"},{"cell":[5,9],"type":"stove"},{"cell":[6,1],"type":"bench"},{"cell":[6,4],"type":"sink"},{"cell":[6,6],"type":"lamp"},{"cell":[6,7],"type":"chair"},{"cell":[6,8],"type":"table"},{"cell":[7,1],"type":"shelf"},{"cell":[7,4],"type":"table"},{"cell":[7,6],"type":"stool"},{"cell":[7,8],"type":"bench"},{"cell":[8,1],"type":"crate"},{"cell":[8,3],"type":"stool"},{"cell":[8,8],"type":"tree"},{"cell":[9,6],"type":"well"},{"cell":[9,9],"type":"bench"}],"wallFeatures":[],"extras":[],"cellSize":46},"persons":[{"id":"A","name":"Agnieszka","gender":"F","role":"craftsman","color":"#c62828","avatar":{"bg":"#5b2c6f","skin":"#f0cdb0","hair":"#2a1c14","style":"ponytail","headband":"#ffffff","shirt":"#c62828"},"clue":"그녀는 <b>연마실</b>에 있었다.","job":"호박 연마사","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Agnieszka\"><rect width=\"80\" height=\"80\" fill=\"#5b2c6f\"/><path d=\"M50 30 Q64 34 60 62 L54 62 Q56 40 48 36 Z\" fill=\"#2a1c14\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#c62828\"/><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=\"#2a1c14\"/><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=\"#ffffff\"/></svg>","solverRole":"craftsman","constraints":[{"type":"area","areas":["Polishing Room"]}]},{"id":"B","name":"Bartosz","gender":"M","role":"craftsman","color":"#1565c0","avatar":{"bg":"#2f4858","skin":"#c98d62","hair":"#1c1a1a","style":"short","beard":true,"shirt":"#1565c0"},"clue":"그의 <b>정확히 한 행 북쪽</b>에 <b>외부인</b>이 있었다. 그는 <b>드릴</b> 옆에 있던 <b>유일한 남자</b>였다.","job":"은세공사, 세팅","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Bartosz\"><rect width=\"80\" height=\"80\" fill=\"#2f4858\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#1565c0\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#c98d62\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#c98d62\"/><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":"craftsman","constraints":[{"type":"rel_any","dir":"N","exact":1,"role":"other"},{"type":"only_beside","obj":"drill","gender":"M"}]},{"id":"C","name":"Czesław","gender":"M","role":"craftsman","color":"#2e7d32","avatar":{"bg":"#1b2a33","skin":"#f1c8a5","hair":"#5a5a5a","style":"slick","mustache":true,"mustacheColor":"#5a5a5a","shirt":"#2e7d32"},"clue":"그는 <b>상자</b> 옆에 있었다.","job":"견습 커터","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Czesław\"><rect width=\"80\" height=\"80\" fill=\"#1b2a33\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#2e7d32\"/><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=\"#5a5a5a\"/><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=\"#5a5a5a\"/></svg>","solverRole":"craftsman","constraints":[{"type":"beside","obj":"crate"}]},{"id":"D","name":"Dorota","gender":"F","role":"staff","color":"#6a1b9a","avatar":{"bg":"#6e2c4b","skin":"#e7b98f","hair":"#1c1a1a","style":"bun","earrings":true,"shirt":"#6a1b9a"},"clue":"그녀는 <b>카운터</b> 옆에 있는 <b>유일한 여자</b>였다.","job":"매장 점원","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Dorota\"><rect width=\"80\" height=\"80\" fill=\"#6e2c4b\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#6a1b9a\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#e7b98f\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#e7b98f\"/><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\"/><circle cx=\"26\" cy=\"41\" r=\"1.8\" fill=\"#f0c95a\"/><circle cx=\"54\" cy=\"41\" r=\"1.8\" fill=\"#f0c95a\"/></svg>","solverRole":"staff","constraints":[{"type":"only_beside","obj":"counter","gender":"F"}]},{"id":"E","name":"Eryk","gender":"M","role":"staff","color":"#e65100","avatar":{"bg":"#3d5a6e","skin":"#e9bf9b","hair":"#2a1c14","style":"short","cap":true,"beard":true,"shirt":"#e65100"},"clue":"그는 <b>푸프</b> 옆에 있었다. 그의 <b>행</b> 어딘가에 <b>의자</b>가 있었다.","job":"경리","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Eryk\"><rect width=\"80\" height=\"80\" fill=\"#3d5a6e\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#e65100\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#e9bf9b\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#e9bf9b\"/><path d=\"M26 32 Q26 15 40 15 Q54 15 54 32 Q50 24 40 24 Q30 24 26 32 Z\" fill=\"#2a1c14\"/><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=\"#2a1c14\"/><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":"staff","constraints":[{"type":"beside","obj":"pouf"},{"type":"row_has","obj":"chair"}]},{"id":"F","name":"Franciszka","gender":"F","role":"staff","color":"#00838f","avatar":{"bg":"#35607a","skin":"#f3d3b5","hair":"#d9b464","style":"long","necklace":true,"shirt":"#00838f"},"clue":"그녀는 <b>자신의 구역에서 가장 북쪽에 있는 사람</b>이었다. 그녀의 구역 어딘가에 <b>의자</b>가 있었다.","job":"가정부","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Franciszka\"><rect width=\"80\" height=\"80\" fill=\"#35607a\"/><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=\"#00838f\"/><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=\"#f3d3b5\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#f3d3b5\"/><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\"/></svg>","solverRole":"staff","constraints":[{"type":"extreme_in_area","dir":"N"},{"type":"area_has","obj":"chair"}]},{"id":"G","name":"Grzegorz","gender":"M","role":"other","color":"#5d4037","avatar":{"bg":"#5a2a2a","skin":"#efc7a3","hair":"#8a8278","style":"bald","glasses":true,"mustache":true,"mustacheColor":"#8a8278","shirt":"#5d4037"},"clue":"그는 <b>캐비닛</b> 옆에 있었다. 그의 구역에는 <b>다른 사람이 최소 한 명</b> 있었다.","job":"해안의 원석 호박 상인","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Grzegorz\"><rect width=\"80\" height=\"80\" fill=\"#5a2a2a\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#5d4037\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#efc7a3\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#efc7a3\"/><path d=\"M26 30 Q26 22 30 20 L30 34 Q26 34 26 30 Z\" fill=\"#8a8278\"/><path d=\"M54 30 Q54 22 50 20 L50 34 Q54 34 54 30 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\"/><path d=\"M33 41 Q40 37 47 41 Q40 43 33 41 Z\" fill=\"#8a8278\"/></svg>","solverRole":"other","constraints":[{"type":"beside","obj":"cabinet"},{"type":"with_count_min","n":1}]},{"id":"H","name":"Hanna","gender":"F","role":"other","color":"#ad1457","avatar":{"bg":"#7a6a3c","skin":"#f6d8c0","hair":"#8a5a3a","style":"bob","glasses":true,"shirt":"#ad1457"},"clue":"그녀의 <b>열</b> 어딘가에 <b>램프</b>가 있었다.","job":"박람회 주최자","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Hanna\"><rect width=\"80\" height=\"80\" fill=\"#7a6a3c\"/><path d=\"M22 40 Q22 14 40 14 Q58 14 58 40 L58 58 L22 58 Z\" fill=\"#8a5a3a\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#ad1457\"/><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=\"#8a5a3a\"/><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":"other","constraints":[{"type":"col_has","obj":"lamp"}]},{"id":"V","name":"Violetta","gender":"F","role":"victim","color":"#1b1b1b","avatar":{"bg":"#4a5a3a","skin":"#f1c8a5","hair":"#b7482c","style":"ponytail","earrings":true,"shirt":"#1b1b1b"},"clue":"<b>피해자.</b> 그녀는 범인과 단둘이 있었다.","job":"마스터 커터","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Violetta\"><rect width=\"80\" height=\"80\" fill=\"#4a5a3a\"/><path d=\"M50 30 Q64 34 60 62 L54 62 Q56 40 48 36 Z\" fill=\"#b7482c\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#1b1b1b\"/><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 33 Q26 16 40 16 Q54 16 54 33 Q50 24 40 24 Q30 24 26 33 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\"/><path d=\"M12 12 L68 68 M68 12 L12 68\" stroke=\"#e0362e\" stroke-width=\"5\" stroke-linecap=\"round\" opacity=\".9\"/></svg>","solverRole":"craftsman","constraints":[]}],"victim":"V","murderer":"G","solution":{"E":[1,5],"D":[2,2],"V":[3,7],"G":[4,8],"B":[5,4],"F":[6,9],"A":[7,3],"H":[8,6],"C":[9,1]},"walkthrough":[{"place":["E","D"],"cand":{"A":[[7,3],[8,4]],"B":[[4,3],[5,4]],"C":[[4,8],[9,1]],"F":[[4,1],[5,7],[5,8],[6,7],[6,9]],"G":[[3,7],[4,8]],"H":[[3,6],[4,6],[5,6],[7,6],[8,6]],"V":[[3,4],[3,7],[3,8],[4,1],[4,3],[4,8],[5,1],[5,4],[5,7],[5,8],[6,1],[6,3],[6,7],[6,9],[7,3],[7,7],[7,8],[7,9],[8,3],[8,4],[8,7],[8,9],[9,1],[9,3],[9,4],[9,7],[9,8],[9,9]]},"text":"Eryk was beside the pouf (R2C5) and had a chair somewhere in his row. The squares beside the pouf are R1C5, R2C4, R2C6 and R3C5, and only row 1 has a chair (R1C4): <b>Eryk is at R1C5.</b> Row 1 and column 5 are his. Dorota was the only woman beside the counter (R1C2), so she is at R1C1, R1C3 or R2C2; the first two are in Eryk's row: <b>Dorota is at R2C2.</b> Hanna had the lamp (R6C6) in her column, and all her squares – R3C6, R4C6, R5C6, R7C6 and R8C6 (R2C6 is in Dorota's row) – lie in column 6, so the column is hers and nobody else can stand in it: Agnieszka loses R7C6, and Violetta loses every square of the column."},{"place":[],"cand":{"A":[[7,3],[8,4]],"B":[[4,3],[5,4]],"C":[[4,8],[9,1]],"F":[[5,7],[5,8],[6,7],[6,9]],"G":[[3,7],[4,8]],"H":[[3,6],[4,6],[5,6],[7,6],[8,6]],"V":[[3,7],[3,8],[4,8],[5,1],[5,7],[5,8],[6,1],[6,7],[6,9],[7,7],[7,8],[7,9],[8,7],[8,9],[9,1],[9,7],[9,9]]},"text":"Agnieszka was in the Polishing Room, and Eryk's column 5 and Hanna's column 6 leave her only R7C3 and R8C4. Bartosz was the only man beside the drill (R4C4): of R4C3, R4C5 and R5C4, R4C5 is in column 5, so he is at R4C3 or R5C4. Both are confined to columns 3 and 4, and two people fill two columns: those columns are theirs, nobody else can stand in them, and R1C3, R6C3, R8C3, R9C3, R1C4, R2C4, R3C4 and R9C4 are empty. Czesław was beside a crate: the crate at R4C9 leaves R4C8, the crate at R8C1 leaves R8C2 and R9C1, and R8C2 is in Dorota's column – so he is at R4C8 or R9C1. These two squares are opposite corners of a rectangle, and the other two corners share a row or a column with them (R4C1 with R4C8 and R9C1, R9C8 with R9C1 and R4C8): wherever Czesław stands, R4C1 and R9C8 lie in his row or his column, so nobody can be there. Franciszka loses R4C1 with them."},{"place":[],"cand":{"A":[[7,3],[8,4]],"B":[[5,4]],"C":[[4,8],[9,1]],"F":[[5,7],[5,8],[6,7],[6,9]],"G":[[3,7],[4,8]],"H":[[5,6],[7,6],[8,6]],"V":[[3,7],[3,8],[4,8],[6,7],[6,9],[7,7],[7,8],[7,9],[8,7],[8,9],[9,1]]},"text":"Franciszka had a chair in her area, and the Shop (R1C4) and the Office (R4C2) are out for her – row 1 is Eryk's, R2C2 is Dorota's, R3C2 and R4C2 are in Dorota's column and R4C1 was just emptied – so she is in the Kitchen (R6C7), at R5C7, R5C8, R6C7 or R6C9. She was the northernmost person there, so anybody else in the Kitchen stands in a row south of hers, and she may be in row 5: nobody else can take R5C7 or R5C8, and Violetta loses them. Row 9 and column 1 both need somebody, and apart from R9C1 only Violetta could be in either (R9C7, R9C9, R5C1, R6C1) – yet she can fill just one of the two lines. So someone is at R9C1, and R9C7, R9C9, R5C1 and R6C1 are empty. Rows 3 and 4 need two people. Grzegorz was beside a cabinet (R1C6, R2C3, R4C7), and rows 1 and 2 are taken: he is at R3C7 or R4C8, in the Strongroom, and somebody else was in his area – only Czesław (at R4C8) or Violetta (at R3C7, R3C8 or R4C8) can be – so his companion is in the Strongroom too, again in row 3 or 4. Two people, two rows: the rows are full and nobody else can be in them. R3C6, R4C3 and R4C6 are empty: Bartosz loses R4C3, Hanna loses R3C6 and R4C6."},{"place":["B","A","H"],"cand":{"C":[[4,8],[9,1]],"F":[[6,7],[6,9]],"G":[[3,7],[4,8]],"V":[[3,7],[3,8],[4,8],[6,7],[6,9],[9,1]]},"text":"R4C3 fell with row 4 and R4C5 is in Eryk's column, so Bartosz has one square left: <b>Bartosz is at R5C4.</b> That is column 4, so Agnieszka's R8C4 goes: <b>Agnieszka is at R7C3.</b> Hanna's squares in column 6 are down to R8C6: R3C6 and R4C6 went with the full rows 3 and 4, R5C6 is in Bartosz's row and R7C6 in Agnieszka's: <b>Hanna is at R8C6.</b>"},{"place":["F"],"cand":{"C":[[4,8],[9,1]],"G":[[3,7],[4,8]],"V":[[3,7],[3,8],[4,8],[9,1]]},"text":"Franciszka has R6C7 and R6C9 left, both in row 6: the row is hers, R6C1, R6C2, R6C3 and R6C5 are empty, and Violetta loses R6C7 and R6C9. Column 9 needs somebody, and Franciszka is the only person who still has a square in it: R1C9 and R2C9 are in Eryk's and Dorota's rows, R7C9 and R8C9 in Agnieszka's and Hanna's, R9C9 is empty, and the rest are objects. Her square there is R6C9: <b>Franciszka is at R6C9.</b>"},{"place":["G"],"cand":{"C":[[9,1]],"V":[[3,7],[9,1]]},"text":"Row 4 is down to a single square where anybody can stand, R4C8 (the other squares are objects, empty or in taken columns) – so Czesław, Grzegorz or Violetta is there, and the rest of column 8 is empty: R3C8 is out. Bartosz is certainly in row 5, so exactly one row north of him, in row 4, was an outsider. The person at R4C8 is Czesław, Grzegorz or Violetta, and only Grzegorz is an outsider. So he is the one in row 4, and his other square, R3C7, goes: <b>Grzegorz is at R4C8.</b>"},{"place":["C","V"],"cand":{},"text":"Czesław is left with R9C1 now that Grzegorz has R4C8: <b>Czesław is at R9C1.</b> The last card on the plan is Violetta's: of R3C7 and R9C1 only R3C7 is free: <b>Violetta is at R3C7.</b> That square is in the Strongroom, and apart from Violetta only Grzegorz is in it."},{"final":true,"text":"Case closed: Violetta was alone in the Strongroom with Grzegorz, the raw-amber dealer from the coast – the man whose latest delivery she had held under the ultraviolet lamp that night, and found to be fake. <b>Grzegorz is the murderer!</b>"}],"solver":{"rules":[],"occupiable":["chair","pouf","sofa","stool","bench"]},"verification":{"tool":"tools/murdoku_solver.py","unique":true,"guessFree":true,"checked":"2026-10-17"},"score":8.1434}