{"format":"murdoku-puzzle/1","id":"bikeshop","version":1,"difficulty":"easy","level":4,"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":"L’Atelier de vélos","tagline":"Un atelier de vélos · un samedi de printemps · la propriétaire n’est jamais revenue de la réserve","author":"mathace","concept":"Murdoku – Manuel Garand (murdoku.com); unofficial fan-made case","created":"2026-10-06","story":"Le premier samedi chaud du printemps, l’atelier de vélos était plein à craquer dès l’ouverture : tout le monde voulait que son vélo soit prêt pour la saison. Veerle, la propriétaire, courait entre le comptoir et l’atelier, pendant que ses trois employés réparaient des pneus, réglaient des dérailleurs et vendaient des sonnettes. Quatre clients attendaient leur tour, certains depuis plus d’une heure. À un moment, Veerle est allée dans la réserve chercher une pièce détachée – et quand Anneke est partie à sa recherche une demi-heure plus tard, elle l’a trouvée morte parmi les caisses. La police a interrogé les trois employés et les quatre clients ; chacun a dit où il se trouvait quand la propriétaire a disparu.","rules":{"standard":["Chaque <b>ligne</b> et chaque <b>colonne</b> contient exactement <b>une personne</b>. Dès que tu places quelqu’un, barre toute sa ligne et sa colonne.","<b>« À côté »</b> = directement à gauche, à droite, au-dessus ou en dessous, et <b>dans la même zone</b>. Les cases avec un objet (les vélos, le comptoir, les arbres, le bureau, l’étagère, les caisses, l’escabeau, le portemanteau, la charrette et la jardinière) ne peuvent pas être occupées ; les tabourets et le banc, si.","Les directions se réfèrent aux lignes et aux colonnes, pas à la même ligne droite : <i>« exactement une ligne au nord de lui se trouvait une femme »</i> = la personne dans la ligne juste au-dessus est une femme, quelle que soit la colonne.","Le meurtrier était <b>seul avec la victime</b> : personne d’autre ne se trouvait dans cette zone."],"special":[]},"roleNames":{"staff":"membre du personnel","customer":"client","victim":"victime"},"personGroups":[{"id":"staff","name":"Personnel","persons":["A","B","C"]},{"id":"customers","name":"Clients","persons":["D","E","F","G"]},{"id":"owner","name":"La propriétaire","persons":["V"]}],"map":{"groups":[],"gaps":[],"areas":[{"id":"Shop","cells":[[1,1],[1,2],[1,3],[1,4],[2,1],[2,2],[2,3],[2,4],[3,1],[3,2]],"fill":"#f1dfcc","pattern":"tiles","labelAt":[2,2],"name":"Boutique"},{"id":"Office","cells":[[1,5],[1,6],[2,5],[2,6],[3,6]],"fill":"#e2d6c4","pattern":"planks","labelAt":[2,6],"name":"Bureau"},{"id":"Workshop","cells":[[3,3],[3,4],[3,5],[4,3],[4,4],[4,5],[4,6],[5,3],[5,4],[5,5],[5,6],[6,2],[6,3],[6,4],[6,5],[7,2],[7,3],[7,4]],"fill":"#dcdad4","pattern":"boards","labelAt":[5,3],"name":"Atelier"},{"id":"Storeroom","cells":[[4,1],[4,2],[5,1],[5,2],[6,1],[7,1],[8,1],[8,2],[8,3]],"fill":"#e6dcc8","pattern":"planks","labelAt":[6,1],"name":"Réserve"},{"id":"Yard","cells":[[1,7],[1,8],[2,7],[2,8],[3,7],[3,8],[4,7],[4,8],[5,7],[5,8],[6,6],[6,7],[6,8],[7,5],[7,6],[7,7],[7,8],[8,4],[8,5],[8,6],[8,7],[8,8]],"fill":"#dce8d0","pattern":"marble","labelAt":[5,7],"name":"Cour"}],"objectTypes":{"bench":{"occupiable":true,"name":"banc","icon":"<rect x=\"2\" y=\"13\" width=\"42\" height=\"21\" rx=\"3.5\" fill=\"#fbfaf6\" stroke=\"#8c8a82\" stroke-width=\"1.5\"/><rect x=\"2\" y=\"13\" width=\"42\" height=\"7\" rx=\"3\" fill=\"#d9d5cc\" stroke=\"#8c8a82\" stroke-width=\"1.5\"/><line x1=\"16\" y1=\"20\" x2=\"16\" y2=\"34\" stroke=\"#a9a49a\" stroke-width=\"1.3\"/><line x1=\"30\" y1=\"20\" x2=\"30\" y2=\"34\" stroke=\"#a9a49a\" stroke-width=\"1.3\"/>"},"stool":{"occupiable":true,"name":"tabouret","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\"/>"},"bicycle":{"occupiable":false,"name":"vélo","icon":"<circle cx=\"13\" cy=\"30\" r=\"8\" fill=\"none\" stroke=\"#2b2b2b\" stroke-width=\"2\"/><circle cx=\"33\" cy=\"30\" r=\"8\" fill=\"none\" stroke=\"#2b2b2b\" stroke-width=\"2\"/><path d=\"M13 30 L20 16 h10 l3 14 M20 16 l6 14 h-13 M30 16 l-4 -4\" fill=\"none\" stroke=\"#c0392b\" stroke-width=\"2.2\" stroke-linejoin=\"round\"/>"},"cart":{"occupiable":false,"name":"charrette","icon":"<rect x=\"8\" y=\"12\" width=\"30\" height=\"16\" rx=\"2\" fill=\"#8a5a34\" stroke=\"#3f2d1d\" stroke-width=\"1.3\"/><circle cx=\"15\" cy=\"34\" r=\"5\" fill=\"#2b2b2b\"/><circle cx=\"31\" cy=\"34\" r=\"5\" fill=\"#2b2b2b\"/><path d=\"M38 20 h6\" stroke=\"#3f2d1d\" stroke-width=\"2.5\"/>"},"counter":{"occupiable":false,"name":"comptoir","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\"/>"},"crate":{"occupiable":false,"name":"caisse","icon":"<rect x=\"6\" y=\"10\" width=\"34\" height=\"30\" fill=\"#b98a5a\" stroke=\"#6e4d2c\" stroke-width=\"1.5\"/><line x1=\"6\" y1=\"20\" x2=\"40\" y2=\"20\" stroke=\"#6e4d2c\" stroke-width=\"1.5\"/><line x1=\"6\" y1=\"30\" x2=\"40\" y2=\"30\" stroke=\"#6e4d2c\" stroke-width=\"1.5\"/><line x1=\"17\" y1=\"10\" x2=\"17\" y2=\"40\" stroke=\"#6e4d2c\" stroke-width=\"1.5\"/><line x1=\"29\" y1=\"10\" x2=\"29\" y2=\"40\" stroke=\"#6e4d2c\" stroke-width=\"1.5\"/>"},"desk":{"occupiable":false,"name":"bureau","icon":"<rect x=\"5\" y=\"12\" width=\"36\" height=\"22\" rx=\"3\" fill=\"#8f6a44\" stroke=\"#5e4127\" stroke-width=\"1.5\"/><rect x=\"9\" y=\"16\" width=\"14\" height=\"10\" fill=\"#f4efe6\" stroke=\"#8c8a82\"/><rect x=\"27\" y=\"17\" width=\"10\" height=\"4\" fill=\"#3d444b\"/>"},"planter":{"occupiable":false,"name":"jardinière","icon":"<path d=\"M6 25 q3 -9 11 -7 q5 -6 11 -1 q9 -1 11 8 z\" fill=\"#3f8a4a\" stroke=\"#2c6434\" stroke-width=\"1\"/><circle cx=\"14\" cy=\"19\" r=\"1.9\" fill=\"#e0526a\"/><circle cx=\"24\" cy=\"15\" r=\"1.9\" fill=\"#f2d24a\"/><circle cx=\"33\" cy=\"19\" r=\"1.9\" fill=\"#e0526a\"/><rect x=\"4\" y=\"25\" width=\"38\" height=\"14\" rx=\"2\" fill=\"#a5733f\" stroke=\"#4e3a1e\" stroke-width=\"1.5\"/><path d=\"M4 30 h38 M4 34.5 h38\" stroke=\"#7a5630\" stroke-width=\"1\"/><rect x=\"4\" y=\"25\" width=\"4\" height=\"14\" fill=\"#8a5a2f\" stroke=\"#4e3a1e\" stroke-width=\"1\"/><rect x=\"38\" y=\"25\" width=\"4\" height=\"14\" fill=\"#8a5a2f\" stroke=\"#4e3a1e\" stroke-width=\"1\"/><rect x=\"8\" y=\"39\" width=\"4\" height=\"3\" fill=\"#4e3a1e\"/><rect x=\"34\" y=\"39\" width=\"4\" height=\"3\" fill=\"#4e3a1e\"/>"},"rack":{"occupiable":false,"name":"portemanteau","icon":"<line x1=\"6\" y1=\"10\" x2=\"40\" y2=\"10\" stroke=\"#5b5852\" stroke-width=\"3\"/><line x1=\"9\" y1=\"10\" x2=\"9\" y2=\"40\" stroke=\"#5b5852\" stroke-width=\"2.5\"/><line x1=\"37\" y1=\"10\" x2=\"37\" y2=\"40\" stroke=\"#5b5852\" stroke-width=\"2.5\"/><path d=\"M15 14 v2 h8 v14 h-8 z\" fill=\"#c8536a\"/><path d=\"M25 14 v2 h7 v12 h-7 z\" fill=\"#3a6fb0\"/><line x1=\"19\" y1=\"10\" x2=\"19\" y2=\"14\" stroke=\"#333\"/><line x1=\"28\" y1=\"10\" x2=\"28\" y2=\"14\" stroke=\"#333\"/>"},"shelf":{"occupiable":false,"name":"étagère","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\"/>"},"stepladder":{"occupiable":false,"name":"escabeau","icon":"<line x1=\"13\" y1=\"42\" x2=\"20\" y2=\"6\" stroke=\"#8a6a3a\" stroke-width=\"3\"/><line x1=\"33\" y1=\"42\" x2=\"26\" y2=\"6\" stroke=\"#8a6a3a\" stroke-width=\"3\"/><line x1=\"16\" y1=\"30\" x2=\"30\" y2=\"30\" stroke=\"#8a6a3a\" stroke-width=\"2.5\"/><line x1=\"18\" y1=\"20\" x2=\"28\" y2=\"20\" stroke=\"#8a6a3a\" stroke-width=\"2.5\"/><line x1=\"20\" y1=\"10\" x2=\"26\" y2=\"10\" stroke=\"#8a6a3a\" stroke-width=\"2.5\"/>"},"tree":{"occupiable":false,"name":"arbre","icon":"<rect x=\"20\" y=\"28\" width=\"6\" height=\"14\" rx=\"1\" fill=\"#6e4a2a\"/><circle cx=\"23\" cy=\"19\" r=\"13\" fill=\"#3f8a4a\" stroke=\"#2c5e33\" stroke-width=\"1.5\"/><circle cx=\"16\" cy=\"23\" r=\"7\" fill=\"#57a35e\"/><circle cx=\"30\" cy=\"14\" r=\"7\" fill=\"#57a35e\"/>"}},"wallTypes":{},"objects":[{"cell":[1,2],"type":"bicycle"},{"cell":[1,4],"type":"counter"},{"cell":[1,7],"type":"tree"},{"cell":[2,5],"type":"desk"},{"cell":[3,1],"type":"shelf"},{"cell":[3,4],"type":"stool"},{"cell":[3,8],"type":"bicycle"},{"cell":[4,2],"type":"crate"},{"cell":[4,5],"type":"stool"},{"cell":[5,4],"type":"bicycle"},{"cell":[5,8],"type":"tree"},{"cell":[6,8],"type":"stepladder"},{"cell":[7,1],"type":"crate"},{"cell":[7,4],"type":"rack"},{"cell":[7,7],"type":"bench"},{"cell":[8,6],"type":"cart"},{"cell":[8,8],"type":"planter"}],"wallFeatures":[],"extras":[],"cellSize":46},"persons":[{"id":"A","name":"Anneke","gender":"F","role":"staff","color":"#c62828","avatar":{"bg":"#35607a","skin":"#f6d8c0","hair":"#7a4a2a","style":"ponytail","shirt":"#f2a53a","apron":true},"clue":"Elle était dans le <b>Bureau</b>. <b>Exactement une ligne au sud</b> d’elle se trouvait une <b>femme</b>.","job":"vendeuse","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Anneke\"><rect width=\"80\" height=\"80\" fill=\"#35607a\"/><path d=\"M50 30 Q64 34 60 62 L54 62 Q56 40 48 36 Z\" fill=\"#7a4a2a\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#f2a53a\"/><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=\"#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=\"#7a4a2a\"/><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":"area","areas":["Office"]},{"type":"rel_any","dir":"S","exact":1,"gender":"F"}]},{"id":"B","name":"Boudewijn","gender":"M","role":"staff","color":"#2e7d32","avatar":{"bg":"#5d4037","skin":"#f1c8a5","hair":"#3a2a1c","style":"short","shirt":"#2f3b4c","beard":true,"apron":true},"clue":"Il était le <b>seul homme</b> assis sur un <b>tabouret</b>.","job":"mécanicien","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Boudewijn\"><rect width=\"80\" height=\"80\" fill=\"#5d4037\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#2f3b4c\"/><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=\"#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=\"#3a2a1c\"/><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=\"#3a2a1c\"/></svg>","solverRole":"staff","constraints":[{"type":"only_on","obj":"stool","gender":"M"}]},{"id":"C","name":"Carlijn","gender":"F","role":"staff","color":"#1565c0","avatar":{"bg":"#6e2c4b","skin":"#f3d3b5","hair":"#b7482c","style":"bob","shirt":"#2e7d32","cap":true,"apron":true},"clue":"Elle était dans la <b>première colonne</b>.","job":"apprentie mécanicienne","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Carlijn\"><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=\"#2e7d32\"/><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=\"#f3d3b5\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#f3d3b5\"/><path d=\"M26 36 Q26 16 40 16 Q54 16 54 36 Q52 24 40 24 Q28 24 26 36 Z\" fill=\"#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\"/><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":"col","cols":[1]}]},{"id":"D","name":"Dirk","gender":"M","role":"customer","color":"#6a1b9a","avatar":{"bg":"#1b2a33","skin":"#e4b998","hair":"#1c1a1a","style":"short","shirt":"#c62828","beard":true,"cap":true},"clue":"Il n’était <b>pas avec Floris</b>.","job":"un coursier venu chercher son vélo","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Dirk\"><rect width=\"80\" height=\"80\" fill=\"#1b2a33\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#c62828\"/><rect x=\"34\" y=\"44\" width=\"12\" height=\"13\" fill=\"#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=\"#1c1a1a\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><path d=\"M27 38 Q30 52 40 53 Q50 52 53 38 Q50 47 40 48 Q30 47 27 38 Z\" fill=\"#1c1a1a\"/><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":"customer","constraints":[{"type":"not_with","q":"F"}]},{"id":"E","name":"Esmee","gender":"F","role":"customer","color":"#e65100","avatar":{"bg":"#ad1457","skin":"#f6d8c0","hair":"#d9b464","style":"long","shirt":"#4a5a7a","glasses":true},"clue":"Elle n’était <b>pas seule</b> dans sa zone.","job":"une étudiante avec un pneu crevé","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Esmee\"><rect width=\"80\" height=\"80\" fill=\"#ad1457\"/><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=\"#4a5a7a\"/><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\"/><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":"customer","constraints":[{"type":"not_alone"}]},{"id":"F","name":"Floris","gender":"M","role":"customer","color":"#00838f","avatar":{"bg":"#00695c","skin":"#e7b98f","hair":"#8a8278","style":"slick","shirt":"#e26d8a","mustache":true,"mustacheColor":"#8a8278"},"clue":"La <b>charrette</b> se trouvait quelque part dans sa <b>colonne</b>. Un <b>autre homme</b> de sa zone était assis sur le <b>banc</b>.","job":"un coureur cycliste","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Floris\"><rect width=\"80\" height=\"80\" fill=\"#00695c\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#e26d8a\"/><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 30 Q27 16 44 15 Q56 15 55 26 Q48 22 40 23 Q30 24 26 30 Z\" fill=\"#8a8278\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><path d=\"M33 41 Q40 37 47 41 Q40 43 33 41 Z\" fill=\"#8a8278\"/></svg>","solverRole":"customer","constraints":[{"type":"col_has","obj":"cart"},{"type":"with_on","obj":"bench","gender":"M"}]},{"id":"G","name":"Gijs","gender":"M","role":"customer","color":"#ad1457","avatar":{"bg":"#2f4858","skin":"#f1c8a5","hair":"#d9d4cc","style":"bald","shirt":"#8b7a5a","glasses":true,"mustache":true,"mustacheColor":"#d9d4cc"},"clue":"Quelqu’un d’autre dans sa zone était à côté d’un <b>arbre</b>. Une <b>caisse</b> se trouvait quelque part dans sa <b>ligne</b>.","job":"un retraité qui achète une nouvelle sonnette","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Gijs\"><rect width=\"80\" height=\"80\" fill=\"#2f4858\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#8b7a5a\"/><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=\"#d9d4cc\"/><path d=\"M54 30 Q54 22 50 20 L50 34 Q54 34 54 30 Z\" fill=\"#d9d4cc\"/><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=\"#d9d4cc\"/></svg>","solverRole":"customer","constraints":[{"type":"with_beside","obj":"tree"},{"type":"row_has","obj":"crate"}]},{"id":"V","name":"Veerle","gender":"F","role":"victim","color":"#1b1b1b","avatar":{"bg":"#5a2a2a","skin":"#f0cdb0","hair":"#7a4a2a","style":"bun","shirt":"#1b1b1b","earrings":true,"apron":true},"clue":"<b>La victime.</b> Elle a été retrouvée dans la <b>Réserve</b>, à côté d’une <b>caisse</b> – seule avec le meurtrier.","job":"propriétaire de l’atelier","avatarSvg":"<svg viewBox=\"0 0 80 80\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"Veerle\"><rect width=\"80\" height=\"80\" fill=\"#5a2a2a\"/><path d=\"M10 80 Q12 56 40 54 Q68 56 70 80 Z\" fill=\"#1b1b1b\"/><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=\"#f0cdb0\"/><ellipse cx=\"40\" cy=\"34\" rx=\"14\" ry=\"16\" fill=\"#f0cdb0\"/><circle cx=\"40\" cy=\"15\" r=\"7\" fill=\"#7a4a2a\"/><path d=\"M26 32 Q26 16 40 16 Q54 16 54 32 Q50 24 40 24 Q30 24 26 32 Z\" fill=\"#7a4a2a\"/><circle cx=\"34\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><circle cx=\"46\" cy=\"35\" r=\"1.6\" fill=\"#2b2b2b\"/><path d=\"M36 43 Q40 46 44 43\" fill=\"none\" stroke=\"#a5735a\" stroke-width=\"1.4\"/><circle cx=\"26\" cy=\"41\" r=\"1.8\" fill=\"#f0c95a\"/><circle cx=\"54\" cy=\"41\" r=\"1.8\" fill=\"#f0c95a\"/><path d=\"M12 12 L68 68 M68 12 L12 68\" stroke=\"#e0362e\" stroke-width=\"5\" stroke-linecap=\"round\" opacity=\".9\"/></svg>","solverRole":"owner","constraints":[{"type":"area","areas":["Storeroom"]},{"type":"beside","obj":"crate"}]}],"victim":"V","murderer":"D","solution":{"A":[1,5],"C":[2,1],"B":[3,4],"E":[4,8],"V":[5,2],"F":[6,6],"G":[7,7],"D":[8,3]},"walkthrough":[{"place":["V","A","B"],"cand":{"C":[[2,1],[4,1],[6,1],[8,1]],"D":[[2,3],[2,7],[2,8],[4,3],[4,7],[4,8],[6,3],[6,7],[7,3],[7,7],[7,8],[8,3],[8,7]],"E":[[2,3],[2,7],[2,8],[4,3],[4,7],[4,8],[6,3],[6,7],[7,3],[7,7],[7,8],[8,3],[8,7]],"F":[[2,6],[4,6],[6,6],[7,6]],"G":[[4,3],[4,7],[4,8],[7,3],[7,7],[7,8]]},"text":"Veerle a été retrouvée dans la réserve, à côté d’une caisse. Les caisses sont en R4C2 et R7C1, et les cases de la réserve qui les touchent sont R4C1, R5C2, R6C1 et R8C1. Carlijn était dans la première colonne, donc personne d’autre n’est dans la colonne 1 : <b>Veerle est en R5C2</b>, et le meurtrier est la seule autre personne dans la réserve. La charrette (R8C6) se trouvait dans la colonne de Floris, donc Floris est dans la colonne 6. Anneke était dans le bureau, dont les cases libres sont R1C5, R1C6, R2C6 et R3C6 – trois d’entre elles sont dans la colonne de Floris : <b>Anneke est en R1C5</b>. Boudewijn était assis sur un tabouret, en R3C4 ou en R4C5 ; R4C5 est dans la colonne d’Anneke, donc <b>Boudewijn est en R3C4</b>. Gijs avait une caisse dans sa ligne, donc il est dans la ligne 4 ou la ligne 7."},{"place":["G","F"],"cand":{"C":[[2,1],[4,1],[8,1]],"D":[[2,3],[4,3],[8,3]],"E":[[2,3],[2,8],[4,3],[4,8],[8,3]]},"text":"Floris a dit qu’un autre homme de sa zone était assis sur le banc. Le seul banc est en R7C7, dans la cour, donc Floris lui-même est dans la cour – en R6C6 ou R7C6 dans sa colonne – et l’homme sur le banc aussi. Qui peut être cet homme ? Boudewijn est assis sur un tabouret dans l’atelier ; Dirk n’était pas avec Floris, donc il n’est pas du tout dans la cour ; et Floris parle d’un autre homme, pas de lui-même. Il ne reste que Gijs : <b>Gijs est en R7C7</b>, assis sur le banc – et une caisse (R7C1) se trouve bien dans sa ligne. La ligne 7 est maintenant celle de Gijs, donc <b>Floris est en R6C6</b>. Retiens que Dirk n’est nulle part dans la cour."},{"place":["E"],"cand":{"C":[[2,1],[8,1]],"D":[[2,3],[8,3]]},"text":"Gijs a dit que quelqu’un d’autre dans sa zone, la cour, était à côté d’un arbre. Les arbres sont en R1C7 et R5C8, et les cases de la cour qui les touchent sont R1C8, R2C7, R4C8 et R5C7. R1C8 est dans la ligne d’Anneke, R2C7 et R5C7 dans la colonne de Gijs, donc cette personne est en R4C8. Qui peut-elle être ? Carlijn est dans la colonne 1 et Dirk n’est pas dans la cour, donc il ne reste qu’Esmee : <b>Esmee est en R4C8</b>. (Elle n’était effectivement pas seule dans sa zone : Floris et Gijs sont dans la cour avec elle.)"},{"place":["D","C"],"text":"Il ne reste que les lignes 2 et 8 et les colonnes 1 et 3, pour Carlijn et Dirk. Qui était seul avec Veerle dans la réserve ? R2C1 et R2C3 sont dans la boutique, R8C1 et R8C3 dans la réserve, donc le meurtrier est celui de la ligne 8 – Carlijn en R8C1 ou Dirk en R8C3. Anneke a aussi dit qu’exactement une ligne au sud d’elle, dans la ligne 2, se trouvait une femme. Dirk est un homme, donc il n’est pas dans la ligne 2 : <b>Dirk est en R8C3</b>, dans la réserve, et <b>Carlijn est en R2C1</b>, dans la boutique. La réserve contient Veerle et Dirk et personne d’autre : <b>Dirk est le meurtrier</b>. Tout le monde est placé."},{"final":true,"text":"Affaire classée : Veerle était seule dans la réserve avec le coursier venu chercher son vélo. <b>Dirk est le meurtrier !</b>"}],"solver":{"rules":[],"occupiable":["bench","stool"]},"verification":{"tool":"tools/murdoku_solver.py","unique":true,"guessFree":true,"checked":"2026-10-06"},"score":6.1233}