{"format":"murdoku-puzzle/1","id":"frozen-fair","version":1,"difficulty":"hard","level":7,"size":{"rows":12,"cols":12},"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":"Hội chợ đóng băng","tagline":"Hội chợ mùa đông Ao Cối Xay · đêm cuối · pháo hoa lúc chín giờ","author":"mathace","concept":"Murdoku – Manuel Garand (murdoku.com); unofficial fan-made case","created":"2026-09-15","story":"Đêm cuối của hội chợ mùa đông Ao Cối Xay. Khi pháo hoa bắt đầu, người quản lý sân băng Virgil được phát hiện đã chết trên băng ghế trong lều cho thuê giày trượt. Có mười hai người trong khu hội chợ: người trượt băng, nhân viên hội chợ và khách tham quan. Hãy đọc lời khai, tìm đúng ô của từng người trên sơ đồ và vạch mặt hung thủ: kẻ đó đã ở một mình với Virgil trong lều giày trượt – rồi lẻn ra khỏi hội chợ mà không ai nhìn thấy.","rules":{"standard":["Mỗi <b>hàng</b> và mỗi <b>cột</b> có đúng <b>một người</b>. Ngay khi đặt ai đó, hãy gạch bỏ toàn bộ hàng và cột của người ấy.","<b>“Cạnh”</b> = ngay bên trái, bên phải, bên trên hoặc bên dưới, và <b>trong cùng một khu vực</b>. Các ô có đồ vật (cây, đèn lồng, người tuyết, quầy, thùng…) không thể ở; các <b>ô lối đi</b>, ghế băng, xe trượt và ghế đẩu thì được – lối đi rải sỏi thuộc Công viên, phần còn lại ở đó là tuyết.","Phương hướng chỉ hàng và cột, không cần cùng một đường thẳng: <i>“anh ấy ở phía bắc cô ấy”</i> = ở hàng cao hơn, bất kỳ cột nào; <i>“ở phía đông anh ấy”</i> = ở cột xa hơn về bên phải, bất kỳ hàng nào.","Hung thủ <b>ở một mình với nạn nhân</b>: không có ai khác trong khu vực đó."],"special":["Sau vụ án, hung thủ <b>rời hội chợ qua một trong hai cổng</b> (cổng chính ở phía bắc hoặc cổng bãi đỗ xe ở cuối cầu ván) <b>mà không gặp ai</b>: mọi khu vực hắn đi qua đều <b>trống</b>. Các khu vực chỉ nối với nhau ở nơi có vẽ <b>cửa hoặc lối thông</b>. Khu vực xảy ra án mạng là điểm xuất phát – nó không cần phải trống.","<b>“Trượt thẳng đến cây thông Noel”</b> = người trượt băng ở trên băng ở <b>cùng hàng hoặc cùng cột với cây thông</b>, và giữa họ chỉ có <b>băng trống</b> – không có đồ vật nào cản đường."]},"roleNames":{"skater":"người trượt băng","staff":"nhân viên hội chợ","visitor":"khách tham quan","victim":"nạn nhân"},"personGroups":[{"id":"skaters","name":"Người trượt băng","persons":["A","B","C","D","E"]},{"id":"staff","name":"Nhân viên hội chợ","persons":["F","G","H","V"]},{"id":"visitors","name":"Khách tham quan","persons":["I","J","K"]}],"map":{"groups":[{"id":"fair","name":"HỘI CHỢ MÙA ĐÔNG AO CỐI XAY","style":"open"}],"gaps":[],"areas":[{"id":"Park","cells":[[1,1],[1,2],[1,3],[1,4],[1,5],[1,6],[1,7],[1,8],[1,9],[1,10],[1,11],[1,12],[2,1],[2,2],[2,3],[2,4],[2,5],[2,6],[2,7],[2,8],[2,9],[2,10],[2,11],[2,12],[3,1],[3,2],[3,3],[4,1],[4,2],[4,3],[5,1],[5,2],[5,3],[6,1],[6,2],[6,3],[7,1],[7,2],[7,3],[8,1],[8,2],[8,3],[9,1],[9,2],[9,3],[10,1],[10,2],[10,3],[11,1],[11,2],[11,3],[12,1],[12,2],[12,3]],"fill":"#f3f6f9","pattern":"snow","group":"fair","labelAt":[12,2],"name":"Công viên"},{"id":"Rink","cells":[[3,4],[3,5],[3,6],[3,7],[3,8],[4,4],[4,5],[4,6],[4,7],[4,8],[5,4],[5,5],[5,6],[5,7],[5,8],[6,4],[6,5],[6,6],[6,7],[6,8],[7,4],[7,5],[7,6],[7,7],[7,8],[8,4],[8,5],[8,6],[8,7],[8,8]],"fill":"#d6ebf5","pattern":"ice","group":"fair","labelAt":[7,6],"name":"Sân băng"},{"id":"Hut","cells":[[3,9],[3,10],[3,11],[3,12],[4,9],[4,10],[4,11],[4,12],[5,9],[5,10],[5,11],[5,12]],"fill":"#e5d3b3","pattern":"boards","group":"fair","labelAt":[4,10.5],"name":"Lều giày trượt"},{"id":"Tent","cells":[[6,9],[6,10],[6,11],[6,12],[7,9],[7,10],[7,11],[7,12],[8,9],[8,10],[8,11],[8,12]],"fill":"#efe1c9","pattern":"boards","group":"fair","labelAt":[6,10.5],"name":"Lều sưởi"},{"id":"Tavern","cells":[[9,4],[9,5],[9,6],[9,7],[9,8],[10,4],[10,5],[10,6],[10,7],[10,8],[11,4],[11,5],[11,6],[11,7],[11,8],[12,4],[12,5],[12,6],[12,7],[12,8]],"fill":"#e6d0ad","pattern":"boards","group":"fair","labelAt":[11,6],"name":"Lều rượu vang nóng"},{"id":"Boardwalk","cells":[[9,9],[9,10],[9,11],[9,12],[10,9],[10,10],[10,11],[10,12],[11,9],[11,10],[11,11],[11,12],[12,9],[12,10],[12,11],[12,12]],"fill":"#d5bd98","pattern":"boards","group":"fair","labelAt":[10,10.5],"name":"Cầu ván"}],"objectTypes":{"path":{"occupiable":true,"name":"lối đi rải sỏi","icon":"<rect x=\"1\" y=\"1\" width=\"44\" height=\"44\" fill=\"#d9d1c0\"/><g fill=\"#b3a68f\"><circle cx=\"9\" cy=\"12\" r=\"1.6\"/><circle cx=\"22\" cy=\"8\" r=\"1.3\"/><circle cx=\"35\" cy=\"14\" r=\"1.6\"/><circle cx=\"14\" cy=\"26\" r=\"1.4\"/><circle cx=\"30\" cy=\"27\" r=\"1.7\"/><circle cx=\"8\" cy=\"38\" r=\"1.3\"/><circle cx=\"24\" cy=\"39\" r=\"1.5\"/><circle cx=\"39\" cy=\"35\" r=\"1.3\"/><circle cx=\"20\" cy=\"18\" r=\"1\"/><circle cx=\"37\" cy=\"24\" r=\"1\"/></g>"},"bench":{"occupiable":true,"name":"ghế băng","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\"/>"},"sled":{"occupiable":true,"name":"xe trượt tuyết","icon":"<path d=\"M6 34 q0 5 5 5 h28 q4 0 4 -4\" fill=\"none\" stroke=\"#8a8f96\" stroke-width=\"2.5\"/><rect x=\"8\" y=\"20\" width=\"30\" height=\"5\" rx=\"2\" fill=\"#b98a5a\" stroke=\"#6e4d2c\" stroke-width=\"1.2\"/><rect x=\"8\" y=\"27\" width=\"30\" height=\"5\" rx=\"2\" fill=\"#b98a5a\" stroke=\"#6e4d2c\" stroke-width=\"1.2\"/><line x1=\"13\" y1=\"25\" x2=\"13\" y2=\"34\" stroke=\"#6e4d2c\" stroke-width=\"2\"/><line x1=\"33\" y1=\"25\" x2=\"33\" y2=\"34\" stroke=\"#6e4d2c\" stroke-width=\"2\"/>"},"stool":{"occupiable":true,"name":"ghế đẩu","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\"/>"},"fireworks":{"occupiable":false,"name":"giá pháo hoa","icon":"<rect x=\"6\" y=\"30\" width=\"34\" height=\"10\" rx=\"2\" fill=\"#6b4a2b\" stroke=\"#3f2d1d\" stroke-width=\"1.2\"/><g stroke=\"#8a6a3a\" stroke-width=\"2\"><line x1=\"12\" y1=\"30\" x2=\"12\" y2=\"8\"/><line x1=\"23\" y1=\"30\" x2=\"23\" y2=\"5\"/><line x1=\"34\" y1=\"30\" x2=\"34\" y2=\"8\"/></g><path d=\"M9 12 l3 -8 l3 8 z\" fill=\"#c0392b\"/><path d=\"M20 9 l3 -8 l3 8 z\" fill=\"#2e86c1\"/><path d=\"M31 12 l3 -8 l3 8 z\" fill=\"#d4ac0d\"/><rect x=\"9.5\" y=\"12\" width=\"5\" height=\"8\" fill=\"#e74c3c\"/><rect x=\"20.5\" y=\"9\" width=\"5\" height=\"9\" fill=\"#3498db\"/><rect x=\"31.5\" y=\"12\" width=\"5\" height=\"8\" fill=\"#f4d03f\"/>"},"fir":{"occupiable":false,"name":"cây linh sam","icon":"<rect x=\"21\" y=\"34\" width=\"4\" height=\"8\" fill=\"#6b4a2b\"/><path d=\"M23 4 L34 20 L28 20 L38 34 L8 34 L18 20 L12 20 Z\" fill=\"#2f6b3a\"/><path d=\"M23 4 L29 13 Q26 14 23 12 Q20 14 17 13 Z\" fill=\"#eef6f8\"/><path d=\"M14 27 Q23 25 32 27 L30 22 Q23 24 16 22 Z\" fill=\"#eef6f8\" opacity=\".9\"/>"},"lantern":{"occupiable":false,"name":"đèn lồng","icon":"<circle cx=\"23\" cy=\"13\" r=\"10\" fill=\"#f7d774\" opacity=\".45\"/><rect x=\"21\" y=\"18\" width=\"4\" height=\"22\" fill=\"#3b3b3b\"/><rect x=\"15\" y=\"39\" width=\"16\" height=\"4\" rx=\"1.5\" fill=\"#3b3b3b\"/><path d=\"M17 8 h12 l2 10 h-16 z\" fill=\"#f2c94c\" stroke=\"#3b3b3b\" stroke-width=\"1.4\"/><rect x=\"20\" y=\"4\" width=\"6\" height=\"4\" fill=\"#3b3b3b\"/>"},"snowman":{"occupiable":false,"name":"người tuyết","icon":"<circle cx=\"23\" cy=\"32\" r=\"11\" fill=\"#fbfbfb\" stroke=\"#b9c3cc\" stroke-width=\"1.2\"/><circle cx=\"23\" cy=\"16\" r=\"8\" fill=\"#fbfbfb\" stroke=\"#b9c3cc\" stroke-width=\"1.2\"/><rect x=\"16\" y=\"5\" width=\"14\" height=\"3\" fill=\"#2b2b2b\"/><rect x=\"18.5\" y=\"0.5\" width=\"9\" height=\"5\" fill=\"#2b2b2b\"/><circle cx=\"20\" cy=\"14\" r=\"1.2\" fill=\"#2b2b2b\"/><circle cx=\"26\" cy=\"14\" r=\"1.2\" fill=\"#2b2b2b\"/><path d=\"M23 16 l7 2 l-7 2 z\" fill=\"#e67e22\"/><path d=\"M15 22 q8 4 16 0 l1 3 q-9 4 -18 0 z\" fill=\"#c0392b\"/><circle cx=\"23\" cy=\"29\" r=\"1.3\" fill=\"#2b2b2b\"/><circle cx=\"23\" cy=\"34\" r=\"1.3\" fill=\"#2b2b2b\"/>"},"xmastree":{"occupiable":false,"name":"cây thông Noel","icon":"<rect x=\"20\" y=\"36\" width=\"6\" height=\"6\" fill=\"#6b4a2b\"/><path d=\"M23 4 L33 17 L28 17 L37 29 L31 29 L40 38 L6 38 L15 29 L9 29 L18 17 L13 17 Z\" fill=\"#2f7a3a\"/><path d=\"M23 0.5 l1.8 3.6 l4 .5 l-2.9 2.8 l.7 4 l-3.6 -1.9 l-3.6 1.9 l.7 -4 l-2.9 -2.8 l4 -.5 z\" fill=\"#f1c40f\"/><circle cx=\"20\" cy=\"18\" r=\"2\" fill=\"#e74c3c\"/><circle cx=\"28\" cy=\"24\" r=\"2\" fill=\"#3498db\"/><circle cx=\"16\" cy=\"30\" r=\"2\" fill=\"#f1c40f\"/><circle cx=\"31\" cy=\"34\" r=\"2\" fill=\"#e74c3c\"/><circle cx=\"23\" cy=\"30\" r=\"2\" fill=\"#ecf0f1\"/>"},"penguin":{"occupiable":false,"name":"chim cánh cụt tập trượt","icon":"<ellipse cx=\"23\" cy=\"27\" rx=\"11\" ry=\"14\" fill=\"#2b2b2b\"/><ellipse cx=\"23\" cy=\"30\" rx=\"7\" ry=\"10\" fill=\"#fbfbfb\"/><circle cx=\"23\" cy=\"12\" r=\"7\" fill=\"#2b2b2b\"/><circle cx=\"20.5\" cy=\"11\" r=\"1.3\" fill=\"#fff\"/><circle cx=\"25.5\" cy=\"11\" r=\"1.3\" fill=\"#fff\"/><path d=\"M23 13 l4 2 l-4 2 z\" fill=\"#e67e22\"/><rect x=\"13\" y=\"40\" width=\"8\" height=\"3\" rx=\"1\" fill=\"#e67e22\"/><rect x=\"25\" y=\"40\" width=\"8\" height=\"3\" rx=\"1\" fill=\"#e67e22\"/>"},"cone":{"occupiable":false,"name":"cọc tiêu","icon":"<path d=\"M23 6 L33 38 L13 38 Z\" fill=\"#e67e22\"/><rect x=\"9\" y=\"37\" width=\"28\" height=\"5\" rx=\"1.5\" fill=\"#2b2b2b\"/><path d=\"M18.5 21 h9 l1.5 5 h-12 z\" fill=\"#fbfbfb\"/><path d=\"M16 30 h14 l1.5 5 h-17 z\" fill=\"#fbfbfb\"/>"},"counter":{"occupiable":false,"name":"quầy","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\"/>"},"skates":{"occupiable":false,"name":"kệ giày trượt","icon":"<rect x=\"5\" y=\"6\" width=\"36\" height=\"34\" fill=\"#8f6a44\" stroke=\"#5e4127\" stroke-width=\"1.5\"/><rect x=\"8\" y=\"10\" width=\"30\" height=\"10\" fill=\"#e6cfa8\"/><rect x=\"8\" y=\"24\" width=\"30\" height=\"10\" fill=\"#d4b98f\"/><g fill=\"#fff\" stroke=\"#3b3b3b\" stroke-width=\"1\"><path d=\"M10 18 v-6 h6 l3 4 v2 z\"/><path d=\"M22 18 v-6 h6 l3 4 v2 z\"/><path d=\"M10 32 v-6 h6 l3 4 v2 z\"/><path d=\"M22 32 v-6 h6 l3 4 v2 z\"/></g><g stroke=\"#8a8f96\" stroke-width=\"1.5\"><line x1=\"10\" y1=\"19.5\" x2=\"19\" y2=\"19.5\"/><line x1=\"22\" y1=\"19.5\" x2=\"31\" y2=\"19.5\"/><line x1=\"10\" y1=\"33.5\" x2=\"19\" y2=\"33.5\"/><line x1=\"22\" y1=\"33.5\" x2=\"31\" y2=\"33.5\"/></g>"},"stove":{"occupiable":false,"name":"lò sưởi","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":"bàn","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\"/>"},"kettle":{"occupiable":false,"name":"nồi rượu vang nóng","icon":"<ellipse cx=\"23\" cy=\"37\" rx=\"14\" ry=\"4.5\" fill=\"#8a5a2a\"/><path d=\"M8 20 q0 18 15 18 q15 0 15 -18 z\" fill=\"#b8702e\" stroke=\"#6b3f14\" stroke-width=\"1.5\"/><rect x=\"7\" y=\"17\" width=\"32\" height=\"5\" rx=\"2\" fill=\"#d08a44\" stroke=\"#6b3f14\" stroke-width=\"1.2\"/><path d=\"M15 14 q2 -4 0 -8 M23 13 q2 -4 0 -8 M31 14 q2 -4 0 -8\" fill=\"none\" stroke=\"#c9ced3\" stroke-width=\"1.6\" stroke-linecap=\"round\"/>"},"barrel":{"occupiable":false,"name":"thùng gỗ","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\"/>"},"lamp":{"occupiable":false,"name":"cột đèn","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\"/>"},"signpost":{"occupiable":false,"name":"biển chỉ đường ra bãi đỗ xe","icon":"<rect x=\"21\" y=\"14\" width=\"4\" height=\"28\" fill=\"#6b4a2b\"/><path d=\"M8 10 h26 l5 5 l-5 5 h-26 z\" fill=\"#e9d7a8\" stroke=\"#6b4a2b\" stroke-width=\"1.3\"/><text x=\"19\" y=\"19\" font-size=\"8\" font-weight=\"700\" fill=\"#3b2a14\" text-anchor=\"middle\" font-family=\"Oswald,sans-serif\">P</text>"}},"wallTypes":{"door":{"name":"cửa / lối thông giữa các khu vực","icon":"<rect x=\"8\" y=\"17\" width=\"30\" height=\"10\" rx=\"2\" fill=\"#8a5a34\" stroke=\"#3f2d1d\"/><circle cx=\"34\" cy=\"22\" r=\"1.6\" fill=\"#f0b429\"/>"},"gate":{"name":"cổng ra khỏi hội chợ","icon":"<rect x=\"8\" y=\"10\" width=\"30\" height=\"26\" rx=\"2\" fill=\"#b7352c\" stroke=\"#3f1d1a\" stroke-width=\"1.4\"/><path d=\"M16 23 h12 m-4 -5 l5 5 l-5 5\" fill=\"none\" stroke=\"#fff\" stroke-width=\"2.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>"}},"objects":[{"cell":[1,2],"type":"path"},{"cell":[2,2],"type":"path"},{"cell":[3,2],"type":"path"},{"cell":[4,2],"type":"path"},{"cell":[5,2],"type":"path"},{"cell":[6,2],"type":"path"},{"cell":[7,2],"type":"path"},{"cell":[8,2],"type":"path"},{"cell":[9,2],"type":"path"},{"cell":[10,2],"type":"path"},{"cell":[11,2],"type":"path"},{"cell":[12,2],"type":"path"},{"cell":[2,3],"type":"path"},{"cell":[2,4],"type":"path"},{"cell":[2,5],"type":"path"},{"cell":[2,6],"type":"path"},{"cell":[2,7],"type":"path"},{"cell":[2,8],"type":"path"},{"cell":[2,9],"type":"path"},{"cell":[2,10],"type":"path"},{"cell":[1,11],"type":"fireworks"},{"cell":[1,4],"type":"fir"},{"cell":[1,7],"type":"fir"},{"cell":[1,9],"type":"lantern"},{"cell":[1,1],"type":"bench"},{"cell":[3,1],"type":"lantern"},{"cell":[4,1],"type":"fir"},{"cell":[5,1],"type":"sled"},{"cell":[6,1],"type":"bench"},{"cell":[7,3],"type":"lantern"},{"cell":[9,1],"type":"snowman"},{"cell":[10,1],"type":"sled"},{"cell":[11,3],"type":"fir"},{"cell":[12,1],"type":"lantern"},{"cell":[6,7],"type":"xmastree"},{"cell":[3,8],"type":"penguin"},{"cell":[8,5],"type":"cone"},{"cell":[3,9],"type":"counter"},{"cell":[3,10],"type":"counter"},{"cell":[4,12],"type":"skates"},{"cell":[5,12],"type":"skates"},{"cell":[5,9],"type":"bench"},{"cell":[7,10],"type":"stove"},{"cell":[6,12],"type":"bench"},{"cell":[8,9],"type":"bench"},{"cell":[7,12],"type":"table"},{"cell":[12,5],"type":"counter"},{"cell":[12,6],"type":"counter"},{"cell":[12,7],"type":"counter"},{"cell":[12,8],"type":"kettle"},{"cell":[9,4],"type":"barrel"},{"cell":[9,8],"type":"barrel"},{"cell":[10,6],"type":"table"},{"cell":[11,4],"type":"bench"},{"cell":[10,8],"type":"stool"},{"cell":[9,12],"type":"lamp"},{"cell":[12,9],"type":"lamp"},{"cell":[12,12],"type":"signpost"}],"wallFeatures":[{"cell":[1,2],"side":"N","type":"gate"},{"cell":[12,11],"side":"S","type":"gate"},{"cell":[2,10],"side":"S","type":"door"},{"cell":[4,9],"side":"W","type":"door"},{"cell":[5,11],"side":"S","type":"door"},{"cell":[8,11],"side":"S","type":"door"},{"cell":[5,4],"side":"W","type":"door"},{"cell":[9,6],"side":"N","type":"door"},{"cell":[10,4],"side":"W","type":"door"},{"cell":[11,8],"side":"E","type":"door"}],"extras":[],"cellSize":46},"persons":[{"id":"A","name":"Amos","gender":"M","role":"skater","color":"#c62828","avatar":{"bg":"#3a5a7a","skin":"#e9c6a4","hair":"#3b2418","style":"short","shirt":"#b03a2e","beanie":"#c0392b","scarf":"#f4efe6"},"clue":"Anh ấy là <b>người ở xa nhất về phía bắc trên băng</b>.","job":"cầu thủ khúc côn cầu","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Amos\"><rect width=\"80\" height=\"80\" fill=\"#3a5a7a\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#b03a2e\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#e9c6a4\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#e9c6a4\"/><path d=\"M26 32 Q26 15 40 15 Q54 15 54 32 Q50 24 40 24 Q30 24 26 32 Z\" fill=\"#3b2418\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><path d=\"M24 31 Q24 11 40 11 Q56 11 56 31 Q48 21 40 21 Q32 21 24 31 Z\" fill=\"#c0392b\"/><rect x=\"23\" y=\"26\" width=\"34\" height=\"6\" rx=\"3\" fill=\"#c0392b\" stroke=\"rgba(0,0,0,.18)\"/><circle cx=\"40\" cy=\"10\" r=\"4\" fill=\"#f4efe6\"/><path d=\"M30 58 Q40 70 50 58 L48 66 Q40 76 32 66 Z\" fill=\"#f4efe6\"/></svg>","solverRole":"guest","constraints":[{"type":"extreme_in_area","dir":"N"}]},{"id":"B","name":"Bonnie","gender":"F","role":"skater","color":"#2e7d32","avatar":{"bg":"#5b3a6e","skin":"#f4d3b6","hair":"#d9b464","style":"long","shirt":"#2f6f5a","earmuffs":"#f2a7c4","scarf":"#2f6f5a"},"clue":"Cô ấy <b>trượt thẳng đến cây thông Noel</b>.","job":"vận động viên trượt băng nghệ thuật","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Bonnie\"><rect width=\"80\" height=\"80\" fill=\"#5b3a6e\"/><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=\"#2f6f5a\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#f4d3b6\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#f4d3b6\"/><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\"/><path d=\"M27 30 Q40 15 53 30\" fill=\"none\" stroke=\"#f2a7c4\" stroke-width=\"3\"/><circle cx=\"26\" cy=\"35\" r=\"5\" fill=\"#f2a7c4\"/><circle cx=\"54\" cy=\"35\" r=\"5\" fill=\"#f2a7c4\"/><path d=\"M30 58 Q40 70 50 58 L48 66 Q40 76 32 66 Z\" fill=\"#2f6f5a\"/></svg>","solverRole":"guest","constraints":[{"type":"glide","obj":"xmastree"}]},{"id":"C","name":"Clive","gender":"M","role":"skater","color":"#1565c0","avatar":{"bg":"#4b4b6d","skin":"#f1c8a5","hair":"#8a5a2a","style":"slick","shirt":"#22406f","scarf":"#c9a227"},"clue":"Anh ấy ở <b>đúng hai hàng về phía bắc của Bonnie</b>.","job":"huấn luyện viên trượt tuyết","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Clive\"><rect width=\"80\" height=\"80\" fill=\"#4b4b6d\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#22406f\"/><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=\"#8a5a2a\"/><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=\"#c9a227\"/></svg>","solverRole":"guest","constraints":[{"type":"rel","q":"B","dir":"N","exact":2}]},{"id":"D","name":"Dakota","gender":"F","role":"skater","color":"#6a1b9a","avatar":{"bg":"#3f6d5a","skin":"#8a5a3c","hair":"#1a1210","style":"curly","shirt":"#7a4d9a","beanie":"#f0b429","earrings":true},"clue":"Cô ấy ở <b>một góc của sân băng</b>. <b>Đúng một cột về phía tây</b> của cô ấy có một <b>người đàn ông</b>.","job":"sinh viên","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Dakota\"><rect width=\"80\" height=\"80\" fill=\"#3f6d5a\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#7a4d9a\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#8a5a3c\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#8a5a3c\"/><path d=\"M25 34 q-3 -8 4 -10 q0 -8 8 -7 q3 -4 8 -1 q6 -3 9 3 q7 0 5 8 q4 4 -1 9 q-6 -14 -16 -12 q-9 -1 -17 10 Z\" fill=\"#1a1210\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><path d=\"M24 31 Q24 11 40 11 Q56 11 56 31 Q48 21 40 21 Q32 21 24 31 Z\" fill=\"#f0b429\"/><rect x=\"23\" y=\"26\" width=\"34\" height=\"6\" rx=\"3\" fill=\"#f0b429\" stroke=\"rgba(0,0,0,.18)\"/><circle cx=\"40\" cy=\"10\" r=\"4\" fill=\"#f4efe6\"/><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":"corner_of_area"},{"type":"rel_any","dir":"W","exact":1,"gender":"M"}]},{"id":"E","name":"Elliot","gender":"M","role":"skater","color":"#e65100","avatar":{"bg":"#2c3e58","skin":"#f0cdb0","hair":"#1c1a1a","style":"short","shirt":"#d97b2a","beanie":"#2f6f5a","glasses":true},"clue":"Anh ấy ở cạnh một <b>đèn lồng</b>.","job":"người đưa thư","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Elliot\"><rect width=\"80\" height=\"80\" fill=\"#2c3e58\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#d97b2a\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#f0cdb0\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#f0cdb0\"/><path d=\"M26 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\"/><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 31 Q24 11 40 11 Q56 11 56 31 Q48 21 40 21 Q32 21 24 31 Z\" fill=\"#2f6f5a\"/><rect x=\"23\" y=\"26\" width=\"34\" height=\"6\" rx=\"3\" fill=\"#2f6f5a\" stroke=\"rgba(0,0,0,.18)\"/><circle cx=\"40\" cy=\"10\" r=\"4\" fill=\"#f4efe6\"/></svg>","solverRole":"guest","constraints":[{"type":"beside","obj":"lantern"}]},{"id":"F","name":"Freya","gender":"F","role":"staff","color":"#00838f","avatar":{"bg":"#7a3a2a","skin":"#f4d5bb","hair":"#b7482c","style":"bun","shirt":"#1f8a8a","apron":true},"clue":"Cô ấy là <b>người duy nhất ở cạnh quầy</b>.","job":"chủ quán","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Freya\"><rect width=\"80\" height=\"80\" fill=\"#7a3a2a\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#1f8a8a\"/><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=\"#f4d5bb\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#f4d5bb\"/><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":"only_beside","obj":"counter"}]},{"id":"G","name":"Gilbert","gender":"M","role":"staff","color":"#ad1457","avatar":{"bg":"#3f3f3f","skin":"#e4b998","hair":"#8a8a8a","style":"bald","shirt":"#4a4a4a","beard":true,"earmuffs":"#3b3b3b"},"clue":"Anh ấy ở cạnh <b>giá pháo hoa</b>.","job":"thợ pháo hoa","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Gilbert\"><rect width=\"80\" height=\"80\" fill=\"#3f3f3f\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#4a4a4a\"/><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=\"#8a8a8a\"/><path d=\"M54 30 Q54 22 50 20 L50 34 Q54 34 54 30 Z\" fill=\"#8a8a8a\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><path d=\"M27 38 Q30 52 40 53 Q50 52 53 38 Q50 47 40 48 Q30 47 27 38 Z\" fill=\"#8a8a8a\"/><path d=\"M27 30 Q40 15 53 30\" fill=\"none\" stroke=\"#3b3b3b\" stroke-width=\"3\"/><circle cx=\"26\" cy=\"35\" r=\"5\" fill=\"#3b3b3b\"/><circle cx=\"54\" cy=\"35\" r=\"5\" fill=\"#3b3b3b\"/></svg>","solverRole":"staff","constraints":[{"type":"beside","obj":"fireworks"}]},{"id":"H","name":"Heidi","gender":"F","role":"staff","color":"#5d4037","avatar":{"bg":"#33526e","skin":"#f6d8c0","hair":"#6b3f22","style":"ponytail","shirt":"#8a5a2a","beanie":"#b03a2e","scarf":"#f4efe6"},"clue":"Cô ấy ở <b>trước một cánh cửa</b>. <b>Đúng ba hàng về phía nam</b> của cô ấy có một <b>người đàn ông</b>.","job":"nhân viên cho thuê giày","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Heidi\"><rect width=\"80\" height=\"80\" fill=\"#33526e\"/><path d=\"M50 30 Q64 34 60 62 L54 62 Q56 40 48 36 Z\" fill=\"#6b3f22\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#8a5a2a\"/><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=\"#6b3f22\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><path d=\"M24 31 Q24 11 40 11 Q56 11 56 31 Q48 21 40 21 Q32 21 24 31 Z\" fill=\"#b03a2e\"/><rect x=\"23\" y=\"26\" width=\"34\" height=\"6\" rx=\"3\" fill=\"#b03a2e\" stroke=\"rgba(0,0,0,.18)\"/><circle cx=\"40\" cy=\"10\" r=\"4\" fill=\"#f4efe6\"/><path d=\"M30 58 Q40 70 50 58 L48 66 Q40 76 32 66 Z\" fill=\"#f4efe6\"/></svg>","solverRole":"staff","constraints":[{"type":"wall","feature":"door"},{"type":"rel_any","dir":"S","exact":3,"gender":"M"}]},{"id":"I","name":"Ivy","gender":"F","role":"visitor","color":"#827717","avatar":{"bg":"#8c3a5a","skin":"#e9c6a4","hair":"#1c1a1a","style":"bob","shirt":"#7a6a3c","glasses":true,"scarf":"#c9a227"},"clue":"Cô ấy ở <b>hàng dưới cùng</b>.","job":"nhiếp ảnh gia","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Ivy\"><rect width=\"80\" height=\"80\" fill=\"#8c3a5a\"/><path d=\"M22 40 Q22 14 40 14 Q58 14 58 40 L58 58 L22 58 Z\" fill=\"#1c1a1a\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#7a6a3c\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#e9c6a4\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#e9c6a4\"/><path d=\"M26 36 Q26 16 40 16 Q54 16 54 36 Q52 24 40 24 Q28 24 26 36 Z\" fill=\"#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\"/><path d=\"M30 58 Q40 70 50 58 L48 66 Q40 76 32 66 Z\" fill=\"#c9a227\"/></svg>","solverRole":"guest","constraints":[{"type":"row","rows":[12]}]},{"id":"J","name":"Joel","gender":"M","role":"visitor","color":"#283593","avatar":{"bg":"#5a2a2a","skin":"#d9a57a","hair":"#3b2418","style":"short","shirt":"#283593","beanie":"#3498db","scarf":"#f4efe6"},"clue":"Anh ấy ngồi trên một <b>xe trượt tuyết</b>.","job":"người chơi xe trượt","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Joel\"><rect width=\"80\" height=\"80\" fill=\"#5a2a2a\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#283593\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#d9a57a\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#d9a57a\"/><path d=\"M26 32 Q26 15 40 15 Q54 15 54 32 Q50 24 40 24 Q30 24 26 32 Z\" fill=\"#3b2418\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><path d=\"M24 31 Q24 11 40 11 Q56 11 56 31 Q48 21 40 21 Q32 21 24 31 Z\" fill=\"#3498db\"/><rect x=\"23\" y=\"26\" width=\"34\" height=\"6\" rx=\"3\" fill=\"#3498db\" stroke=\"rgba(0,0,0,.18)\"/><circle cx=\"40\" cy=\"10\" r=\"4\" fill=\"#f4efe6\"/><path d=\"M30 58 Q40 70 50 58 L48 66 Q40 76 32 66 Z\" fill=\"#f4efe6\"/></svg>","solverRole":"guest","constraints":[{"type":"on","obj":"sled"}]},{"id":"K","name":"Kitty","gender":"F","role":"visitor","color":"#33691e","avatar":{"bg":"#2f5d7c","skin":"#f1cfb2","hair":"#c9c3b8","style":"bun","shirt":"#33691e","earmuffs":"#f4efe6","necklace":true},"clue":"Cô ấy ở cạnh một <b>thùng gỗ</b>.","job":"giáo viên về hưu","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Kitty\"><rect width=\"80\" height=\"80\" fill=\"#2f5d7c\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#33691e\"/><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=\"#f1cfb2\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#f1cfb2\"/><circle cx=\"40\" cy=\"15\" r=\"7\" fill=\"#c9c3b8\"/><path d=\"M26 32 Q26 16 40 16 Q54 16 54 32 Q50 24 40 24 Q30 24 26 32 Z\" fill=\"#c9c3b8\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><path d=\"M27 30 Q40 15 53 30\" fill=\"none\" stroke=\"#f4efe6\" stroke-width=\"3\"/><circle cx=\"26\" cy=\"35\" r=\"5\" fill=\"#f4efe6\"/><circle cx=\"54\" cy=\"35\" r=\"5\" fill=\"#f4efe6\"/></svg>","solverRole":"guest","constraints":[{"type":"beside","obj":"barrel"}]},{"id":"V","name":"Virgil","gender":"M","role":"victim","color":"#1b1b1b","avatar":{"bg":"#3a4a3a","skin":"#e4b998","hair":"#cfcfd2","style":"slick","shirt":"#22406f","mustache":true,"mustacheColor":"#bdbdbd","whistle":true},"clue":"<b>Nạn nhân.</b> Ông được tìm thấy trên <b>ghế băng</b> trong lều giày trượt – một mình với hung thủ.","job":"quản lý sân băng","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Virgil\"><rect width=\"80\" height=\"80\" fill=\"#3a4a3a\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#22406f\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#e4b998\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#e4b998\"/><path d=\"M26 30 Q27 16 44 15 Q56 15 55 26 Q48 22 40 23 Q30 24 26 30 Z\" fill=\"#cfcfd2\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><path d=\"M33 41 Q40 37 47 41 Q40 43 33 41 Z\" fill=\"#bdbdbd\"/><path d=\"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\"/><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":["Hut"]},{"type":"on","obj":"bench"}]}],"victim":"V","murderer":"C","solution":{"G":[1,12],"H":[2,10],"A":[3,7],"C":[4,11],"V":[5,9],"B":[6,4],"E":[7,2],"D":[8,8],"K":[9,5],"J":[10,1],"F":[11,6],"I":[12,3]},"walkthrough":[{"place":["V"],"text":"Virgil nằm trên ghế băng trong lều giày trượt: <b>R5C9</b>. Hung thủ ở một mình với ông trong lều, tại một ô ngoài hàng và cột của Virgil: <b>R3C11, R3C12, R4C10 hoặc R4C11</b>."},{"text":"Giờ đến đường tẩu thoát – hung thủ chỉ đi qua các khu vực trống. Qua cổng chính? Khi đó cả <b>Công viên</b> phải trống, nhưng hàng 1 và 2 chỉ gồm ô Công viên, và hàng nào cũng có người: không thể. Qua mặt băng, lều rượu vang nóng và cầu ván? Khi đó <b>Sân băng, Lều rượu vang nóng và Cầu ván</b> đều trống, và các cột 4–8 chỉ có thể được lấp từ hàng 1–2 – năm cột, hai hàng: không thể. Chỉ còn một lối: lều giày trượt → <b>Lều sưởi</b> → <b>Cầu ván</b> → cổng bãi đỗ xe. <b>Lều sưởi và cầu ván trống</b> – gạch bỏ cả 28 ô. Hệ quả: các cột 9–12 cần bốn người, mà ở đó chỉ còn lều giày trượt và hàng 1–2 của Công viên: Virgil, hung thủ và hai người của hàng 1 và 2 – vì thế hai người này ở trong Công viên ở <b>cột 10–12</b> (cột 9 là của Virgil)."},{"place":["H","J","G"],"text":"Đếm Công viên: hàng 1–2 chứa hai người, cột 1–3 thêm ba người – <b>tối đa năm</b>. Năm nghi phạm không thể ở đâu khác: Elliot (mọi đèn lồng đều ở Công viên), Gilbert (giá pháo hoa), Joel (cả hai xe trượt), Ivy (hàng dưới cùng: R12C4 cạnh quầy của lều rượu, mà chỉ Freya ở cạnh quầy) và Heidi. Heidi ở trước một cánh cửa: cửa lều giày trượt (R2C10) hoặc một cửa của lều rượu (R9C6, R10C4, R11C8) – nhưng ba hàng về phía nam các cửa lều rượu là hàng 12, hàng của Ivy, một phụ nữ, hoặc không có gì. Vậy <b>Heidi R2C10</b> (ba hàng phía nam cô ấy: Virgil). Công viên đã đầy – không còn ai khác trong đó. <b>Joel</b>: xe trượt ở R5C1 nằm trên hàng của Virgil, nên <b>R10C1</b>. <b>Gilbert</b> cạnh giá pháo hoa: R1C10 là cột của Heidi, R2C11 là hàng của cô ấy – <b>R1C12</b>. Cột 10 và 12 đã có người, nên hung thủ ở <b>cột 11</b>: R3C11 hoặc R4C11."},{"place":["C"],"cand":{"F":[[11,5],[11,6],[11,7]],"I":[[12,1],[12,2],[12,3]],"B":[[6,4],[6,5],[6,6],[6,8]],"K":[[9,5],[9,7]],"E":[[3,2],[7,2],[8,3]]},"text":"Các hàng 9–12. Kitty ở cạnh thùng gỗ (R9C5, R9C7, R10C4 hoặc R10C8); hàng 10 là của Joel, nên Kitty ở <b>hàng 9</b>. Ivy có hàng 12 (R12C1, R12C2 hoặc R12C3). Ai chiếm hàng 11? Các ô cạnh đèn lồng của Elliot ở nơi khác, người trượt băng ở trên băng, Clive cao hơn Bonnie nhiều nhất hai hàng – chỉ có thể là <b>Freya</b>: cạnh quầy lều rượu, R11C5, R11C6 hoặc R11C7. Vậy Freya ở lều rượu, không phải trong lều giày trượt, và <b>Clive</b> là người duy nhất còn lại có thể ở cùng Virgil: <b>hắn là hung thủ</b>. Clive ở đúng hai hàng phía bắc Bonnie; từ hàng 3 thì Bonnie rơi vào hàng của Virgil, nên <b>Clive R4C11</b> và <b>Bonnie ở hàng 6</b>, trượt về phía cây thông dọc hàng 6: R6C4, R6C5, R6C6 hoặc R6C8. Elliot cạnh đèn lồng, khi các hàng 1, 2, 6, 10, 12 và cột 1 đã bị chiếm: R3C2, R7C2 hoặc R8C3."},{"place":["D","A","E","I"],"cand":{"F":[[11,5],[11,6],[11,7]],"B":[[6,4],[6,5],[6,6]],"K":[[9,5],[9,7]]},"text":"Dakota ở một góc sân băng. Hàng 4 là của Clive, còn ở hàng 3 – hàng trên cùng của sân – không ai có thể ở phía bắc cô ấy trên băng, trong khi Amos là người trượt băng xa nhất về phía bắc. Vậy R8C4 hoặc R8C8. Đúng một cột về phía tây của cô ấy có một người đàn ông: tại R8C4 đó là cột 3, nơi người đàn ông duy nhất có thể có mặt là Elliot ở R8C3 – ngay hàng của Dakota. Vậy <b>Dakota R8C8</b>, và người đàn ông ở cột 7 là Amos (những người đàn ông khác ở các cột 1, 2–3, 11 và 12). Amos ở trên băng phía bắc hàng 6 của Bonnie, còn R4C7 và R5C7 nằm ở hàng của Clive và Virgil: <b>Amos R3C7</b>. Hàng 3 và 8 đã hết, nên <b>Elliot R7C2</b>, và với cột 1 và 2 đã bị chiếm, <b>Ivy R12C3</b>."},{"place":["K","F","B"],"text":"Còn lại các cột 4, 5 và 6 cho Bonnie (hàng 6), Kitty (hàng 9) và Freya (hàng 11). Ô cạnh thùng của Kitty ở hàng 9 khi cột 7 đã bị chiếm: <b>Kitty R9C5</b>. Freya: R11C5 và R11C7 bị loại – <b>Freya R11C6</b>. Bonnie trượt đến cây thông từ ô trống cuối cùng của hàng 6: <b>Bonnie R6C4</b>."},{"final":true,"text":"Vụ án khép lại. Clive trả giày trượt, ở một mình với Virgil trong lều – rồi lẻn qua lều sưởi vắng lặng và cầu ván trống ra bãi đỗ xe. Những cánh cửa được vẽ và việc đếm hàng, đếm cột đã tố cáo lộ trình của hắn trước khi bất kỳ người trượt băng nào được đặt xuống."}],"solver":{"rules":[{"type":"escape","links":[["Park","Hut"],["Hut","Rink"],["Hut","Tent"],["Tent","Boardwalk"],["Park","Rink"],["Rink","Tavern"],["Park","Tavern"],["Tavern","Boardwalk"]],"exits":["Park","Boardwalk"]}],"groups":{"Stalls":["Hut","Tent","Tavern"]},"occupiable":["path","bench","sled","stool"]},"verification":{"tool":"tools/murdoku_solver.py","unique":true,"guessFree":true,"checked":"2026-09-15"}}