{"format":"murdoku-puzzle/1","id":"night-train","version":4,"difficulty":"hard","level":7,"size":{"rows":12,"cols":12},"languages":["en","hu","de","fr","es","it","pt","ca","nl","pl","cs","ro","fi","tr","el","ru","uk","vi","ar","ko","ja","zh-Hans","zh-Hant"],"defaultLanguage":"en","title":"Ночной поезд","tagline":"23:40 · Ночной экспресс · Платформа 3","author":"mathace","concept":"Murdoku – Manuel Garand (murdoku.com); unofficial fan-made case","created":"2026-09-14","story":"Ночной экспресс ждёт отправления у платформы 3. За двадцать минут до отправления проводник Victor найден мёртвым. В поезде и на вокзале было одиннадцать человек – один из них убийца. Прочитай показания каждого подозреваемого и определи точное положение всех на месте преступления. Убийца был наедине с жертвой, в той же зоне.","rules":{"standard":["В каждой <b>строке</b> и в каждом <b>столбце</b> ровно <b>один человек</b>. Как только ты кого-то разместил, вычеркни всю его строку и столбец.","<b>«Рядом»</b> = непосредственно слева, справа, сверху или снизу, и <b>в той же зоне</b>.","Направления относятся к строкам и столбцам, не обязательно к тому же столбцу: <i>«он был севернее»</i> = в строке выше; <i>«ровно на одну строку севернее него был кто-то»</i> = обитатель строки прямо над ним, в любом столбце. <i>«Стояла»</i> = не на стуле и не на кровати."],"special":["Все от <b>Hugo до Victor</b> были <b>персоналом</b>; остальные – <b>пассажирами</b>. Только персонал мог находиться в <b>багажном вагоне</b> и в <b>кассе</b>.","В каждой зоне <b>здания вокзала</b> был <b>хотя бы один человек</b>."]},"roleNames":{"passenger":"пассажир","staff":"персонал","victim":"жертва"},"personGroups":[{"id":"passengers","name":"Пассажиры","persons":["A","B","C","D","E","F","G"]},{"id":"staff","name":"Персонал","persons":["H","I","J","K","V"]}],"map":{"groups":[{"id":"train","name":"ПОЕЗД","style":"train"},{"id":"platform","name":"ПЛАТФОРМА","style":"platform"},{"id":"building","name":"ЗДАНИЕ ВОКЗАЛА","style":"building"}],"gaps":[{"afterRow":4,"px":22,"style":"rails"},{"afterRow":6,"px":12,"style":"wall"}],"areas":[{"id":"Sleeper A","cells":[[1,1],[1,2],[2,1],[2,2],[3,1],[3,2],[4,1],[4,2]],"fill":"#cdd8ea","group":"train","name":"Купе A"},{"id":"Sleeper B","cells":[[1,3],[1,4],[2,3],[2,4],[3,3],[3,4],[4,3],[4,4]],"fill":"#b9cae3","group":"train","name":"Купе B"},{"id":"Dining Car","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],[4,5],[4,6],[4,7],[4,8]],"fill":"#f0dfbf","pattern":"planks","group":"train","name":"Вагон-ресторан"},{"id":"Bar Car","cells":[[1,9],[1,10],[2,9],[2,10],[3,9],[3,10],[4,9],[4,10]],"fill":"#e6cc9c","pattern":"planks","group":"train","name":"Вагон-бар"},{"id":"Luggage Car","cells":[[1,11],[1,12],[2,11],[2,12],[3,11],[3,12],[4,11],[4,12]],"fill":"#d3cfc4","group":"train","name":"Багажный вагон"},{"id":"Platform","cells":[[5,1],[5,2],[5,3],[5,4],[5,5],[5,6],[5,7],[5,8],[5,9],[5,10],[5,11],[5,12],[6,1],[6,2],[6,3],[6,4],[6,5],[6,6],[6,7],[6,8],[6,9],[6,10],[6,11],[6,12]],"fill":"#dddcd6","group":"platform","labelAt":[6,6.5],"name":"Платформа"},{"id":"Ticket Office","cells":[[7,1],[7,2],[7,3],[8,1],[8,2],[8,3],[9,1],[9,2],[9,3]],"fill":"#ead1ca","group":"building","name":"Касса"},{"id":"Waiting Room","cells":[[7,4],[7,5],[7,6],[7,7],[7,8],[8,4],[8,5],[8,6],[8,7],[8,8],[9,4],[9,5],[9,6],[9,7],[9,8]],"fill":"#dfe7cd","pattern":"marble","group":"building","name":"Зал ожидания"},{"id":"Newsstand","cells":[[7,9],[7,10],[7,11],[7,12],[8,9],[8,10],[8,11],[8,12]],"fill":"#f6e5b2","group":"building","name":"Киоск"},{"id":"Cafe","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],[10,8],[11,8],[12,8]],"fill":"#f1d3c0","group":"building","labelAt":[12,10.5],"name":"Кафе"},{"id":"Restrooms","cells":[[10,1],[10,2],[10,3],[11,1],[11,2],[11,3],[12,1],[12,2],[12,3]],"fill":"#cfe4e8","pattern":"tiles","group":"building","name":"Туалеты"},{"id":"Entrance Hall","cells":[[10,4],[10,5],[10,6],[10,7],[11,4],[11,5],[11,6],[11,7],[12,4],[12,5],[12,6],[12,7]],"fill":"#e8e4d9","pattern":"marble","group":"building","name":"Вестибюль"}],"objectTypes":{"bed":{"occupiable":true,"name":"кровать","icon":"<rect x=\"7\" y=\"1\" width=\"32\" height=\"44\" rx=\"6\" fill=\"#f7f4ee\" stroke=\"#8c8a82\" stroke-width=\"1.5\"/><rect x=\"11\" y=\"5\" width=\"24\" height=\"10\" rx=\"4\" fill=\"#dfe6ea\" stroke=\"#8c8a82\"/><rect x=\"9\" y=\"19\" width=\"28\" height=\"22\" rx=\"4\" fill=\"#9fb3d6\"/>","iconTall":"<rect x=\"7\" y=\"3\" width=\"32\" height=\"86\" rx=\"7\" fill=\"#f7f4ee\" stroke=\"#8c8a82\" stroke-width=\"1.5\"/><rect x=\"11\" y=\"7\" width=\"24\" height=\"12\" rx=\"4\" fill=\"#dfe6ea\" stroke=\"#8c8a82\"/><rect x=\"9\" y=\"24\" width=\"28\" height=\"61\" rx=\"4\" fill=\"#9fb3d6\"/>"},"chair":{"occupiable":true,"legendIcons":["chair","bench"],"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\"/>"},"stool":{"occupiable":true,"solverType":"chair","legendGroup":"chair","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\"/>"},"bench":{"occupiable":true,"solverType":"chair","legendGroup":"chair","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\"/>"},"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\"/>"},"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\"/>"},"luggage":{"occupiable":false,"name":"багаж","icon":"<rect x=\"8\" y=\"22\" width=\"30\" height=\"16\" rx=\"3\" fill=\"#6f5238\" stroke=\"#3f2d1d\" stroke-width=\"1.3\"/><rect x=\"12\" y=\"9\" width=\"22\" height=\"12\" rx=\"3\" fill=\"#a15c3e\" stroke=\"#3f2d1d\" stroke-width=\"1.3\"/><rect x=\"19\" y=\"5\" width=\"8\" height=\"4\" rx=\"2\" fill=\"#3f2d1d\"/>"},"trolley":{"occupiable":false,"name":"тележка","icon":"<rect x=\"7\" y=\"12\" width=\"32\" height=\"18\" rx=\"3\" fill=\"#9aa1a8\" stroke=\"#3d444b\" stroke-width=\"1.5\"/><rect x=\"11\" y=\"6\" width=\"24\" height=\"10\" rx=\"2\" fill=\"#a15c3e\" stroke=\"#3f2d1d\"/><circle cx=\"13\" cy=\"35\" r=\"4\" fill=\"#2b2f33\"/><circle cx=\"33\" cy=\"35\" r=\"4\" fill=\"#2b2f33\"/><line x1=\"39\" y1=\"12\" x2=\"42\" y2=\"4\" stroke=\"#3d444b\" stroke-width=\"2\"/>"},"pillar":{"occupiable":false,"name":"колонна","icon":"<circle cx=\"23\" cy=\"23\" r=\"12\" fill=\"#b9b6ae\" stroke=\"#5b5852\" stroke-width=\"2\"/><circle cx=\"23\" cy=\"23\" r=\"6\" fill=\"#9a968d\"/>"},"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\"/>"},"tv":{"occupiable":false,"name":"экран","icon":"<rect x=\"6\" y=\"10\" width=\"34\" height=\"24\" rx=\"2\" fill=\"#1c232c\" stroke=\"#0b0e12\" stroke-width=\"1.5\"/><rect x=\"9\" y=\"14\" width=\"22\" height=\"3\" fill=\"#f0b429\"/><rect x=\"9\" y=\"20\" width=\"26\" height=\"3\" fill=\"#f0b429\"/><rect x=\"9\" y=\"26\" width=\"18\" height=\"3\" fill=\"#7fc4d8\"/><rect x=\"18\" y=\"34\" width=\"10\" height=\"4\" fill=\"#0b0e12\"/>"},"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\"/>"},"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\"/>"},"toilet":{"occupiable":false,"name":"унитаз","icon":"<rect x=\"14\" y=\"6\" width=\"18\" height=\"10\" rx=\"2\" fill=\"#dfe6ea\" stroke=\"#6b7680\" stroke-width=\"1.5\"/><ellipse cx=\"23\" cy=\"30\" rx=\"11\" ry=\"12\" fill=\"#ffffff\" stroke=\"#6b7680\" stroke-width=\"1.5\"/><ellipse cx=\"23\" cy=\"30\" rx=\"6\" ry=\"7\" fill=\"#c9d6dd\"/>"}},"wallTypes":{"window":{"name":"окно","icon":"<rect x=\"4\" y=\"18\" width=\"38\" height=\"8\" rx=\"2\" fill=\"#bfe3f2\" stroke=\"#4a7c95\"/>"},"door":{"name":"дверь","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\"/>"}},"objects":[{"cell":[1,1],"type":"bed","span":[2,1]},{"cell":[3,1],"type":"table"},{"cell":[4,1],"type":"shelf"},{"cell":[1,4],"type":"bed","span":[2,1]},{"cell":[3,4],"type":"table"},{"cell":[4,4],"type":"shelf"},{"cell":[2,5],"type":"table"},{"cell":[2,8],"type":"table"},{"cell":[1,5],"type":"chair"},{"cell":[3,5],"type":"chair"},{"cell":[1,8],"type":"chair"},{"cell":[3,8],"type":"chair"},{"cell":[4,8],"type":"plant"},{"cell":[2,9],"type":"counter"},{"cell":[3,9],"type":"counter"},{"cell":[2,10],"type":"stool"},{"cell":[3,10],"type":"stool"},{"cell":[1,11],"type":"luggage"},{"cell":[1,12],"type":"luggage"},{"cell":[2,12],"type":"luggage"},{"cell":[4,11],"type":"luggage"},{"cell":[3,12],"type":"luggage"},{"cell":[6,3],"type":"bench"},{"cell":[6,8],"type":"bench"},{"cell":[5,5],"type":"pillar"},{"cell":[5,10],"type":"pillar"},{"cell":[5,12],"type":"trolley"},{"cell":[6,1],"type":"vending"},{"cell":[7,1],"type":"counter"},{"cell":[7,2],"type":"counter"},{"cell":[7,3],"type":"counter"},{"cell":[8,2],"type":"chair"},{"cell":[8,1],"type":"shelf"},{"cell":[9,3],"type":"shelf"},{"cell":[7,6],"type":"tv"},{"cell":[8,4],"type":"chair"},{"cell":[8,5],"type":"chair"},{"cell":[8,7],"type":"chair"},{"cell":[8,8],"type":"chair"},{"cell":[9,7],"type":"plant"},{"cell":[7,11],"type":"shelf"},{"cell":[7,12],"type":"shelf"},{"cell":[8,12],"type":"counter"},{"cell":[9,10],"type":"counter"},{"cell":[9,11],"type":"counter"},{"cell":[9,12],"type":"shelf"},{"cell":[11,9],"type":"table"},{"cell":[11,11],"type":"table"},{"cell":[10,9],"type":"chair"},{"cell":[12,9],"type":"chair"},{"cell":[10,11],"type":"chair"},{"cell":[12,11],"type":"chair"},{"cell":[10,1],"type":"sink"},{"cell":[12,1],"type":"toilet"},{"cell":[10,4],"type":"plant"}],"wallFeatures":[{"cell":[1,1],"side":"N","type":"window"},{"cell":[1,2],"side":"N","type":"window"},{"cell":[1,3],"side":"N","type":"window"},{"cell":[1,4],"side":"N","type":"window"},{"cell":[1,5],"side":"N","type":"window"},{"cell":[1,6],"side":"N","type":"window"},{"cell":[1,7],"side":"N","type":"window"},{"cell":[1,8],"side":"N","type":"window"},{"cell":[1,9],"side":"N","type":"window"},{"cell":[1,10],"side":"N","type":"window"},{"cell":[12,5],"side":"S","type":"door"},{"cell":[12,6],"side":"S","type":"door"}],"extras":[{"type":"safetyLine","row":5}],"cellSize":46},"persons":[{"id":"A","name":"Anna","gender":"F","role":"passenger","color":"#c62828","avatar":{"bg":"#c96a4a","skin":"#f1c8a5","hair":"#3b2418","style":"long","shirt":"#3d8a8a"},"clue":"Она была рядом с <b>растением</b>. Она <b>не сидела</b>.","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Anna\"><rect width=\"80\" height=\"80\" fill=\"#c96a4a\"/><path d=\"M22 42 Q20 14 40 14 Q60 14 58 42 L62 72 L18 72 Z\" fill=\"#3b2418\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#3d8a8a\"/><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 36 Q26 16 40 16 Q54 16 54 36 Q52 24 40 24 Q28 24 26 36 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\"/></svg>","solverRole":"passenger","constraints":[{"type":"beside","obj":"plant"},{"type":"not_on","obj":"chair"}]},{"id":"B","name":"Bruno","gender":"M","role":"passenger","color":"#2e7d32","avatar":{"bg":"#4b6d4e","skin":"#e7b98f","hair":"#5a3a22","style":"short","shirt":"#6b7a3a","beard":true},"clue":"Ровно на <b>один столбец западнее</b> него была <b>женщина</b>.","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Bruno\"><rect width=\"80\" height=\"80\" fill=\"#4b6d4e\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#6b7a3a\"/><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=\"#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":"passenger","constraints":[{"type":"rel_any","dir":"W","exact":1,"gender":"F"}]},{"id":"C","name":"Clara","gender":"F","role":"passenger","color":"#1565c0","avatar":{"bg":"#6a4d8a","skin":"#f4d3b6","hair":"#d9b464","style":"bob","shirt":"#8a4d7a","glasses":true},"clue":"Она была рядом с <b>полкой</b>.","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Clara\"><rect width=\"80\" height=\"80\" fill=\"#6a4d8a\"/><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=\"#8a4d7a\"/><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\"/><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":"passenger","constraints":[{"type":"beside","obj":"shelf"}]},{"id":"D","name":"Dominic","gender":"M","role":"passenger","color":"#6a1b9a","avatar":{"bg":"#33526e","skin":"#d9a57a","hair":"#1c1a1a","style":"short","shirt":"#6f6f73","headphones":true},"clue":"Он <b>сидел на стуле</b>. Ровно на <b>одну строку севернее</b> него был член <b>персонала</b>.","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Dominic\"><rect width=\"80\" height=\"80\" fill=\"#33526e\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#6f6f73\"/><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=\"#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=\"M25 34 Q25 12 40 12 Q55 12 55 34\" fill=\"none\" stroke=\"#111\" stroke-width=\"3\"/><rect x=\"21\" y=\"30\" width=\"7\" height=\"12\" rx=\"3\" fill=\"#111\"/><rect x=\"52\" y=\"30\" width=\"7\" height=\"12\" rx=\"3\" fill=\"#111\"/></svg>","solverRole":"passenger","constraints":[{"type":"on","obj":"chair"},{"type":"rel_any","dir":"N","exact":1,"role":"staff"}]},{"id":"E","name":"Esther","gender":"F","role":"passenger","color":"#e65100","avatar":{"bg":"#8c3a3a","skin":"#f6d8c0","hair":"#b7482c","style":"curly","shirt":"#3d7a4b"},"clue":"Она <b>сидела на стуле</b> рядом со <b>столом</b>. Она была <b>одна</b>.","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Esther\"><rect width=\"80\" height=\"80\" fill=\"#8c3a3a\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#3d7a4b\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#f6d8c0\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#f6d8c0\"/><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=\"#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":"passenger","constraints":[{"type":"on","obj":"chair"},{"type":"beside","obj":"table"},{"type":"alone"}]},{"id":"F","name":"Felix","gender":"M","role":"passenger","color":"#00838f","avatar":{"bg":"#7a6a3c","skin":"#e9c6a4","hair":"#c9c3b8","style":"bald","shirt":"#5a3f2a","glasses":true,"mustache":true},"clue":"Он был в <b>первом столбце</b>.","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Felix\"><rect width=\"80\" height=\"80\" fill=\"#7a6a3c\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#5a3f2a\"/><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 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\"/><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=\"#3a2a1c\"/></svg>","solverRole":"passenger","constraints":[{"type":"col","cols":[1]}]},{"id":"G","name":"Greta","gender":"F","role":"passenger","color":"#ad1457","avatar":{"bg":"#3a5a6e","skin":"#f0cdb0","hair":"#cfcfd2","style":"bun","shirt":"#2b3d66","necklace":true},"clue":"Она <b>стояла</b> рядом со <b>столом</b>.","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Greta\"><rect width=\"80\" height=\"80\" fill=\"#3a5a6e\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#2b3d66\"/><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=\"#f0cdb0\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#f0cdb0\"/><circle cx=\"40\" cy=\"15\" r=\"7\" fill=\"#cfcfd2\"/><path d=\"M26 32 Q26 16 40 16 Q54 16 54 32 Q50 24 40 24 Q30 24 26 32 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\"/></svg>","solverRole":"passenger","constraints":[{"type":"beside","obj":"table"},{"type":"not_on","obj":"chair"},{"type":"not_on","obj":"bed"}]},{"id":"H","name":"Hugo","gender":"M","role":"staff","color":"#5d4037","avatar":{"bg":"#2c3e58","skin":"#8a5a3c","hair":"#1a1210","style":"short","shirt":"#22406f","cap":true},"clue":"Он был рядом с <b>тележкой</b>.","job":"носильщик","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Hugo\"><rect width=\"80\" height=\"80\" fill=\"#2c3e58\"/><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=\"#8a5a3c\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#8a5a3c\"/><path d=\"M26 32 Q26 15 40 15 Q54 15 54 32 Q50 24 40 24 Q30 24 26 32 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 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":"trolley"}]},{"id":"I","name":"Iris","gender":"F","role":"staff","color":"#827717","avatar":{"bg":"#5b4a6e","skin":"#f1cfb2","hair":"#2b1c14","style":"ponytail","shirt":"#22406f","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=\"Iris\"><rect width=\"80\" height=\"80\" fill=\"#5b4a6e\"/><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=\"#22406f\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#f1cfb2\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#f1cfb2\"/><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=\"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":"on","obj":"chair"},{"type":"rel_any","dir":"S","exact":2,"gender":"M"}]},{"id":"J","name":"Jonas","gender":"M","role":"staff","color":"#283593","avatar":{"bg":"#3f3f3f","skin":"#e8bf9a","hair":"#2a1d16","style":"slick","shirt":"#1f2530","bow":true},"clue":"Он был рядом со <b>стойкой</b>. Он был <b>севернее</b> <b>Hugo</b>.","job":"бармен","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Jonas\"><rect width=\"80\" height=\"80\" fill=\"#3f3f3f\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#1f2530\"/><path d=\"M40 60 l-8 -4 v8 z M40 60 l8 -4 v8 z\" fill=\"#b8302b\"/><circle cx=\"40\" cy=\"60\" r=\"2\" fill=\"#7a1f1c\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#e8bf9a\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#e8bf9a\"/><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\"/></svg>","solverRole":"staff","constraints":[{"type":"beside","obj":"counter"},{"type":"rel","q":"H","dir":"N"}]},{"id":"K","name":"Kate","gender":"F","role":"staff","color":"#33691e","avatar":{"bg":"#8a5a2a","skin":"#f4d5bb","hair":"#6b3f22","style":"bob","shirt":"#22406f","apron":true},"clue":"Она была в <b>нижней строке</b>.","job":"работница кафе","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Kate\"><rect width=\"80\" height=\"80\" fill=\"#8a5a2a\"/><path d=\"M22 40 Q22 14 40 14 Q58 14 58 40 L58 58 L22 58 Z\" fill=\"#6b3f22\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#22406f\"/><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\"/><path d=\"M26 36 Q26 16 40 16 Q54 16 54 36 Q52 24 40 24 Q28 24 26 36 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\"/></svg>","solverRole":"staff","constraints":[{"type":"row","rows":[12]}]},{"id":"V","name":"Victor","gender":"M","role":"victim","color":"#1b1b1b","avatar":{"bg":"#5a2a2a","skin":"#e4b998","hair":"#8a8a8a","style":"short","shirt":"#22406f","cap":true,"mustache":true,"mustacheColor":"#777"},"clue":"<b>Жертва.</b> Он был наедине с убийцей.","job":"проводник","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Victor\"><rect width=\"80\" height=\"80\" fill=\"#5a2a2a\"/><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 32 Q26 15 40 15 Q54 15 54 32 Q50 24 40 24 Q30 24 26 32 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=\"M33 41 Q40 37 47 41 Q40 43 33 41 Z\" fill=\"#777\"/><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\"/><path d=\"M12 12 L68 68 M68 12 L12 68\" stroke=\"#e0362e\" stroke-width=\"5\" stroke-linecap=\"round\" opacity=\".9\"/></svg>","solverRole":"staff","constraints":[]}],"victim":"V","murderer":"G","solution":{"E":[1,5],"V":[2,4],"G":[3,3],"J":[4,9],"H":[5,11],"D":[6,8],"C":[7,10],"I":[8,2],"A":[9,6],"B":[10,7],"F":[11,1],"K":[12,12]},"walkthrough":[{"focus":{"group":"building"},"text":"<b>Здание вокзала</b> занимает строки 7–12, шесть строк – значит, внутри было ровно <b>шесть человек</b>. В каждой из его шести зон кто-то был (особое правило 2), поэтому <b>в каждой зоне здания ровно один человек</b>. Никто в здании не был с кем-то, и V (который был с убийцей) не может быть там. Точно так же две строки платформы содержат ровно <b>двух</b> человек, а поезд – ровно <b>четырёх</b>."},{"cand":{"H":[[5,11],[6,12]],"J":[[1,9],[4,9],[2,10],[3,10]]},"text":"H был рядом с <b>тележкой</b> – единственная тележка стоит на платформе, значит H в строке 5 или 6 (R5C11 или R6C12). J был <b>севернее</b> H, значит J не ниже строки 5; единственная стойка так далеко на севере – в <b>вагоне-баре</b>. Итак, J в вагоне-баре."},{"place":["I"],"cand":{"H":[[5,11],[6,12]],"J":[[1,9],[4,9],[2,10],[3,10]]},"text":"В <b>кассе</b> (только персонал) ровно один человек. H на платформе, J в вагоне-баре, K в нижней строке, а V не может быть один – значит, там может быть только <b>I</b>, на единственном стуле: I сидит на <b>R8C2</b>. Вычеркни строку 8 и столбец 2."},{"cand":{"B":[[10,3],[10,5],[10,6],[10,7],[10,8],[10,9],[10,10],[10,11],[10,12]],"H":[[5,11],[6,12]],"J":[[1,9],[4,9],[2,10],[3,10]]},"text":"Ровно на две строки южнее I, в <b>строке 10, был мужчина</b>. D сидел, но над стульями строки 10 (кафе) в строке 9 не может быть персонала; F в столбце 1 (R10C1 – раковина); H и J на платформе и в поезде; V не может быть в здании. Остаётся <b>B: он в строке 10</b>. Вычеркни строку 10 для всех остальных."},{"place":["C"],"cand":{"B":[[10,3],[10,5],[10,6],[10,7],[10,8],[10,11],[10,12]],"H":[[5,11],[6,12]],"J":[[1,9],[4,9]]},"text":"В <b>киоске</b> тоже кто-то есть. Там нет растения, стола, стула и тележки; B в строке 10, K в строке 12, F в столбце 1, персонал в других местах. Подходит только <b>C</b> (рядом с полкой), а поскольку строка 8 занята, C стоит на <b>R7C10</b>. Вычеркни строку 7 и столбец 10 – это исключает и барные табуреты, значит J в столбце 9."},{"cand":{"E":[[1,5],[3,5],[1,8],[3,8]],"B":[[10,3],[10,5],[10,6],[10,7],[10,8],[10,11],[10,12]],"H":[[5,11],[6,12]],"J":[[1,9],[4,9]]},"text":"K в нижней строке, значит, никого другого в <b>строке 12</b> нет. E сидела на стуле рядом со столом: такие стулья есть в вагоне-ресторане и в кафе, но стулья кафе стоят в строках 10 и 12 (строки B и K). Значит, E в <b>вагоне-ресторане</b>, <b>одна</b>: больше там никого быть не может."},{"place":["H"],"cand":{"D":[[6,3],[6,8]],"E":[[1,5],[3,5],[1,8],[3,8]],"B":[[10,3],[10,5],[10,6],[10,7],[10,8],[10,12]],"J":[[1,9],[4,9]]},"text":"D сидел на стуле. Стулья вагона-ресторана отпадают (E одна), барные табуреты в столбце 10 (C), стулья зала ожидания в строке 8 (I), стулья кафе в строках 10 и 12 (B, K), а пассажиру нельзя в кассу. Остаются только две скамьи на платформе: <b>D в строке 6</b>. Тогда H может быть только на <b>R5C11</b> – и платформа заполнена (D и H)."},{"place":["G"],"cand":{"V":[[1,4],[2,4]],"D":[[6,8]],"E":[[1,5],[1,8]],"B":[[10,5],[10,6],[10,7],[10,8],[10,12]],"J":[[1,9],[4,9]]},"text":"V должен быть в поезде, в одном вагоне <b>наедине с убийцей</b>. В вагоне-ресторане E одна. Свободные клетки вагона-бара рядом с J – в столбце 10 (C). В багажный вагон может войти только персонал, но H, I, J и K в других местах. В купе A кровать в столбце 1, а пол в столбце 2 (I) – двое там не поместятся. Остаётся <b>купе B</b>, где с V может быть только <b>G</b> (она стояла рядом со столом): G на <b>R3C3</b>. Greta – убийца! Вычеркни строку 3 и столбец 3."},{"place":["F"],"cand":{"V":[[1,4],[2,4]],"D":[[6,8]],"E":[[1,5],[1,8]],"B":[[10,5],[10,6],[10,7],[10,8],[10,12]],"J":[[1,9],[4,9]]},"text":"В поезде теперь его четверо: E, J, V и G. Значит, F (столбец 1) не может быть на кровати в купе A, а платформа заполнена: F в <b>туалетах</b>, на <b>R11C1</b>. Вычеркни строку 11."},{"place":["J","V"],"cand":{"D":[[6,8]],"E":[[1,5],[1,8]],"B":[[10,5],[10,6],[10,7],[10,8],[10,12]]},"text":"E может сидеть в вагоне-ресторане в строке 1 или 3; строка 3 принадлежит G, значит <b>E в строке 1</b>. Тогда J может быть только на <b>R4C9</b>, а V лежит на кровати в купе B, на <b>R2C4</b>."},{"place":["D","E","A"],"cand":{"B":[[10,7],[10,12]]},"text":"D в строке 6: R6C3 в столбце 3 (G), значит D сидит на <b>R6C8</b>. Столбец 8 теперь занят: E на <b>R1C5</b>, а A, рядом с растением в зале ожидания, может стоять только на <b>R9C6</b>."},{"place":["B","K"],"text":"B в строке 10: свободны только R10C7 и R10C12. На один столбец западнее него была <b>женщина</b> – для R10C12 это столбец 11, где стоит H (мужчина), так что отпадает. B на <b>R10C7</b> в вестибюле (в столбце 6 действительно женщина, A). Наконец, в столбце 12 может быть только K: K на <b>R12C12</b>, в кафе."},{"final":true,"text":"Все размещены. Victor был наедине с <b>Greta</b> в купе B – <b>Greta – убийца!</b>"}],"solver":{"rules":[{"type":"role_only","areas":["Luggage Car","Ticket Office"],"roles":["staff"]},{"type":"areas_nonempty","areas":["Ticket Office","Waiting Room","Newsstand","Cafe","Restrooms","Entrance Hall"]}],"groups":{"Train":["Sleeper A","Sleeper B","Dining Car","Bar Car","Luggage Car"],"Building":["Ticket Office","Waiting Room","Newsstand","Cafe","Restrooms","Entrance Hall"]},"occupiable":["bed","chair"]},"verification":{"tool":"tools/murdoku_solver.py","unique":true,"guessFree":true,"checked":"2026-09-14"}}