{"format":"murdoku-puzzle/1","id":"climb","version":1,"difficulty":"medium","level":6,"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-09-17","story":"목요일 저녁, 오래된 철도 아치 아래에 자리한 클라이밍 짐 그래닛 로프트. 저녁 세션이 절반쯤 지났을 때 조명이 1분간 꺼졌다 – 다시 켜졌을 때, 소유주이자 수석 루트 세터인 Vidar가 리드 월 아래, 로프 옆에서 죽은 채 쓰러져 있었다. 체육관 안에는 여덟 명이 있었다: 클라이머 네 명, 직원 두 명, 방문객 두 명. 그중 한 명이 범인이다. 모든 진술을 읽고 평면도에서 각자의 칸을 찾아 범인을 밝혀라 – 리드 월에서 Vidar와 단둘이 있었던 사람이다.","rules":{"standard":["모든 <b>행</b>과 모든 <b>열</b>에는 정확히 <b>한 사람</b>이 있다. 누군가를 배치하는 즉시 그 사람의 행과 열 전체를 지워라.","<b>“옆”</b> = 바로 왼쪽, 오른쪽, 위, 아래이며 <b>같은 구역 안</b>이어야 한다. 물건이 있는 칸(클라이밍 벽, 카운터, 사물함, 자판기, 핑거보드…)에는 있을 수 없다; 매트, 의자, 벤치, 현관 매트에는 있을 수 있다. 한 구역의 <b>모서리</b>는 가로 방향 한 면과 세로 방향 한 면에서 바깥쪽(다른 구역이나 보드의 가장자리)과 맞닿아 있는, 그 구역에 속한 칸이다.","방향은 행과 열을 가리키며 같은 직선일 필요는 없다: <i>“그의 정확히 한 행 북쪽에 여자가 있었다”</i> = 바로 위의 행에 있는 사람이 여자다, 열은 무관; <i>“Astrid보다 북쪽에”</i> = 더 위쪽 행에, 열은 무관.","범인은 <b>피해자와 단둘이</b> 있었다: 그 구역에는 다른 누구도 없었다."],"special":["<b>모든 클라이머는 클라이밍 벽 옆에 있었다</b>(직원과 방문객은 어디에나 있을 수 있었다)."]},"roleNames":{"climber":"클라이머","staff":"직원","visitor":"방문객","victim":"피해자"},"personGroups":[{"id":"climbers","name":"클라이머","persons":["A","B","C","D"]},{"id":"staff","name":"직원","persons":["E","F","V"]},{"id":"visitors","name":"방문객","persons":["G","H"]}],"map":{"groups":[],"gaps":[],"areas":[{"id":"Reception","cells":[[1,1],[1,2],[1,3],[2,1],[2,2],[3,1]],"fill":"#e4e0d2","pattern":"tiles","labelAt":[2,1.5],"name":"리셉션"},{"id":"Cafe","cells":[[1,4],[1,5],[1,6],[2,3],[2,4],[2,5],[2,6],[3,2],[3,3],[3,4]],"fill":"#e9dcd2","pattern":"boards","labelAt":[1,5],"name":"카페"},{"id":"Lead Wall","cells":[[1,7],[1,8],[1,9],[2,7],[2,8],[2,9],[3,8],[3,9],[4,9],[5,9],[6,9]],"fill":"#d9dde3","pattern":"marble","labelAt":[5,9],"name":"리드 월"},{"id":"Boulder Hall","cells":[[3,5],[3,6],[3,7],[4,3],[4,4],[4,5],[4,6],[4,7],[4,8],[5,3],[5,4],[5,5],[5,6],[5,7],[5,8],[6,4],[6,5],[6,6],[6,7],[6,8],[7,3],[7,4],[7,5],[7,6],[8,1],[8,2],[8,3],[8,4],[8,5],[9,1],[9,2],[9,3],[9,4]],"fill":"#dfe3e6","pattern":"tiles","labelAt":[8,4],"name":"볼더링 홀"},{"id":"Training","cells":[[7,7],[7,8],[7,9],[8,6],[8,7],[8,8],[8,9],[9,5],[9,6],[9,7],[9,8],[9,9]],"fill":"#e3cfa8","pattern":"planks","labelAt":[9,8],"name":"트레이닝 코너"},{"id":"Locker Room","cells":[[4,1],[4,2],[5,1],[5,2],[6,1],[6,2],[6,3],[7,1],[7,2]],"fill":"#e2e0d0","pattern":"tiles","labelAt":[5,2],"name":"탈의실"}],"objectTypes":{"doormat":{"occupiable":true,"name":"현관 매트","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>"},"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\"/>"},"crashmat":{"occupiable":true,"name":"매트","icon":"<rect x=\"2\" y=\"2\" width=\"42\" height=\"42\" rx=\"4\" fill=\"#3a6fb0\" stroke=\"#1f3f6b\" stroke-width=\"1.5\"/><rect x=\"6\" y=\"6\" width=\"34\" height=\"34\" rx=\"3\" fill=\"none\" stroke=\"#8fb4e0\" stroke-width=\"1.2\"/><line x1=\"23\" y1=\"6\" x2=\"23\" y2=\"40\" stroke=\"#8fb4e0\" stroke-width=\"1.2\"/>"},"bench":{"occupiable":true,"name":"벤치","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\"/>"},"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\"/>"},"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\"/>"},"vending":{"occupiable":false,"name":"자판기","icon":"<rect x=\"9\" y=\"4\" width=\"28\" height=\"38\" rx=\"3\" fill=\"#2f3b4c\" stroke=\"#161c25\" stroke-width=\"1.5\"/><rect x=\"13\" y=\"8\" width=\"16\" height=\"18\" fill=\"#7fc4d8\"/><rect x=\"13\" y=\"29\" width=\"20\" height=\"4\" fill=\"#f0b429\"/><rect x=\"13\" y=\"35\" width=\"20\" height=\"3\" fill=\"#8a94a0\"/>"},"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\"/>"},"plant":{"occupiable":false,"name":"화분","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\"/>"},"ropes":{"occupiable":false,"name":"로프","icon":"<g stroke=\"#a5733f\" stroke-width=\"2.5\" stroke-linecap=\"round\"><line x1=\"11\" y1=\"3\" x2=\"11\" y2=\"43\"/><line x1=\"19\" y1=\"3\" x2=\"19\" y2=\"43\"/><line x1=\"27\" y1=\"3\" x2=\"27\" y2=\"43\"/><line x1=\"35\" y1=\"3\" x2=\"35\" y2=\"43\"/></g><rect x=\"6\" y=\"30\" width=\"34\" height=\"6\" rx=\"2\" fill=\"#5b5852\"/>"},"climbwall":{"occupiable":false,"name":"클라이밍 벽","icon":"<rect x=\"3\" y=\"3\" width=\"40\" height=\"40\" fill=\"#8b8f96\" stroke=\"#3d444b\" stroke-width=\"1.5\"/><g><circle cx=\"11\" cy=\"10\" r=\"3\" fill=\"#e0362e\"/><circle cx=\"24\" cy=\"8\" r=\"2.6\" fill=\"#f0b429\"/><circle cx=\"36\" cy=\"13\" r=\"3\" fill=\"#3fbf7f\"/><circle cx=\"15\" cy=\"22\" r=\"2.8\" fill=\"#1f6fb2\"/><circle cx=\"30\" cy=\"24\" r=\"3.2\" fill=\"#e0362e\"/><circle cx=\"9\" cy=\"34\" r=\"3\" fill=\"#f0b429\"/><circle cx=\"22\" cy=\"36\" r=\"2.6\" fill=\"#3fbf7f\"/><circle cx=\"37\" cy=\"35\" r=\"3\" fill=\"#1f6fb2\"/></g>"},"hangboard":{"occupiable":false,"name":"핑거보드","icon":"<rect x=\"4\" y=\"12\" width=\"38\" height=\"16\" rx=\"3\" fill=\"#b98a5a\" stroke=\"#6e4d2c\" stroke-width=\"1.5\"/><g fill=\"#6e4d2c\"><rect x=\"8\" y=\"16\" width=\"8\" height=\"4\" rx=\"1\"/><rect x=\"19\" y=\"15\" width=\"8\" height=\"6\" rx=\"1\"/><rect x=\"30\" y=\"16\" width=\"8\" height=\"4\" rx=\"1\"/></g><rect x=\"20\" y=\"28\" width=\"6\" height=\"12\" fill=\"#5b5852\"/><rect x=\"12\" y=\"39\" width=\"22\" height=\"4\" rx=\"1.5\" fill=\"#5b5852\"/>"},"locker":{"occupiable":false,"name":"사물함","icon":"<rect x=\"8\" y=\"4\" width=\"30\" height=\"38\" rx=\"2\" fill=\"#7f95a8\" stroke=\"#3d4f5e\" stroke-width=\"1.5\"/><line x1=\"23\" y1=\"4\" x2=\"23\" y2=\"42\" stroke=\"#3d4f5e\"/><rect x=\"11\" y=\"10\" width=\"9\" height=\"3\" fill=\"#d7e1e8\"/><rect x=\"26\" y=\"10\" width=\"9\" height=\"3\" fill=\"#d7e1e8\"/><rect x=\"11\" y=\"16\" width=\"9\" height=\"3\" fill=\"#d7e1e8\"/><rect x=\"26\" y=\"16\" width=\"9\" height=\"3\" fill=\"#d7e1e8\"/><circle cx=\"19\" cy=\"28\" r=\"1.5\" fill=\"#1f2a33\"/><circle cx=\"34\" cy=\"28\" r=\"1.5\" fill=\"#1f2a33\"/>"},"shower":{"occupiable":false,"name":"샤워기","icon":"<rect x=\"20\" y=\"6\" width=\"6\" height=\"14\" fill=\"#8a949c\"/><rect x=\"12\" y=\"18\" width=\"22\" height=\"6\" rx=\"3\" fill=\"#dfe6ea\" stroke=\"#5b6b76\"/><line x1=\"15\" y1=\"26\" x2=\"14\" y2=\"38\" stroke=\"#7fc4d8\" stroke-width=\"1.5\"/><line x1=\"20\" y1=\"26\" x2=\"19\" y2=\"40\" stroke=\"#7fc4d8\" stroke-width=\"1.5\"/><line x1=\"25\" y1=\"26\" x2=\"26\" y2=\"40\" stroke=\"#7fc4d8\" stroke-width=\"1.5\"/><line x1=\"30\" y1=\"26\" x2=\"31\" y2=\"38\" stroke=\"#7fc4d8\" stroke-width=\"1.5\"/>"}},"wallTypes":{},"objects":[{"cell":[1,1],"type":"shelf"},{"cell":[1,2],"type":"counter"},{"cell":[1,4],"type":"vending"},{"cell":[1,6],"type":"counter"},{"cell":[1,7],"type":"ropes"},{"cell":[1,9],"type":"climbwall"},{"cell":[2,3],"type":"chair"},{"cell":[2,4],"type":"table"},{"cell":[2,5],"type":"chair"},{"cell":[2,8],"type":"crashmat"},{"cell":[2,9],"type":"climbwall"},{"cell":[3,1],"type":"doormat"},{"cell":[3,2],"type":"plant"},{"cell":[3,8],"type":"crashmat"},{"cell":[3,9],"type":"climbwall"},{"cell":[4,1],"type":"locker"},{"cell":[4,4],"type":"climbwall"},{"cell":[4,5],"type":"climbwall"},{"cell":[5,1],"type":"locker"},{"cell":[5,4],"type":"crashmat"},{"cell":[5,5],"type":"crashmat"},{"cell":[6,2],"type":"bench"},{"cell":[6,6],"type":"climbwall"},{"cell":[6,7],"type":"climbwall"},{"cell":[7,1],"type":"shower"},{"cell":[7,6],"type":"crashmat"},{"cell":[8,2],"type":"crashmat"},{"cell":[8,9],"type":"hangboard"},{"cell":[9,2],"type":"climbwall"},{"cell":[9,3],"type":"crashmat"},{"cell":[9,7],"type":"bench"}],"wallFeatures":[],"extras":[],"cellSize":46},"persons":[{"id":"A","name":"Astrid","gender":"F","role":"climber","color":"#c62828","avatar":{"bg":"#5b2c6f","skin":"#f6d8c0","hair":"#d9b464","style":"ponytail","shirt":"#c0392b","headband":"#f0b429"},"clue":{},"job":"대회 클라이머","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Astrid\"><rect width=\"80\" height=\"80\" fill=\"#5b2c6f\"/><path d=\"M50 30 Q64 34 60 62 L54 62 Q56 40 48 36 Z\" fill=\"#d9b464\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#c0392b\"/><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 33 Q26 16 40 16 Q54 16 54 33 Q50 24 40 24 Q30 24 26 33 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\"/><rect x=\"26\" y=\"23\" width=\"28\" height=\"5\" rx=\"2\" fill=\"#f0b429\"/></svg>","solverRole":"climber","constraints":[{"type":"beside","obj":"climbwall","rule":true}]},{"id":"B","name":"Blake","gender":"M","role":"climber","color":"#2e7d32","avatar":{"bg":"#2f4858","skin":"#e7b98f","hair":"#1c1a1a","style":"short","shirt":"#264653","beanie":"#000000"},"clue":"그의 <b>열</b> 어딘가에 <b>벤치</b>가 있었다.","job":"볼더러","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Blake\"><rect width=\"80\" height=\"80\" fill=\"#2f4858\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#264653\"/><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=\"M24 31 Q24 11 40 11 Q56 11 56 31 Q48 21 40 21 Q32 21 24 31 Z\" fill=\"#000000\"/><rect x=\"23\" y=\"26\" width=\"34\" height=\"6\" rx=\"3\" fill=\"#000000\" stroke=\"rgba(0,0,0,.18)\"/><circle cx=\"40\" cy=\"10\" r=\"4\" fill=\"#f4efe6\"/></svg>","solverRole":"climber","constraints":[{"type":"col_has","obj":"bench"},{"type":"beside","obj":"climbwall","rule":true}]},{"id":"C","name":"Cleo","gender":"F","role":"climber","color":"#1565c0","avatar":{"bg":"#6e2c4b","skin":"#f0cdb0","hair":"#b7482c","style":"bob","shirt":"#3f8a4a"},"clue":"그녀의 <b>행</b> 어딘가에 <b>사물함</b>이 있었다.","job":"초보자","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Cleo\"><rect width=\"80\" height=\"80\" fill=\"#6e2c4b\"/><path d=\"M22 40 Q22 14 40 14 Q58 14 58 40 L58 58 L22 58 Z\" fill=\"#b7482c\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#3f8a4a\"/><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 36 Q26 16 40 16 Q54 16 54 36 Q52 24 40 24 Q28 24 26 36 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\"/></svg>","solverRole":"climber","constraints":[{"type":"row_has","obj":"locker"},{"type":"beside","obj":"climbwall","rule":true}]},{"id":"D","name":"Dorian","gender":"M","role":"climber","color":"#6a1b9a","avatar":{"bg":"#1b2a33","skin":"#f1c8a5","hair":"#5a3a22","style":"curly","shirt":"#5d4037","beard":true},"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=\"Dorian\"><rect width=\"80\" height=\"80\" fill=\"#1b2a33\"/><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=\"#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=\"#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\"/><path d=\"M27 38 Q30 52 40 53 Q50 52 53 38 Q50 47 40 48 Q30 47 27 38 Z\" fill=\"#5a3a22\"/></svg>","solverRole":"climber","constraints":[{"type":"with_gender","gender":"F"},{"type":"row_has","obj":"climbwall"},{"type":"beside","obj":"climbwall","rule":true}]},{"id":"E","name":"Elvira","gender":"F","role":"staff","color":"#e65100","avatar":{"bg":"#7a6a3c","skin":"#f6d8c0","hair":"#1c1a1a","style":"bun","shirt":"#2f3b4c","whistle":true},"clue":"그녀는 <b>한 남자와 단둘이 있었다</b>.","job":"강사","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Elvira\"><rect width=\"80\" height=\"80\" fill=\"#7a6a3c\"/><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=\"#f6d8c0\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#f6d8c0\"/><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\"/><path d=\"M33 56 Q40 68 47 56\" fill=\"none\" stroke=\"#c9302c\" stroke-width=\"1.6\"/><rect x=\"37\" y=\"66\" width=\"7\" height=\"5\" rx=\"1.5\" fill=\"#e0b040\" stroke=\"#7a5a12\" stroke-width=\".8\"/></svg>","solverRole":"staff","constraints":[{"type":"with_gender","gender":"M","exact":true}]},{"id":"F","name":"Ferdinand","gender":"M","role":"staff","color":"#00838f","avatar":{"bg":"#3d5a6e","skin":"#d9a57a","hair":"#c9c3b8","style":"slick","shirt":"#8b5a2b","glasses":true},"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=\"Ferdinand\"><rect width=\"80\" height=\"80\" fill=\"#3d5a6e\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#8b5a2b\"/><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 30 Q27 16 44 15 Q56 15 55 26 Q48 22 40 23 Q30 24 26 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\"/></svg>","solverRole":"staff","constraints":[{"type":"col_has","obj":"chair"},{"type":"area_has","obj":"bench"}]},{"id":"G","name":"Giselle","gender":"F","role":"visitor","color":"#ad1457","avatar":{"bg":"#35607a","skin":"#f6d8c0","hair":"#5a3a22","style":"long","shirt":"#7a5a9a","earrings":true,"scarf":"#f2a53a"},"clue":"그녀는 <b>한 직원과 단둘이 있었다</b>.","job":"Cleo의 어머니","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Giselle\"><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=\"#5a3a22\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#7a5a9a\"/><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=\"#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\"/><path d=\"M30 58 Q40 70 50 58 L48 66 Q40 76 32 66 Z\" fill=\"#f2a53a\"/><circle cx=\"26\" cy=\"41\" r=\"1.8\" fill=\"#f0c95a\"/><circle cx=\"54\" cy=\"41\" r=\"1.8\" fill=\"#f0c95a\"/></svg>","solverRole":"visitor","constraints":[{"type":"with_role","role":"staff","exact":true}]},{"id":"H","name":"Hugh","gender":"M","role":"visitor","color":"#5d4037","avatar":{"bg":"#8c3a5a","skin":"#f1c8a5","hair":"#2b1c14","style":"bald","shirt":"#1b1b1b","glasses":true,"cap":true},"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=\"Hugh\"><rect width=\"80\" height=\"80\" fill=\"#8c3a5a\"/><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 30 Q26 22 30 20 L30 34 Q26 34 26 30 Z\" fill=\"#2b1c14\"/><path d=\"M54 30 Q54 22 50 20 L50 34 Q54 34 54 30 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\"/><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=\"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":"visitor","constraints":[{"type":"only_beside","obj":"counter"},{"type":"alone_with_on","obj":"doormat"}]},{"id":"V","name":"Vidar","gender":"M","role":"victim","color":"#1b1b1b","avatar":{"bg":"#5a2a2a","skin":"#e4b998","hair":"#c9c3b8","style":"short","shirt":"#1b1b1b","mustache":true},"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=\"Vidar\"><rect width=\"80\" height=\"80\" fill=\"#5a2a2a\"/><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=\"#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=\"#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\"/><path d=\"M33 41 Q40 37 47 41 Q40 43 33 41 Z\" fill=\"#3a2a1c\"/><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":"area","areas":["Lead Wall"]},{"type":"beside","obj":"ropes"}]}],"victim":"V","murderer":"G","solution":{"H":[1,3],"V":[2,7],"E":[3,1],"G":[4,9],"C":[5,4],"D":[6,8],"A":[7,6],"B":[8,2],"F":[9,5]},"walkthrough":[{"place":["E"],"cand":{"V":[[1,8],[2,7]],"H":[[1,3],[2,2]],"B":[[5,7],[8,2]],"F":[[6,3],[9,5]],"C":[[4,3],[4,6],[4,9],[5,4],[5,5],[5,6],[5,7]],"D":[[4,3],[4,6],[4,9],[6,8],[9,1]],"A":[[4,3],[4,6],[4,9],[5,4],[5,5],[5,6],[5,7],[6,8],[7,6],[8,2],[9,1]],"G":[[4,2],[4,9],[5,9],[6,1],[6,2],[6,3],[6,9],[7,2],[7,7],[7,8],[7,9],[8,6],[8,8],[9,5],[9,6],[9,7],[9,8],[9,9]]},"text":"Vidar는 리드 월에서, 로프 옆에서 발견되었다: R1C8 또는 R2C7 – 1행 또는 2행 – 이며, 범인은 그곳에서 그와 단둘이 있었다. Hugh는 카운터 옆에 있던 유일한 사람이었고, 현관 매트 위에 있던 사람과 단둘이 있었다. 유일한 현관 매트는 리셉션의 R3C1에 있으므로, Hugh는 리셉션에서 그 카운터 옆에 있다(R1C3 또는 R2C2), 정확히 한 명의 다른 사람과 함께이며, 그 사람은 현관 매트 R3C1에 있다. 그것은 누구일 수 있을까? 클라이머들은 모두 클라이밍 벽 옆에 있었는데, 리셉션에는 벽이 없다; Ferdinand는 자신의 열 어딘가에 의자가 있었는데, 1열에는 없다; Giselle은 한 직원과 함께 있었는데, Hugh는 방문객이다. 남는 사람은 Elvira뿐이다 – 그리고 Hugh는 그녀의 진술이 필요로 하는 남자다. <b>Elvira는 R3C1에 있다.</b> 1, 2, 3행은 이제 Hugh, Vidar, Elvira의 것이다: 그 외에는 아무도 없다."},{"place":["B","H","V"],"cand":{"C":[[4,6],[4,9],[5,4]],"F":[[6,3],[9,5]],"D":[[4,6],[4,9],[6,8],[9,1]],"A":[[4,6],[4,9],[5,4],[6,8],[7,6],[9,1]],"G":[[4,9],[6,1],[6,9],[7,7],[7,8],[7,9],[9,5],[9,6],[9,7],[9,8],[9,9]]},"text":"모든 클라이머는 클라이밍 벽 옆에 있었으므로, 아직 열려 있는 행들 중에서 클라이머들은 리드 월의 R4C9와, 볼더링 홀의 R4C3, R4C6, R5C4, R5C5, R5C6, R5C7, R6C5, R6C8, R7C6, R8C2, R9C1, R9C3만 사용할 수 있다. Ferdinand는 자신의 열에 의자가 있었다 – 3열 또는 5열 – 그리고 자신의 구역에 벤치가 있었다, 즉 탈의실 또는 트레이닝 코너다: R6C3 또는 R9C5. 다른 누구도 R6C5나 R9C3을 차지할 수 없는데, 그렇게 되면 두 칸을 한꺼번에 그에게서 빼앗게 되기 때문이다. Blake는 자신의 열에 벤치가 있었다 – 2열 또는 7열 – 그리고 옆에 벽이 있었다: R5C7 또는 R8C2. 4열에 있는 사람은 누구인가? Hugh, Vidar, Elvira는 아니다 – 1–3행에 있는 유일한 사람들이다 – 그리고 Ferdinand도 아니다; R6C4, R7C4, R8C4, R9C4는 옆에 클라이밍 벽이 없으므로 클라이머는 그곳에 설 수 없고, Giselle도 마찬가지다 – 그녀에게는 함께 있을 직원이 필요한데, 볼더링 홀에는 직원이 있을 수 없다. 그러므로 누군가는 R5C4에 있고, 5행은 그 사람의 것이다: Blake는 R5C7을 쓸 수 없다: <b>Blake는 R8C2에 있다</b>, 트래버스 벽 아래의 매트 위다. 2열이 그의 것이므로, <b>Hugh는 R1C3에 있다</b>, 그리고 1행이 다 찼으므로 <b>Vidar는 R2C7에 있다</b>."},{"place":["F"],"cand":{"A":[[4,6],[4,9],[5,4],[6,8],[7,6]],"C":[[4,6],[4,9],[5,4]],"D":[[4,6],[6,8]],"G":[[4,9],[6,9],[7,8],[7,9]]},"text":"5열: R5C5는 R5C4에 있는 사람의 것인 5행에 있다; R6C5는 금지되어 있고, R7C5는 옆에 벽이 없으며, 8행은 Blake의 것이다 – 따라서 이 열의 유일한 칸은 R9C5다: <b>Ferdinand는 R9C5에 있다</b>, 트레이닝 코너에서 그곳의 벤치와 함께. Cleo의 행에는 사물함이 있었다 – 사물함은 4행과 5행에 있다 – 그리고 옆에는 벽이 있었다: R4C6, R4C9 또는 R5C4(R4C3은 Hugh의 열에 있고, 5행에서는 R5C4만 남는다). 4, 5, 6, 7행과 4, 6, 8, 9열은 Astrid, Cleo, Dorian, Giselle에게 남는다."},{"place":["D"],"cand":{"A":[[4,6],[4,9],[5,4],[7,6]],"C":[[4,6],[4,9],[5,4]],"G":[[4,9],[7,9]]},"text":"Dorian의 행 어딘가에는 클라이밍 벽이 있었다 – 5행과 7행에는 없다 – 그리고 그와 함께 여자가 있었으므로, 거기서 Vidar와 단둘이 있게 될 R4C9는 아니다: 그는 볼더링 홀의 벽 옆인 R4C6 또는 R6C8에 있다. <b>Dorian이 R4C6에 있을 수 있을까?</b> 그렇다면 4행이 Cleo에게 막히므로 그녀는 R5C4에 있다; 벽 옆에 있어야 하는 Astrid에게는 R6C8만 남고(R7C6은 Dorian의 열에, R4C9는 그의 행에 있다), Giselle에게는 – 4~6행과 4, 6, 8열이 사라졌으므로 – R7C9만 남는다. 그러면 리드 월에서 Vidar와 함께 있을 사람이 아무도 없다: 모순이다. <b>Dorian은 R6C8에 있다.</b>"},{"place":["G","C","A"],"text":"Giselle은 한 직원과 단둘이 있었다: 리드 월에서는 Vidar와, 트레이닝 코너에서는 Ferdinand와. 4, 5, 7행과 4, 6, 9열이 남았으므로 그녀의 칸은 R4C9와 R7C9다 – 어느 쪽이든 9열이고, 다른 누구도 그 열을 쓸 수 없다. 리드 월에는 Vidar와 함께 있을 두 번째 사람이 있어야 하는데, 그곳의 마지막 남은 칸은 R4C9다 – <b>Giselle은 R4C9에 있다</b>. 4행이 사라졌으므로 <b>Cleo는 R5C4에 있고</b>, 7행과 6열이 <b>R7C6</b>을 <b>Astrid</b>에게 남긴다. 모두가 제자리에 있다."},{"final":true,"text":"사건 종결: Vidar는 딸이 등반하는 모습을 보러 온 방문객과 리드 월에서 단둘이 있었다. <b>Giselle이 범인이다!</b>"}],"solver":{"rules":[],"occupiable":["chair","bench","doormat","crashmat"]},"verification":{"tool":"tools/murdoku_solver.py","unique":true,"guessFree":true,"checked":"2026-09-17"}}