{"format":"murdoku-puzzle/1","id":"aquarium","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":"아쿠아리움","tagline":"블루워터 아쿠아리움 · 폐장 시간 · 마지막 먹이 주기","author":"mathace","concept":"Murdoku – Manuel Garand (murdoku.com); unofficial fan-made case","created":"2026-09-16","story":"블루워터 아쿠아리움의 폐장 시간. 마지막 관람객들이 여전히 수조 사이를 거닐고 있을 때, 상어 터널의 조명이 잠깐 꺼진다 – 다시 켜졌을 때, 수석 사육사 Viola가 터널 바닥에 죽어 쓰러져 있다. 안에는 아직 일곱 명이 있었다: 관람객 네 명과 직원 세 명. 그중 한 명이 범인이다. 진술을 모두 읽고, 평면도에서 각자의 칸을 찾아 범인을 밝혀라: 범인은 상어 터널에서 Viola와 단둘이 있었다.","rules":{"standard":["모든 <b>행</b>과 모든 <b>열</b>에는 정확히 <b>한 사람</b>이 있다. 누군가를 배치하는 즉시 그 사람의 행과 열 전체를 지워라.","<b>“옆”</b> = 바로 왼쪽, 오른쪽, 위, 아래이며 <b>같은 구역 안</b>이어야 한다. 물건(수조, 만지기 체험 수조, 테이블, 카운터, 선반…)이 있는 칸에는 있을 수 없다; 벤치와 의자에는 있을 수 있다. 한 구역의 <b>모서리</b>란 바깥쪽 면이 두 개인 그 구역의 칸이다.","방향은 행과 열을 가리키며 같은 직선일 필요는 없다: <i>“그의 정확히 한 행 남쪽에 여자가 있었다”</i> = 바로 아래의 행에 있는 사람이 여자다, 열은 무관.","범인은 <b>피해자와 단둘이</b> 있었다: 그 구역에는 다른 누구도 없었다."],"special":[]},"roleNames":{"visitor":"관람객","staff":"직원","victim":"피해자"},"personGroups":[{"id":"visitors","name":"관람객","persons":["A","B","C","D"]},{"id":"staff","name":"직원","persons":["E","F","G","V"]}],"map":{"groups":[],"gaps":[],"areas":[{"id":"Jellyfish Hall","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":"#d6d0ea","pattern":"marble","labelAt":[2,3],"name":"해파리 홀"},{"id":"Shark Tunnel","cells":[[1,5],[1,6],[1,7],[1,8],[2,5],[2,6],[2,7],[2,8],[3,5],[3,6],[3,7],[3,8]],"fill":"#c9dcea","pattern":"tiles","labelAt":[2,7],"name":"상어 터널"},{"id":"Touch Pool","cells":[[4,1],[4,2],[4,3],[4,4],[4,5],[5,1],[5,2],[5,3],[5,4],[5,5]],"fill":"#d9ecf0","pattern":"tiles","labelAt":[5,3.5],"name":"만지기 체험 수조"},{"id":"Gift Shop","cells":[[4,6],[4,7],[4,8],[5,6],[5,7],[5,8],[6,6],[6,7],[6,8],[7,6],[7,7],[7,8],[8,6],[8,7],[8,8]],"fill":"#f2e4cf","pattern":"planks","labelAt":[7,7],"name":"기념품점"},{"id":"Cafe","cells":[[6,1],[6,2],[6,3],[6,4],[6,5],[7,1],[7,2],[7,3],[7,4],[7,5],[8,1],[8,2],[8,3],[8,4],[8,5]],"fill":"#f0e6d8","pattern":"planks","labelAt":[6,3],"name":"카페"}],"objectTypes":{"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\"/>"},"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\"/>"},"jelly":{"occupiable":false,"name":"해파리 수조","icon":"<rect x=\"5\" y=\"5\" width=\"36\" height=\"36\" rx=\"3\" fill=\"#0f3a5c\" stroke=\"#08243a\" stroke-width=\"1.5\"/><path d=\"M14 20 a9 8 0 0 1 18 0 z\" fill=\"#e6a8f0\" opacity=\".95\"/><path d=\"M15 21 v10 M19 21 v12 M23 21 v11 M27 21 v13 M31 21 v10\" stroke=\"#f3c6ff\" stroke-width=\"1.5\" fill=\"none\"/><circle cx=\"12\" cy=\"12\" r=\"1.4\" fill=\"#7fc4d8\" opacity=\".7\"/><circle cx=\"34\" cy=\"34\" r=\"1.2\" fill=\"#7fc4d8\" opacity=\".7\"/>"},"tank":{"occupiable":false,"name":"상어 수조","icon":"<rect x=\"3\" y=\"4\" width=\"40\" height=\"38\" rx=\"2\" fill=\"#155e8a\" stroke=\"#0b3550\" stroke-width=\"1.5\"/><path d=\"M9 26 q10 -9 22 -3 l6 -6 v9 l-6 -2 q-12 6 -22 2 z\" fill=\"#8fb4c8\"/><path d=\"M20 22 l3 -6 l2 6 z\" fill=\"#8fb4c8\"/><circle cx=\"14\" cy=\"24\" r=\"1.2\" fill=\"#0b3550\"/><path d=\"M6 12 q6 -3 12 0 t12 0 t10 0\" stroke=\"#7fc4d8\" stroke-width=\"1.2\" fill=\"none\" opacity=\".7\"/>"},"touchpool":{"occupiable":false,"name":"만지기 체험 수조","icon":"<rect x=\"3\" y=\"8\" width=\"40\" height=\"30\" rx=\"8\" fill=\"#9fd6ea\" stroke=\"#3a8bb0\" stroke-width=\"1.5\"/><path d=\"M16 15 l2 5 l5 0 l-4 3 l2 5 l-5 -3 l-5 3 l2 -5 l-4 -3 l5 0 z\" fill=\"#f28c3a\"/><circle cx=\"31\" cy=\"28\" r=\"4\" fill=\"#c46ea8\"/><circle cx=\"33\" cy=\"17\" r=\"2.2\" fill=\"#f7e9a8\" stroke=\"#c9a54c\" stroke-width=\".8\"/><path d=\"M8 32 q6 -3 12 0\" stroke=\"#dff4fb\" stroke-width=\"1.2\" fill=\"none\"/>"},"barrel":{"occupiable":false,"name":"먹이통","icon":"<path d=\"M11 8 q-4 15 0 30 h24 q4 -15 0 -30 z\" fill=\"#a5733f\" stroke=\"#5e4127\" stroke-width=\"1.5\"/><rect x=\"9\" y=\"14\" width=\"28\" height=\"3\" fill=\"#4a4a4a\"/><rect x=\"9\" y=\"29\" width=\"28\" height=\"3\" fill=\"#4a4a4a\"/><line x1=\"18\" y1=\"8\" x2=\"17\" y2=\"38\" stroke=\"#7a5230\"/><line x1=\"28\" y1=\"8\" x2=\"29\" y2=\"38\" stroke=\"#7a5230\"/>"},"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\"/>"},"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\"/>"},"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\"/>"}},"wallTypes":{},"objects":[{"cell":[1,1],"type":"jelly"},{"cell":[1,4],"type":"jelly"},{"cell":[3,3],"type":"jelly"},{"cell":[2,2],"type":"bench"},{"cell":[1,5],"type":"tank"},{"cell":[1,7],"type":"tank"},{"cell":[3,6],"type":"tank"},{"cell":[3,8],"type":"tank"},{"cell":[2,6],"type":"bench"},{"cell":[4,3],"type":"touchpool"},{"cell":[4,4],"type":"touchpool"},{"cell":[5,1],"type":"barrel"},{"cell":[4,6],"type":"counter"},{"cell":[5,8],"type":"shelf"},{"cell":[8,6],"type":"shelf"},{"cell":[7,2],"type":"table"},{"cell":[7,4],"type":"table"},{"cell":[7,1],"type":"chair"},{"cell":[7,3],"type":"chair"},{"cell":[7,5],"type":"chair"},{"cell":[8,1],"type":"counter"}],"wallFeatures":[],"extras":[],"cellSize":46},"persons":[{"id":"A","name":"Abel","gender":"M","role":"visitor","color":"#c62828","avatar":{"bg":"#2f4858","skin":"#e7b98f","hair":"#1c1a1a","style":"curly","shirt":"#3f8a4a","glasses":true},"clue":"그는 <b>해파리 홀</b>에 있었지만, <b>모서리는 아니었다</b>.","job":"생물학과 학생","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Abel\"><rect width=\"80\" height=\"80\" fill=\"#2f4858\"/><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=\"#e7b98f\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#e7b98f\"/><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=\"#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=\"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":"area","areas":["Jellyfish Hall"]},{"type":"not_corner_of_area"}]},{"id":"B","name":"Britta","gender":"F","role":"visitor","color":"#2e7d32","avatar":{"bg":"#5b2c6f","skin":"#f6d8c0","hair":"#d9b464","style":"bob","shirt":"#1b2a33","necklace":true},"clue":"그녀는 <b>벤치</b> 옆에 있었다.","job":"사진작가","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Britta\"><rect width=\"80\" height=\"80\" fill=\"#5b2c6f\"/><path d=\"M22 40 Q22 14 40 14 Q58 14 58 40 L58 58 L22 58 Z\" fill=\"#d9b464\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#1b2a33\"/><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\"/></svg>","solverRole":"guest","constraints":[{"type":"beside","obj":"bench"}]},{"id":"C","name":"Caleb","gender":"M","role":"visitor","color":"#1565c0","avatar":{"bg":"#1b2a33","skin":"#f1c8a5","hair":"#5a3a22","style":"short","shirt":"#e67e22","cap":true},"clue":"그는 <b>테이블</b> 옆에 있었다.","job":"관광객","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Caleb\"><rect width=\"80\" height=\"80\" fill=\"#1b2a33\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#e67e22\"/><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 32 Q26 15 40 15 Q54 15 54 32 Q50 24 40 24 Q30 24 26 32 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=\"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":"guest","constraints":[{"type":"beside","obj":"table"}]},{"id":"D","name":"Doris","gender":"F","role":"visitor","color":"#6a1b9a","avatar":{"bg":"#6e2c4b","skin":"#d9a57a","hair":"#2b1c14","style":"ponytail","shirt":"#7fc4d8","earrings":true},"clue":"그녀는 <b>카페</b>에 있었지만, <b>모서리는 아니었다</b>.","job":"여행 블로거","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Doris\"><rect width=\"80\" height=\"80\" fill=\"#6e2c4b\"/><path d=\"M50 30 Q64 34 60 62 L54 62 Q56 40 48 36 Z\" fill=\"#2b1c14\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#7fc4d8\"/><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 33 Q26 16 40 16 Q54 16 54 33 Q50 24 40 24 Q30 24 26 33 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=\"26\" cy=\"41\" r=\"1.8\" fill=\"#f0c95a\"/><circle cx=\"54\" cy=\"41\" r=\"1.8\" fill=\"#f0c95a\"/></svg>","solverRole":"guest","constraints":[{"type":"area","areas":["Cafe"]},{"type":"not_corner_of_area"}]},{"id":"E","name":"Emil","gender":"M","role":"staff","color":"#e65100","avatar":{"bg":"#3d5a6e","skin":"#f0cdb0","hair":"#c9c3b8","style":"bald","shirt":"#155e8a","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=\"Emil\"><rect width=\"80\" height=\"80\" fill=\"#3d5a6e\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#155e8a\"/><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 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\"/><path d=\"M33 41 Q40 37 47 41 Q40 43 33 41 Z\" fill=\"#3a2a1c\"/></svg>","solverRole":"staff","constraints":[{"type":"beside","obj":"shelf"},{"type":"rel_any","dir":"S","exact":1,"gender":"F"}]},{"id":"F","name":"Fanny","gender":"F","role":"staff","color":"#00838f","avatar":{"bg":"#7a6a3c","skin":"#e9c6a4","hair":"#b7482c","style":"bun","shirt":"#f4efe6","apron":true},"clue":"그녀는 <b>의자</b>에 앉아 있었다.","job":"카페 바리스타","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Fanny\"><rect width=\"80\" height=\"80\" fill=\"#7a6a3c\"/><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=\"#e9c6a4\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#e9c6a4\"/><circle cx=\"40\" cy=\"15\" r=\"7\" fill=\"#b7482c\"/><path d=\"M26 32 Q26 16 40 16 Q54 16 54 32 Q50 24 40 24 Q30 24 26 32 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":"staff","constraints":[{"type":"on","obj":"chair"}]},{"id":"G","name":"Gustav","gender":"M","role":"staff","color":"#ad1457","avatar":{"bg":"#35607a","skin":"#e4b998","hair":"#2a1d16","style":"slick","shirt":"#24404f","swimcap":"#24404f","goggles":true},"clue":"그는 <b>만지기 체험 수조</b> 옆에 있었다.","job":"수조 다이버","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Gustav\"><rect width=\"80\" height=\"80\" fill=\"#35607a\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#24404f\"/><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=\"#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\"/><path d=\"M25 31 Q25 12 40 12 Q55 12 55 31 Q48 21 40 21 Q32 21 25 31 Z\" fill=\"#24404f\"/><path d=\"M28 24 Q40 16 52 24\" fill=\"none\" stroke=\"rgba(255,255,255,.35)\" stroke-width=\"1.5\"/><rect x=\"27\" y=\"20\" width=\"26\" height=\"8\" rx=\"4\" fill=\"none\" stroke=\"#1b2a33\" stroke-width=\"2\"/><rect x=\"29\" y=\"21\" width=\"10\" height=\"6\" rx=\"3\" fill=\"#7fd1e8\" opacity=\".85\"/><rect x=\"41\" y=\"21\" width=\"10\" height=\"6\" rx=\"3\" fill=\"#7fd1e8\" opacity=\".85\"/></svg>","solverRole":"staff","constraints":[{"type":"beside","obj":"touchpool"}]},{"id":"V","name":"Viola","gender":"F","role":"victim","color":"#1b1b1b","avatar":{"bg":"#5a2a2a","skin":"#f6d8c0","hair":"#5a3a22","style":"long","shirt":"#155e8a","headband":"#f0b429"},"clue":"<b>피해자.</b> 그녀는 <b>상어 터널</b>에서 발견되었다 – 범인과 단둘이.","job":"수석 사육사","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Viola\"><rect width=\"80\" height=\"80\" fill=\"#5a2a2a\"/><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=\"#155e8a\"/><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\"/><rect x=\"26\" y=\"23\" width=\"28\" height=\"5\" rx=\"2\" fill=\"#f0b429\"/><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":["Shark Tunnel"]}]}],"victim":"V","murderer":"B","solution":{"B":[1,6],"V":[2,8],"A":[3,2],"G":[4,5],"E":[5,7],"D":[6,3],"F":[7,1],"C":[8,4]},"walkthrough":[{"place":[],"cand":{"F":[[7,1],[7,3],[7,5]],"C":[[6,2],[6,4],[8,2],[8,4]],"G":[[4,2],[4,5],[5,3],[5,4]],"E":[[4,8],[5,7],[6,8]],"D":[[6,2],[6,3],[6,4],[8,2],[8,3],[8,4]]},"text":"좁게 제한된 진술부터 연필로 표시하자. Fanny는 의자에 앉아 있었고, 세 개의 의자는 모두 7행에 있다(R7C1, R7C3, R7C5) – 따라서 7행은 그녀의 것이고, 다른 누구도 그곳에 있을 수 없다. Caleb은 테이블(R7C2 또는 R7C4) 옆에 있었다: R6C2, R6C4, R8C2 또는 R8C4. Gustav는 만지기 체험 수조 옆에 있었다: R4C2, R4C5, R5C3 또는 R5C4. Emil은 선반(R5C8 또는 R8C6) 옆에 있었다: R4C8, R5C7 또는 R6C8 – R8C7은 아니다, 그의 정확히 한 행 남쪽에 여자가 있었는데 8행 아래에는 아무것도 없기 때문이다. Doris는 카페에 있지만 모서리는 아니다: R6C2, R6C3, R6C4, R8C2, R8C3 또는 R8C4."},{"place":["E"],"cand":{"G":[[4,2],[4,5]],"C":[[8,2],[8,4]],"D":[[6,2],[6,3],[6,4]]},"text":"4행과 5행은 Gustav와 Emil만 채울 수 있다 – 다른 모든 사람은 각기 다른 행에 묶여 있다(Abel, Britta, Viola는 1~3행, Doris와 Caleb은 6행과 8행, Fanny는 7행). 만약 Emil이 4행에 있었다면 그의 한 행 남쪽에 있는 사람은 Gustav, 즉 남자였을 것이다 – 하지만 Emil은 여자였다고 했다. 그러므로 <b>Emil은 R5C7에 있다</b>, Gustav는 4행(R4C2 또는 R4C5)에 있다. 6행에 있는 사람은 여자여야 한다: Caleb은 8행(R8C2 또는 R8C4)으로 밀려나고, Doris는 6행(R6C2, R6C3 또는 R6C4)에 있다. 5행과 7열을 지운다."},{"place":["A","G","C","D"],"cand":{"V":[[1,8],[2,8]],"F":[[7,1]]},"text":"8열에는 Viola만 있을 수 있다(R1C8 또는 R2C8): 그 열의 기념품점 칸들은 다른 누구도 닿을 수 없다. 그러면 3행은 Abel의 것이다 – Viola는 1~2행에 있고, 해파리 홀에서 모서리가 아닌 유일한 3행 칸은 <b>R3C2</b>다. 이제 2열이 정해졌다: <b>Gustav는 R4C5에</b>, <b>Caleb은 R8C4에</b>, <b>Doris는 R6C3에</b> 있다(R6C4는 Caleb의 열이 될 것이다)."},{"place":["F"],"cand":{"B":[[1,6]]},"text":"Fanny는 7행의 의자 중 하나에 앉아 있었다: R7C3은 Doris의 열, R7C5는 Gustav의 열이므로, <b>Fanny는 R7C1에 있다</b>."},{"place":["B","V"],"text":"이제 6열과 8열만 남았다, Britta와 Viola의 몫이다. Britta는 벤치 옆에 있었다: 상어 터널의 벤치(R2C6) 옆, 6열의 R1C6이다 – 따라서 <b>Britta는 R1C6에 있다</b>. Viola는 2행에서 8열을 차지한다: <b>R2C8</b>, 상어 터널 – Britta와 단둘이."},{"final":true,"text":"사건 종결: Viola는 상어 터널에서 Britta와 단둘이 있었다. <b>Britta가 범인이다!</b>"}],"solver":{"rules":[],"occupiable":["bench","chair"]},"verification":{"tool":"tools/murdoku_solver.py","unique":true,"guessFree":true,"checked":"2026-09-16"}}