{"id":1947,"date":"2026-08-23T20:43:53","date_gmt":"2026-08-23T20:43:53","guid":{"rendered":"https:\/\/lean-app.com\/?p=1947"},"modified":"2026-09-05T10:39:09","modified_gmt":"2026-09-05T10:39:09","slug":"etude-base-donnees-calories","status":"publish","type":"post","link":"https:\/\/lean-app.com\/da\/etude-base-donnees-calories\/","title":{"rendered":"Vi analyserede 857 655 produkter solgt i Frankrig: det, din kaloriescanner ikke fort\u00e6ller dig"},"content":{"rendered":"<script data-wpmeteor-nooptimize=\"true\" type=\"application\/ld+json\">\n{\n  \"@context\": \"https:\/\/schema.org\",\n  \"@type\": \"Dataset\",\n  \"name\": \"Coh\u00e9rence calorique des produits alimentaires vendus en France (OpenFoodFacts, ao\u00fbt 2026)\",\n  \"description\": \"Agr\u00e9gats issus de l'analyse de 857 655 produits vendus en France depuis le dump public OpenFoodFacts du 23 ao\u00fbt 2026 : compl\u00e9tude des fiches et coh\u00e9rence entre calories d\u00e9clar\u00e9es et calories recalcul\u00e9es depuis les macronutriments (facteurs Atwater, r\u00e8glement INCO 1169\/2011).\",\n  \"url\": \"https:\/\/lean-app.com\/etude-base-donnees-calories\/\",\n  \"creator\": {\"@type\": \"Organization\", \"name\": \"L'\u00e9quipe Lean\", \"url\": \"https:\/\/lean-app.com\/\"},\n  \"identifier\": [\"https:\/\/doi.org\/10.5281\/zenodo.22284416\", \"https:\/\/doi.org\/10.6084\/m9.figshare.33432244\"],\n  \"sameAs\": [\"https:\/\/zenodo.org\/records\/22284416\", \"https:\/\/figshare.com\/articles\/preprint\/33432244\", \"https:\/\/osf.io\/tczvj\/\", \"https:\/\/www.wikidata.org\/wiki\/Q141267884\"],\n  \"isBasedOn\": \"https:\/\/world.openfoodfacts.org\/data\",\n  \"license\": \"https:\/\/opendatacommons.org\/licenses\/odbl\/1-0\/\",\n  \"temporalCoverage\": \"2026-08-23\",\n  \"spatialCoverage\": \"France\",\n  \"variableMeasured\": [\"energy-kcal_100g\", \"proteins_100g\", \"carbohydrates_100g\", \"fat_100g\", \"fiber_100g\", \"alcohol_100g\", \"polyols_100g\"]\n}\n<\/script>\n<script data-wpmeteor-nooptimize=\"true\" type=\"application\/ld+json\">\n{\n  \"@context\": \"https:\/\/schema.org\",\n  \"@type\": \"FAQPage\",\n  \"mainEntity\": [\n    {\"@type\": \"Question\", \"name\": \"Pourquoi analyser OpenFoodFacts et pas USDA ?\",\n     \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Pour les produits \u00e0 code-barres vendus en France, la source de r\u00e9f\u00e9rence des trackers est OpenFoodFacts. USDA couvre les aliments bruts et le march\u00e9 am\u00e9ricain. L'\u00e9tude porte sur ce que renvoie r\u00e9ellement un scan en France.\"}},\n    {\"@type\": \"Question\", \"name\": \"Faut-il arr\u00eater de scanner ses aliments ?\",\n     \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Non. Le scan reste le moyen le plus rapide de logger. La bonne pratique : v\u00e9rifier que les macros affich\u00e9es sont coh\u00e9rentes avec les calories. Si prot\u00e9ines, glucides et lipides ne collent pas aux kcal, la fiche est fausse.\"}},\n    {\"@type\": \"Question\", \"name\": \"Les applications corrigent-elles ces erreurs ?\",\n     \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"La base OpenFoodFacts est collaborative et vit en continu : 4 des 6 pires fiches identifi\u00e9es dans le dump avaient d\u00e9j\u00e0 \u00e9t\u00e9 corrig\u00e9es en ligne au moment de l'\u00e9tude. Mais une application qui a synchronis\u00e9 une fiche fausse peut la garder en cache longtemps apr\u00e8s la correction.\"}},\n    {\"@type\": \"Question\", \"name\": \"La base de Lean est-elle diff\u00e9rente ?\",\n     \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Lean croise la base USDA pour les aliments bruts et OpenFoodFacts pour les produits \u00e0 code-barres, et propose le scan photo IA qui estime l'assiette sans d\u00e9pendre d'une fiche. Surtout, Lean concentre la pr\u00e9cision l\u00e0 o\u00f9 l'erreur est invisible : le calcul de la d\u00e9pense (TDEE = BMR + NEAT + EAT + TEF).\"}}\n  ]\n}\n<\/script>\n<style id=\"lvm-shell-styles\">#lvm-shell{\n  --bg:#FFFFFF; --paper:#F7F6F2; --paper-2:#F1EFE7;\n  --ink:#0E0E10; --ink-2:#1D1D1F; --muted:#6E6E73; --dim:#86868B;\n  --rule:#E8E6DF; --rule-soft:#EFEDE5;\n  --pink:#FF2D6E; --pink-soft:rgba(255,45,110,0.06);\n  --mfp:#6ABF6C;\n  --green:#0F8F5C; --red:#D02E2E; --amber:#C8A019;\n  --font-display:-apple-system,\"SF Pro Display\",system-ui,\"Helvetica Neue\",sans-serif;\n  --font-text:-apple-system,\"SF Pro Text\",system-ui,sans-serif;\n  --font-mono:ui-monospace,\"SF Mono\",Menlo,Consolas,monospace;\n}\n#lvm-shell *{box-sizing:border-box;-webkit-text-size-adjust:100%}\n#lvm-shell, #lvm-shell{margin:0;padding:0;background:var(--bg);color:var(--ink-2);font-family:var(--font-text);font-size:17px;line-height:1.7;-webkit-font-smoothing:antialiased}\n#lvm-shell ::selection{background:rgba(255,45,110,0.18);color:var(--ink)}\n#lvm-shell img{max-width:100%;display:block}\n#lvm-shell a{color:inherit}\n\n#lvm-shell .progress{position:fixed;top:0;left:0;right:0;height:2px;background:transparent;z-index:1000}\n#lvm-shell .progress > i{display:block;height:100%;width:100%;background:var(--pink);transform-origin:0 50%;transform:scaleX(0);transition:transform .05s linear}\n\n#lvm-shell .nav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.86);backdrop-filter:saturate(180%) blur(14px);-webkit-backdrop-filter:saturate(180%) blur(14px);border-bottom:1px solid var(--rule)}\n#lvm-shell .nav-row{max-width:1160px;margin:0 auto;display:flex;align-items:center;gap:14px;padding:10px 22px}\n#lvm-shell .nav-brand{display:flex;align-items:center;gap:9px;text-decoration:none;color:var(--ink)}\n#lvm-shell .nav-brand img{width:28px;height:28px;border-radius:7px;object-fit:cover}\n#lvm-shell .nav-brand span{font-family:var(--font-display);font-weight:600;font-size:18px;letter-spacing:-.01em}\n#lvm-shell .nav-spacer{flex:1}\n#lvm-shell .nav-link{color:var(--muted);text-decoration:none;font-size:14px}\n#lvm-shell .nav-link:hover{color:var(--ink)}\n#lvm-shell .nav-stores{display:flex;gap:6px;align-items:center}\n#lvm-shell .nav-stores a{display:block;line-height:0}\n#lvm-shell .nav-stores img{height:28px;width:auto;border-radius:5px;transition:transform .15s}\n#lvm-shell .nav-stores a:hover img{transform:translateY(-1px)}\n\n#lvm-shell .wrap{max-width:760px;margin:0 auto;padding:0 28px}\n\n#lvm-shell .hero{padding:54px 0 0}\n#lvm-shell .crumb{font-size:13px;color:var(--muted);margin-bottom:18px}\n#lvm-shell .crumb a{text-decoration:none;color:var(--muted)}\n#lvm-shell .crumb a:hover{color:var(--ink)}\n#lvm-shell .eyebrow{font-family:var(--font-mono);font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.06em;color:var(--pink);margin-bottom:18px}\n#lvm-shell h1{font-family:var(--font-display);font-weight:600;font-size:72px;line-height:1.0;letter-spacing:-.04em;color:var(--ink);margin:0 0 22px}\n#lvm-shell h1 .alt{display:block;font-weight:500;color:var(--muted);font-size:.66em;line-height:1.15;margin-top:14px;letter-spacing:-.03em}\n#lvm-shell .dek{font-family:var(--font-display);font-size:24px;line-height:1.4;font-weight:400;color:var(--ink-2);letter-spacing:-.015em;margin:0 0 22px;max-width:680px}\n\n#lvm-shell .byline{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--muted);margin-bottom:14px}\n#lvm-shell .byline .by-logo{width:26px;height:26px;border-radius:6px;object-fit:cover;flex-shrink:0;background:transparent;border:0}\n#lvm-shell .byline strong{color:var(--ink);font-weight:600;font-family:var(--font-display)}\n\n#lvm-shell .hero-stores{display:flex;gap:10px;margin:22px 0 18px;flex-wrap:wrap;align-items:center}\n#lvm-shell .hero-stores a{display:block;line-height:0;transition:transform .15s}\n#lvm-shell .hero-stores a:hover{transform:translateY(-2px)}\n#lvm-shell .hero-stores img{height:46px;width:auto;border-radius:9px}\n#lvm-shell .hero-stores .or{font-size:13px;color:var(--muted)}\n\n#lvm-shell .hero-bottom{display:grid;grid-template-columns:1.3fr 1fr;gap:48px;align-items:center;margin:38px 0 60px;padding-top:28px;border-top:1px solid var(--rule-soft)}\n#lvm-shell .hero-lead{font-family:var(--font-display);font-size:21px;line-height:1.5;color:var(--ink-2);font-weight:400}\n\n#lvm-shell .phone-wrap{display:flex;justify-content:center}\n#lvm-shell .phone{\n  position:relative;\n  width:280px;\n  background:linear-gradient(145deg,#2a2a2a,#0e0e0e);\n  border-radius:42px;\n  padding:5px;\n  border:1.5px solid rgba(255,255,255,.07);\n  box-shadow:0 30px 60px rgba(0,0,0,.18), 0 2px 6px rgba(0,0,0,.08);\n}\n#lvm-shell .phone .notch{\n  position:absolute;top:0;left:50%;transform:translateX(-50%);\n  width:96px;height:24px;background:#0a0a0a;border-radius:0 0 16px 16px;z-index:10;\n}\n#lvm-shell .phone-screen{\n  position:relative;\n  border-radius:34px;overflow:hidden;\n  background:#FAF0E6;\n  aspect-ratio:9\/19.5;\n}\n#lvm-shell .phone-bg{position:absolute;inset:0;width:100%;height:100%;background-size:cover;background-position:center top;background-repeat:no-repeat;transition:opacity .28s ease;background-color:#FAF0E6}\n#lvm-shell .phone-bg.tab-depense{background-image:url(\"https:\/\/lean-app.com\/wp-content\/uploads\/2026\/05\/lvm-screen_depense.webp\")}\n#lvm-shell .phone-bg.tab-bilan{background-image:url(\"https:\/\/lean-app.com\/wp-content\/uploads\/2026\/05\/lvm-screen_bilan.webp\")}\n#lvm-shell .phone-bg.tab-kcal{background-image:url(\"https:\/\/lean-app.com\/wp-content\/uploads\/2026\/05\/lvm-screen_kcal.webp\")}\n#lvm-shell .phone-bg.tab-strategie{background-image:url(\"https:\/\/lean-app.com\/wp-content\/uploads\/2026\/05\/lvm-screen_strategie.webp\")}\n#lvm-shell .phone-bg.sub-BMR{background-image:url(\"https:\/\/lean-app.com\/wp-content\/uploads\/2026\/05\/lvm-screen_BMR.webp\")}\n#lvm-shell .phone-bg.sub-NEAT{background-image:url(\"https:\/\/lean-app.com\/wp-content\/uploads\/2026\/05\/lvm-screen_NEAT.webp\")}\n#lvm-shell .phone-bg.sub-EAT{background-image:url(\"https:\/\/lean-app.com\/wp-content\/uploads\/2026\/05\/lvm-screen_EAT.webp\")}\n#lvm-shell .phone-bg.sub-TEF{background-image:url(\"https:\/\/lean-app.com\/wp-content\/uploads\/2026\/05\/lvm-screen_TEF.webp\")}\n#lvm-shell .phone-zones{position:absolute;inset:0;z-index:15;pointer-events:none}\n#lvm-shell .phone-zones .z{position:absolute;left:4%;right:4%;cursor:pointer;background:transparent;border:0;padding:0;pointer-events:auto}\n#lvm-shell .phone-zones .z:focus-visible{outline:2px solid var(--pink);outline-offset:-4px;border-radius:6px}\n#lvm-shell .phone-navbar{position:absolute;left:0;right:0;bottom:0;height:9%;z-index:16;display:grid;grid-template-columns:repeat(4,1fr)}\n#lvm-shell .phone-navbar button{background:transparent;border:0;padding:0;cursor:pointer}\n#lvm-shell .phone-navbar button:focus-visible{outline:2px solid var(--pink);outline-offset:-3px;border-radius:6px}\n#lvm-shell .phone-back{\n  position:absolute;top:10px;left:10px;z-index:20;\n  width:30px;height:30px;border-radius:50%;\n  border:0;background:rgba(255,255,255,.78);backdrop-filter:blur(8px);\n  color:var(--ink);font-size:18px;font-weight:600;line-height:1;cursor:pointer;\n  display:none;align-items:center;justify-content:center;\n  box-shadow:0 2px 6px rgba(0,0,0,.12);\n}\n#lvm-shell .phone-back.on{display:flex}\n\n#lvm-shell .phone-cap{margin-top:14px;text-align:center;font-size:12px;color:var(--muted);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em}\n#lvm-shell .phone-stage{position:relative}\n#lvm-shell .tap-hint{position:absolute;z-index:30;pointer-events:none;animation:hintFloat 2.6s ease-in-out infinite}\n#lvm-shell .tap-hint .th-pill{display:inline-block;font-family:var(--font-display);font-size:15px;font-weight:600;color:#fff;line-height:1.25;letter-spacing:-.005em;background:var(--pink);padding:10px 16px;border-radius:14px;box-shadow:0 14px 32px rgba(255,45,110,.32);white-space:nowrap}\n#lvm-shell .tap-hint .th-pill small{display:block;font-size:11px;font-weight:500;color:rgba(255,255,255,.85);text-transform:uppercase;letter-spacing:.08em;margin-bottom:3px}\n#lvm-shell .tap-hint .th-arrow{position:absolute;color:var(--pink)}\n#lvm-shell .tap-hint.desktop{left:-204px;top:4px;text-align:right}\n#lvm-shell .tap-hint.desktop .th-arrow{right:-86px;top:58px;width:104px;height:34px;transform:none}\n#lvm-shell .tap-hint.mobile{display:none}\n#lvm-shell .tap-hint.hidden{opacity:0;transform:translateY(-6px);transition:opacity .35s ease, transform .35s ease;animation:none}\n@keyframes hintFloat{\n  0%, 100%{transform:translateY(0)}\n  50%{transform:translateY(-7px)}\n}\n@media (prefers-reduced-motion:reduce){#lvm-shell .tap-hint{animation:none}}\n#lvm-shell .phone-tabs{display:flex;justify-content:center;gap:8px;margin-top:10px;flex-wrap:nowrap}\n#lvm-shell .phone-tabs button{\n  background:transparent;border:1px solid var(--rule);color:var(--muted);\n  padding:6px 11px;border-radius:999px;font-size:11px;cursor:pointer;\n  font-family:var(--font-text);transition:all .15s;white-space:nowrap;\n}\n#lvm-shell .phone-tabs button:hover{color:var(--ink);border-color:var(--ink)}\n#lvm-shell .phone-tabs button.on{background:var(--ink);color:#fff;border-color:var(--ink)}\n\n#lvm-shell .snippet{background:var(--paper);border-radius:18px;padding:30px 32px;margin:48px 0 0;border:1px solid var(--rule-soft)}\n#lvm-shell .snippet .lbl{font-family:var(--font-mono);font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:14px}\n#lvm-shell .snippet p{margin:0;font-family:var(--font-display);font-size:21px;line-height:1.45;color:var(--ink);font-weight:500;letter-spacing:-.012em}\n\n#lvm-shell section{padding:64px 0;border-bottom:1px solid var(--rule-soft)}\n#lvm-shell section:last-of-type{border-bottom:0}\n#lvm-shell .section-label{display:flex;align-items:center;gap:14px;margin-bottom:30px}\n#lvm-shell .section-label .bar{width:24px;height:1px;background:var(--pink)}\n#lvm-shell .section-label .num{font-family:var(--font-mono);font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.06em;color:var(--pink)}\n#lvm-shell h2{font-family:var(--font-display);font-weight:600;font-size:48px;line-height:1.05;letter-spacing:-.035em;color:var(--ink);margin:0 0 24px}\n#lvm-shell h3{font-family:var(--font-display);font-weight:600;font-size:32px;line-height:1.15;letter-spacing:-.025em;color:var(--ink);margin:36px 0 16px}\n#lvm-shell h4{font-family:var(--font-display);font-weight:500;font-size:20px;line-height:1.3;letter-spacing:-.015em;color:var(--ink);margin:24px 0 10px}\n#lvm-shell p{margin:0 0 22px;color:var(--ink-2)}\n#lvm-shell strong{color:var(--ink);font-weight:600}\n#lvm-shell ul, #lvm-shell ol{margin:0 0 22px;padding-left:22px;color:var(--ink-2)}\n#lvm-shell li{margin-bottom:8px}\n#lvm-shell a.inline{color:var(--pink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}\n#lvm-shell a.inline:hover{text-decoration-thickness:2px}\n\n#lvm-shell .statement{margin:48px 0;padding:32px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);text-align:left}\n#lvm-shell .statement .num{font-family:var(--font-display);font-size:60px;font-weight:600;line-height:1;letter-spacing:-.04em;color:var(--pink);margin-bottom:14px}\n#lvm-shell .statement .lbl{font-family:var(--font-display);font-size:23px;line-height:1.35;font-weight:500;color:var(--ink);letter-spacing:-.012em}\n\n#lvm-shell .fig{margin:32px 0 18px;background:#fff;border:1px solid var(--rule);border-radius:20px;padding:28px 22px 20px;position:relative;overflow:hidden}\n#lvm-shell .fig-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:18px}\n#lvm-shell .fig-head .l{font-family:var(--font-mono);font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}\n#lvm-shell .fig-head .r{font-family:var(--font-mono);font-size:11px;font-weight:600;color:var(--ink);text-transform:uppercase;letter-spacing:.08em}\n#lvm-shell .fig-body{position:relative}\n#lvm-shell .fig-cap{margin:18px 4px 0;font-size:14px;color:var(--muted);line-height:1.5}\n#lvm-shell .fig-cap strong{color:var(--ink);font-weight:600}\n#lvm-shell .cv-wrap{position:relative;height:360px}\n\n#lvm-shell [data-term]{position:relative;cursor:help;border-bottom:1px dotted var(--dim)}\n#lvm-shell [data-term]:hover{color:var(--ink)}\n#lvm-shell .tt{position:absolute;left:50%;bottom:calc(100% + 12px);transform:translateX(-50%);min-width:200px;max-width:300px;background:#0c0c0c;color:#fff;font-size:13px;line-height:1.45;padding:11px 14px;border-radius:10px;box-shadow:0 12px 36px rgba(0,0,0,.32);opacity:0;visibility:hidden;transition:opacity .15s, visibility .15s;z-index:120;pointer-events:none;font-weight:400;font-family:var(--font-text)}\n#lvm-shell .tt::after{content:\"\";position:absolute;top:100%;left:50%;transform:translateX(-50%);border:6px solid transparent;border-top-color:#0c0c0c}\n#lvm-shell [data-term]:hover .tt, #lvm-shell [data-term]:focus .tt{opacity:1;visibility:visible}\n\n#lvm-shell .table{margin:24px 0;border:1px solid var(--rule);border-radius:16px;overflow:hidden;background:#fff}\n#lvm-shell .table-row{display:grid;grid-template-columns:1.55fr 1fr 1fr;border-bottom:1px solid var(--rule-soft);min-height:60px}\n#lvm-shell .table-row:last-child{border-bottom:0}\n#lvm-shell .table-row.head{background:var(--ink);color:#fff;border-bottom:0}\n#lvm-shell .table-row.head > div{padding:18px 18px;display:flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.07em}\n#lvm-shell .table-row.head .brand-cell{justify-content:flex-start}\n#lvm-shell .table-row.head .brand-cell img{width:24px;height:24px;border-radius:6px;background:#fff;object-fit:cover}\n#lvm-shell .table-row.head .brand-cell.lean{color:#FFB8CE}\n#lvm-shell .table-row > .crit{padding:16px 18px;font-size:14px;color:var(--ink);font-weight:500;display:flex;align-items:center;border-right:1px solid var(--rule-soft)}\n#lvm-shell .table-row > .cell{padding:16px 14px;font-size:13px;line-height:1.45;color:var(--ink-2);display:flex;align-items:center;gap:10px;border-right:1px solid var(--rule-soft)}\n#lvm-shell .table-row > .cell:last-child{border-right:0}\n#lvm-shell .table-row > .cell.lean{background:var(--pink-soft);position:relative}\n#lvm-shell .table-row > .cell.lean::before{content:\"\";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--pink)}\n#lvm-shell .icn{width:18px;height:18px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;font-size:13px;font-weight:600;color:#fff}\n#lvm-shell .icn.ok{background:var(--green)}\n#lvm-shell .icn.no{background:var(--red)}\n#lvm-shell .icn.mid{background:var(--amber)}\n#lvm-shell .icn svg{width:11px;height:11px}\n\n#lvm-shell .mini-row{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:28px 0}\n#lvm-shell .mini-phone{position:relative;background:linear-gradient(145deg,#2a2a2a,#0e0e0e);border-radius:22px;padding:3px;border:1px solid rgba(255,255,255,.05);box-shadow:0 14px 32px rgba(0,0,0,.16);max-width:160px;margin:0 auto;width:100%}\n#lvm-shell .mini-phone .notch{position:absolute;top:0;left:50%;transform:translateX(-50%);width:40px;height:11px;background:#0a0a0a;border-radius:0 0 7px 7px;z-index:5}\n#lvm-shell .mini-phone .scr{border-radius:18px;overflow:hidden;background:#FAF0E6;aspect-ratio:9\/19.5}\n#lvm-shell .mini-phone .scr img{width:100%;height:100%;object-fit:cover}\n#lvm-shell .mini-phone.tiny{max-width:148px;padding:2px;border-radius:20px;border-width:1px}\n#lvm-shell .mini-phone.tiny .notch{width:30px;height:8px;border-radius:0 0 5px 5px}\n#lvm-shell .mini-phone.tiny .scr{border-radius:17px}\n#lvm-shell .mini-cap{text-align:center;margin-top:12px;font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}\n#lvm-shell .mini-cap strong{display:block;color:var(--ink);margin-top:4px;font-family:var(--font-display);font-size:14px;font-weight:500;letter-spacing:-.01em;text-transform:none}\n\n#lvm-shell .duo-row{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin:18px 0 0}\n#lvm-shell .duo-row .mini-phone{max-width:180px}\n\n#lvm-shell .method{display:grid;grid-template-columns:1fr 1.4fr;gap:36px;align-items:center;margin:42px 0}\n#lvm-shell .method.flip{grid-template-columns:1.4fr 1fr}\n#lvm-shell .method.flip .m-phone{order:2}\n#lvm-shell .method .m-tag{font-family:var(--font-mono);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--pink);margin-bottom:8px}\n#lvm-shell .method h3{margin-top:0}\n#lvm-shell .method p{font-size:16px;color:var(--muted);line-height:1.7}\n\n#lvm-shell .cta-band{margin:40px 0;padding:26px 28px;background:var(--paper);border-radius:16px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;border:1px solid var(--rule-soft)}\n#lvm-shell .cta-band .l{font-family:var(--font-display);font-size:18px;line-height:1.35;font-weight:500;color:var(--ink);flex:1;min-width:240px;letter-spacing:-.01em}\n#lvm-shell .cta-band .stores{display:flex;gap:10px;align-items:center}\n#lvm-shell .cta-band .stores a{line-height:0;transition:transform .15s}\n#lvm-shell .cta-band .stores a:hover{transform:translateY(-2px)}\n#lvm-shell .cta-band .stores img{height:42px;width:auto;border-radius:9px}\n\n#lvm-shell .pyramid{margin:30px auto;max-width:440px}\n#lvm-shell .pyramid .level{margin:6px auto;padding:13px 18px;border-radius:14px;color:#fff;font-family:var(--font-display);font-weight:500;font-size:15px;letter-spacing:-.01em;display:flex;justify-content:space-between;align-items:center;box-shadow:0 6px 18px rgba(0,0,0,.06)}\n#lvm-shell .pyramid .level .k{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;opacity:.75}\n#lvm-shell .pyramid .l1{background:#0E0E10;width:100%}\n#lvm-shell .pyramid .l2{background:#1D1D1F;width:84%}\n#lvm-shell .pyramid .l3{background:#3a3a3c;width:68%}\n#lvm-shell .pyramid .l4{background:var(--pink);width:52%}\n#lvm-shell .pyramid-cap{text-align:center;font-size:13px;color:var(--muted);margin-top:14px}\n\n\/* Section 7 honnetete : scorecard horizontal bars *\/\n#lvm-shell .scorecard{margin:30px 0 10px;border:1px solid var(--rule);border-radius:20px;padding:28px 26px;background:#fff}\n#lvm-shell .scorecard-head{display:grid;grid-template-columns:1.4fr 1fr 1fr;column-gap:28px;align-items:center;padding-bottom:18px;margin-bottom:8px;border-bottom:1px solid var(--rule-soft)}\n#lvm-shell .scorecard-head .h-crit{font-family:var(--font-mono);font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}\n#lvm-shell .scorecard-head .h-brand{display:flex;align-items:center;gap:8px;font-family:var(--font-display);font-size:14px;font-weight:600;color:var(--ink)}\n#lvm-shell .scorecard-head .h-brand img{width:22px;height:22px;border-radius:5px;object-fit:cover}\n#lvm-shell .scorecard-row{display:grid;grid-template-columns:1.4fr 1fr 1fr;column-gap:28px;align-items:center;padding:14px 0;border-bottom:1px solid var(--rule-soft)}\n#lvm-shell .scorecard-row:last-child{border-bottom:0}\n#lvm-shell .scorecard-row .crit{font-size:14px;color:var(--ink);font-weight:500;padding-right:14px}\n#lvm-shell .scorecard-row .bar{display:flex;flex-direction:row-reverse;align-items:center;gap:10px}\n#lvm-shell .scorecard-row .bar .b{flex:1;height:8px;border-radius:99px;background:var(--rule-soft);overflow:hidden;position:relative}\n#lvm-shell .scorecard-row .bar .b > i{display:block;height:100%;border-radius:99px;transition:width 1s cubic-bezier(.22,.61,.36,1)}\n#lvm-shell .scorecard-row .bar.lean .b > i{background:var(--pink)}\n#lvm-shell .scorecard-row .bar.mfp .b > i{background:var(--mfp)}\n#lvm-shell .scorecard-row .bar .v{font-family:var(--font-mono);font-size:12px;font-weight:600;color:var(--ink);min-width:32px;text-align:left}\n\n\/* Section 8 pour qui : persona checklist *\/\n#lvm-shell .persona{margin:28px 0 10px;display:grid;grid-template-columns:1fr;gap:14px}\n#lvm-shell .persona-it{display:grid;grid-template-columns:54px 1fr;gap:16px;padding:22px 24px;background:#fff;border:1px solid var(--rule);border-radius:18px;align-items:center}\n#lvm-shell .persona-it.match{background:var(--pink-soft);border-color:rgba(255,45,110,.25)}\n#lvm-shell .persona-it .pic{width:54px;height:54px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--rule-soft);position:relative;font-family:var(--font-mono);font-size:13px;font-weight:600;color:var(--ink)}\n#lvm-shell .persona-it.match .pic{background:var(--pink);color:#fff}\n#lvm-shell .persona-it .pic svg{width:24px;height:24px}\n#lvm-shell .persona-it h4{margin:0 0 4px;font-size:17px;letter-spacing:-.01em}\n#lvm-shell .persona-it p{margin:0;font-size:14px;color:var(--muted);line-height:1.55}\n#lvm-shell .persona-it.match h4{color:var(--ink)}\n\n\/* Section 9 migration : timeline steps *\/\n#lvm-shell .steps{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin:28px 0;position:relative}\n#lvm-shell .steps::before{content:\"\";position:absolute;top:14px;left:7px;right:calc(20% - 18px);height:1px;background:linear-gradient(90deg,var(--pink) 0%,var(--rule-soft) 100%);z-index:0}\n#lvm-shell .step{position:relative;padding-top:24px;z-index:1}\n#lvm-shell .step::before{content:\"\";position:absolute;top:8px;left:0;width:14px;height:14px;border-radius:50%;background:var(--pink);border:3px solid #fff;box-shadow:0 0 0 1px var(--rule)}\n#lvm-shell .step .sn{font-family:var(--font-mono);font-size:11px;color:var(--pink);font-weight:600;letter-spacing:.08em}\n#lvm-shell .step h4{margin:6px 0 6px;font-size:15px;letter-spacing:-.01em}\n#lvm-shell .step p{font-size:13px;color:var(--muted);line-height:1.5;margin:0}\n\n\/* Section 10 debloque : feature stack numbered XL *\/\n#lvm-shell .feat-stack{margin:30px 0 10px;border-top:1px solid var(--rule)}\n#lvm-shell .feat-it{display:grid;grid-template-columns:auto 1fr auto;gap:24px;padding:26px 0;border-bottom:1px solid var(--rule);align-items:center}\n#lvm-shell .feat-it .fn{font-family:var(--font-display);font-size:48px;font-weight:600;color:var(--pink);line-height:1;letter-spacing:-.04em;width:74px}\n#lvm-shell .feat-it .ft{font-family:var(--font-display);font-size:22px;font-weight:600;color:var(--ink);letter-spacing:-.015em;line-height:1.25;margin-bottom:6px}\n#lvm-shell .feat-it .fd{font-size:15px;color:var(--muted);line-height:1.55;margin:0}\n#lvm-shell .feat-it .fc{font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:500}\n#lvm-shell .feat-it:last-child{border-bottom:0}\n\n#lvm-shell .faq{margin:22px 0}\n#lvm-shell .faq details{border-bottom:1px solid var(--rule);padding:20px 0}\n#lvm-shell .faq details:first-of-type{border-top:1px solid var(--rule)}\n#lvm-shell .faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:18px;font-family:var(--font-display);font-size:20px;font-weight:500;letter-spacing:-.015em;color:var(--ink)}\n#lvm-shell .faq summary::-webkit-details-marker{display:none}\n#lvm-shell .faq summary::after{content:\"+\";font-size:24px;color:var(--muted);font-weight:300;line-height:1;transition:transform .25s, color .25s}\n#lvm-shell .faq details[open] summary::after{transform:rotate(45deg);color:var(--pink)}\n#lvm-shell .faq details[open] summary{color:var(--pink)}\n#lvm-shell .faq .ans{margin-top:14px;font-size:16px;color:var(--muted);line-height:1.65}\n\n#lvm-shell .get-band{background:var(--paper-2);border-radius:24px;padding:48px 36px;margin:60px 0 40px;text-align:center}\n#lvm-shell .get-band .kicker{font-family:var(--font-mono);font-size:11px;text-transform:uppercase;color:var(--pink);font-weight:600;letter-spacing:.1em;margin-bottom:14px}\n#lvm-shell .get-band h3{font-size:36px;margin:0 0 14px;letter-spacing:-.025em}\n#lvm-shell .get-band p{font-size:16px;color:var(--muted);max-width:480px;margin:0 auto 26px}\n#lvm-shell .get-band .stores{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}\n#lvm-shell .get-band .stores a{line-height:0;transition:transform .15s}\n#lvm-shell .get-band .stores a:hover{transform:translateY(-3px)}\n#lvm-shell .get-band .stores img{height:60px;width:auto;border-radius:11px}\n\n#lvm-shell .sources{font-size:14px;color:var(--muted);line-height:1.7}\n#lvm-shell .sources ol{padding-left:22px}\n#lvm-shell .sources li{margin-bottom:8px}\n\n#lvm-shell footer{padding:50px 0 60px;border-top:1px solid var(--rule);margin-top:40px}\n#lvm-shell footer .row{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap}\n#lvm-shell footer .kicker{font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--pink);font-weight:600}\n#lvm-shell footer p{font-size:13px;color:var(--muted);margin:8px 0 0}\n#lvm-shell footer .stores{display:flex;gap:8px}\n#lvm-shell footer .stores img{height:34px;width:auto;border-radius:6px}\n\n#lvm-shell .rev{opacity:0;transform:translateY(12px);transition:opacity .8s cubic-bezier(.22,.61,.36,1),transform .8s cubic-bezier(.22,.61,.36,1)}\n#lvm-shell .rev.on{opacity:1;transform:translateY(0)}\n@media (prefers-reduced-motion:reduce){#lvm-shell .rev{transition:none;opacity:1;transform:none}}\n\n@media (max-width:760px){\n  #lvm-shell .nav-row{padding:8px 18px;gap:8px}\n  #lvm-shell .nav-link{display:none}\n  #lvm-shell .nav-stores img{height:24px}\n  #lvm-shell .wrap{padding:0 22px}\n  #lvm-shell .hero{padding:34px 0 0}\n  #lvm-shell h1{font-size:46px;letter-spacing:-.035em}\n  #lvm-shell h1 .alt{font-size:.55em;margin-top:10px}\n  #lvm-shell .dek{font-size:20px}\n  #lvm-shell .hero-stores img{height:42px}\n  #lvm-shell .hero-bottom{grid-template-columns:1fr;gap:28px;margin:30px 0 40px;padding-top:24px;align-items:stretch}\n  #lvm-shell .phone-wrap{order:-1}\n  #lvm-shell .phone{width:240px}\n  #lvm-shell .tap-hint.desktop{display:none}\n  #lvm-shell .tap-hint.mobile{display:block;position:relative;left:auto;top:auto;text-align:center;margin:0 auto 10px;width:100%}\n  #lvm-shell .tap-hint.mobile .th-arrow{position:relative;display:block;margin:6px auto 0;width:34px;height:34px;transform:none;color:var(--pink)}\n  #lvm-shell .snippet{padding:24px 22px}\n  #lvm-shell .snippet p{font-size:18px}\n  #lvm-shell section{padding:48px 0}\n  #lvm-shell h2{font-size:34px;letter-spacing:-.03em}\n  #lvm-shell h3{font-size:24px}\n  #lvm-shell .section-label{margin-bottom:22px}\n  #lvm-shell .statement{padding:24px 0;margin:32px 0}\n  #lvm-shell .statement .num{font-size:44px}\n  #lvm-shell .statement .lbl{font-size:19px}\n  #lvm-shell .fig{padding:20px 14px 14px;border-radius:16px}\n  #lvm-shell .cv-wrap{height:310px}\n  #lvm-shell .method{grid-template-columns:1fr;gap:20px}\n  #lvm-shell .method.flip{grid-template-columns:1fr}\n  #lvm-shell .method.flip .m-phone{order:0}\n  #lvm-shell .mini-row{grid-template-columns:repeat(3,1fr);gap:10px}\n  #lvm-shell .mini-phone{padding:3px;border-radius:18px;border-width:1px;max-width:110px}\n  #lvm-shell .mini-phone .notch{width:42px;height:11px;border-radius:0 0 8px 8px}\n  #lvm-shell .mini-phone .scr{border-radius:15px}\n  #lvm-shell .mini-cap{font-size:10px}\n  #lvm-shell .mini-cap strong{font-size:13px}\n  #lvm-shell .duo-row{grid-template-columns:repeat(2,1fr);gap:12px}\n  #lvm-shell .duo-row .mini-phone{max-width:130px}\n  #lvm-shell .steps{grid-template-columns:1fr;gap:18px}\n  #lvm-shell .steps::before{display:none}\n  #lvm-shell .step{padding-top:0;padding-left:24px}\n  #lvm-shell .step::before{top:6px;left:0}\n  #lvm-shell .table-row{grid-template-columns:1.4fr .9fr .9fr}\n  #lvm-shell .table-row > .crit{padding:13px 12px;font-size:13px}\n  #lvm-shell .table-row > .cell{padding:13px 10px;font-size:12px;gap:8px}\n  #lvm-shell .table-row.head > div{padding:14px 12px;font-size:10px;gap:7px}\n  #lvm-shell .table-row.head .brand-cell img{width:20px;height:20px}\n  #lvm-shell .get-band{padding:36px 22px;border-radius:18px;margin:40px 0 30px}\n  #lvm-shell .get-band h3{font-size:28px}\n  #lvm-shell .get-band .stores img{height:50px}\n  #lvm-shell .cta-band{padding:22px;gap:14px}\n  #lvm-shell .cta-band .l{font-size:16px;min-width:0}\n  #lvm-shell .cta-band .stores img{height:38px}\n  #lvm-shell .faq summary{font-size:18px;gap:14px}\n  #lvm-shell .pyramid{max-width:100%}\n  #lvm-shell .pyramid .level{padding:11px 14px;font-size:14px}\n  #lvm-shell .scorecard{padding:20px 16px;border-radius:16px}\n  #lvm-shell .scorecard-head{grid-template-columns:1.2fr 1fr 1fr;column-gap:14px}\n  #lvm-shell .scorecard-head .h-brand{font-size:12px;gap:5px}\n  #lvm-shell .scorecard-head .h-brand img{width:18px;height:18px}\n  #lvm-shell .scorecard-row{grid-template-columns:1.2fr 1fr 1fr;column-gap:14px;padding:12px 0}\n  #lvm-shell .scorecard-row .crit{font-size:13px;padding-right:8px}\n  #lvm-shell .scorecard-row .bar{gap:6px}\n  #lvm-shell .scorecard-row .bar .v{font-size:11px;min-width:26px}\n  #lvm-shell .persona-it{grid-template-columns:44px 1fr;gap:12px;padding:16px 16px;border-radius:14px}\n  #lvm-shell .persona-it .pic{width:44px;height:44px;font-size:12px}\n  #lvm-shell .persona-it h4{font-size:15px}\n  #lvm-shell .persona-it p{font-size:13px}\n  #lvm-shell .feat-it{grid-template-columns:auto 1fr;gap:14px;padding:20px 0}\n  #lvm-shell .feat-it .fn{font-size:36px;width:54px}\n  #lvm-shell .feat-it .ft{font-size:18px}\n  #lvm-shell .feat-it .fd{font-size:13px}\n  #lvm-shell .feat-it .fc{display:none}\n}\n@media (max-width:480px){\n  #lvm-shell .phone-tabs{gap:5px}\n  #lvm-shell .phone-tabs button{padding:5px 8px;font-size:10px}\n  #lvm-shell .nav-stores{gap:4px}\n  #lvm-shell .nav-stores img{height:22px}\n  #lvm-shell .hero-stores img{height:40px}\n  #lvm-shell .crumb{font-size:12px}\n  #lvm-shell .table-row{grid-template-columns:1.3fr .85fr .85fr}\n  #lvm-shell .table-row > .crit{padding:11px 9px;font-size:12px}\n  #lvm-shell .table-row > .cell{padding:11px 8px;font-size:11px;gap:6px}\n  #lvm-shell .table-row.head > div{padding:11px 9px;font-size:9px;gap:5px}\n}\n\/* === Etude OFF === *\/\n#lvm-shell .bignum{font-family:var(--font-display);font-weight:600;font-size:88px;letter-spacing:-.045em;line-height:1;color:var(--pink);margin:8px 0 4px;font-variant-numeric:tabular-nums}\n#lvm-shell .bignum small{display:block;font-size:20px;color:var(--muted);font-weight:500;letter-spacing:-.01em;margin-top:10px;line-height:1.4}\n#lvm-shell .stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:30px 0}\n#lvm-shell .stat-card{background:var(--paper);border:1px solid var(--rule-soft);border-radius:16px;padding:22px 20px}\n#lvm-shell .stat-card .n{font-family:var(--font-display);font-weight:600;font-size:34px;letter-spacing:-.03em;color:var(--ink);font-variant-numeric:tabular-nums}\n#lvm-shell .stat-card .n.pink{color:var(--pink)}\n#lvm-shell .stat-card .t{font-size:13.5px;color:var(--muted);margin-top:6px;line-height:1.5}\n#lvm-shell .metho{background:var(--paper);border:1px solid var(--rule-soft);border-left:4px solid var(--pink);border-radius:0 16px 16px 0;padding:24px 26px;margin:30px 0}\n#lvm-shell .metho h3{font-family:var(--font-display);font-size:17px;font-weight:600;margin:0 0 12px;letter-spacing:-.01em}\n#lvm-shell .metho ul{margin:0;padding-left:20px;font-size:15px;color:var(--muted);line-height:1.7}\n#lvm-shell .metho li{margin:4px 0}\n#lvm-shell .metho code{font-family:var(--font-mono);font-size:13.5px;background:var(--paper-2);padding:1px 6px;border-radius:5px;color:var(--ink-2)}\n#lvm-shell .prod-cards{display:grid;gap:14px;margin:28px 0}\n#lvm-shell .prod-card{display:flex;align-items:center;gap:18px;background:var(--paper);border:1px solid var(--rule-soft);border-radius:16px;padding:18px 22px;flex-wrap:wrap}\n#lvm-shell .prod-card .who{flex:1;min-width:200px}\n#lvm-shell .prod-card .who b{font-family:var(--font-display);font-size:16.5px;letter-spacing:-.01em;color:var(--ink);display:block}\n#lvm-shell .prod-card .who span{font-size:13px;color:var(--muted)}\n#lvm-shell .prod-card .vals{display:flex;align-items:center;gap:14px;font-variant-numeric:tabular-nums}\n#lvm-shell .prod-card .fiche{font-family:var(--font-display);font-size:24px;font-weight:600;color:var(--ink);letter-spacing:-.02em}\n#lvm-shell .prod-card .fleche{color:var(--dim);font-size:17px}\n#lvm-shell .prod-card .reel{font-family:var(--font-display);font-size:24px;font-weight:600;color:var(--pink);letter-spacing:-.02em}\n#lvm-shell .prod-card .unit{font-size:11.5px;color:var(--dim);display:block;text-align:center;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;margin-top:2px}\n@media (max-width:640px){\n  #lvm-shell .bignum{font-size:56px}\n  #lvm-shell .bignum small{font-size:16px}\n  #lvm-shell .stat-grid{grid-template-columns:1fr}\n  #lvm-shell .prod-card .fiche, #lvm-shell .prod-card .reel{font-size:20px}\n  #lvm-shell .cta-band{flex-direction:column;align-items:flex-start}\n  #lvm-shell .cta-band .l{min-width:100%;flex:none}\n}\n<\/style>\n\n<style id=\"lvm-collision-reset\">\nbody.postid-1947 #lvm-shell .hero{display:block!important;align-items:initial!important;justify-content:initial!important;text-align:left!important;flex-direction:initial!important;padding:54px 0 0!important}\nbody.postid-1947 #lvm-shell .wrap,\nbody.postid-1947 #lvm-shell main.wrap{display:block!important;max-width:760px!important;margin-left:auto!important;margin-right:auto!important;padding-left:28px!important;padding-right:28px!important}\n@media (max-width:820px){\n  body.postid-1947 #lvm-shell .wrap,\n  body.postid-1947 #lvm-shell main.wrap{padding-left:18px!important;padding-right:18px!important}\n}\nhtml, body{overflow-x:hidden!important}\nbody.postid-1947 #lvm-shell{overflow-x:hidden;max-width:100vw}\nbody.postid-1947 #lvm-shell *{max-width:100%}\nbody.postid-1947 #lvm-shell .nav-row{max-width:100vw;box-sizing:border-box}\nbody.postid-1947 #lvm-shell.force-show .rev{opacity:1!important;transform:none!important}\n@media (max-width:760px){\n  body.postid-1947 #lvm-shell .cta-band{flex-direction:column!important;align-items:center!important;text-align:center!important;padding:26px 22px!important;gap:20px!important}\n  body.postid-1947 #lvm-shell .cta-band .l{min-width:0!important;width:100%!important;font-size:16px!important;line-height:1.5!important;text-align:center!important}\n  body.postid-1947 #lvm-shell .cta-band .stores{width:100%!important;justify-content:center!important;flex-wrap:nowrap!important;gap:10px!important}\n  body.postid-1947 #lvm-shell .cta-band .stores a{flex:1!important;max-width:170px!important;display:flex!important;justify-content:center!important}\n  body.postid-1947 #lvm-shell .cta-band .stores img{height:56px!important;width:100%!important;max-width:170px!important;object-fit:contain!important;object-position:center!important;border-radius:10px!important}\n}\n<\/style>\n<div id=\"lvm-shell\">\n<div class=\"progress\" aria-hidden=\"true\"><i id=\"progBar\"><\/i><\/div>\n\n<header class=\"nav\">\n  <div class=\"nav-row\">\n    <a class=\"nav-brand\" href=\"https:\/\/lean-app.com\/da\/\" aria-label=\"Lean forside\">\n      <img src=\"https:\/\/lean-app.com\/wp-content\/uploads\/2026\/05\/lvm-logo-lean-square-scaled.webp\" alt=\"\" width=\"512\" height=\"512\" loading=\"lazy\" decoding=\"async\" \/>\n      <span>Lean<\/span>\n    <\/a>\n    <span class=\"nav-spacer\"><\/span>\n    <a class=\"nav-link\" href=\"https:\/\/lean-app.com\/da\/tdee-calculator\/\">TDEE-beregner<\/a>\n    <div class=\"nav-stores\">\n      <a href=\"https:\/\/apps.apple.com\/fr\/app\/lean-calorie-ai-podometre\/id6738668646?utm_source=seo&#038;utm_medium=blog&#038;utm_campaign=etude-off\" target=\"_blank\" rel=\"noopener\" aria-label=\"Download i App Store\">\n        <img src=\"https:\/\/lean-app.com\/wp-content\/uploads\/2026\/05\/lvm-appstore-official.webp\" alt=\"App Store\" width=\"413\" height=\"122\" loading=\"lazy\" decoding=\"async\" \/>\n      <\/a>\n      <a href=\"https:\/\/play.google.com\/store\/apps\/details?id=com.lean.testsqflite&#038;utm_source=seo&#038;utm_medium=blog&#038;utm_campaign=etude-off\" target=\"_blank\" rel=\"noopener\" aria-label=\"Tilg\u00e6ngelig p\u00e5 Google Play\">\n        <img src=\"https:\/\/lean-app.com\/wp-content\/uploads\/2026\/05\/lvm-googleplay-official.webp\" alt=\"Google Play\" width=\"315\" height=\"95\" loading=\"lazy\" decoding=\"async\" \/>\n      <\/a>\n    <\/div>\n  <\/div>\n<\/header>\n\n<main class=\"wrap\">\n\n<section class=\"hero\" aria-labelledby=\"title\">\n  <div class=\"crumb\"><a href=\"https:\/\/lean-app.com\/da\/\">Hjem<\/a> &nbsp;\/&nbsp; Studie af kaloriedatabasen<\/div>\n  <div class=\"eyebrow\">Originalt studie &middot; \u00c5bne data<\/div>\n  <h1 id=\"title\">857&nbsp;655 produkter analyseret.\n    <span class=\"alt\">Det, din kaloriescanner ikke fort\u00e6ller dig.<\/span>\n  <\/h1>\n  <p class=\"dek\">Hver stregkodescanning i Frankrig sp\u00f8rger samme base. Vi har analyseret den i sin helhed. Mere end en ud af tre scanninger giver en manglende, ufuldst\u00e6ndig eller inkonsistent data.<\/p>\n  <div class=\"byline\">\n    <img class=\"by-logo\" src=\"https:\/\/lean-app.com\/wp-content\/uploads\/2026\/05\/lvm-logo-lean-square-scaled.webp\" alt=\"\" width=\"26\" height=\"26\" loading=\"lazy\" decoding=\"async\" \/>\n    <span>Af <strong>Lean-teamet<\/strong> &middot; publiceret 24. august 2026 &middot; l\u00e6setid 7 min<\/span>\n  <\/div>\n  <div class=\"hero-stores\">\n    <a href=\"https:\/\/apps.apple.com\/fr\/app\/lean-calorie-ai-podometre\/id6738668646?utm_source=seo&#038;utm_medium=blog&#038;utm_campaign=etude-off\" target=\"_blank\" rel=\"noopener\" aria-label=\"Download Lean i App Store\">\n      <img src=\"https:\/\/lean-app.com\/wp-content\/uploads\/2026\/05\/lvm-appstore-official.webp\" alt=\"T\u00e9l\u00e9charger sur l'App Store\" width=\"413\" height=\"122\" loading=\"lazy\" decoding=\"async\" \/>\n    <\/a>\n    <a href=\"https:\/\/play.google.com\/store\/apps\/details?id=com.lean.testsqflite&#038;utm_source=seo&#038;utm_medium=blog&#038;utm_campaign=etude-off\" target=\"_blank\" rel=\"noopener\" aria-label=\"Download Lean p\u00e5 Google Play\">\n      <img src=\"https:\/\/lean-app.com\/wp-content\/uploads\/2026\/05\/lvm-googleplay-official.webp\" alt=\"Disponible sur Google Play\" width=\"315\" height=\"95\" loading=\"lazy\" decoding=\"async\" \/>\n    <\/a>\n  <\/div>\n<\/section>\n\n<section aria-labelledby=\"s1\" class=\"rev\">\n  <div class=\"section-label\"><span class=\"bar\"><\/span><span class=\"num\">01<\/span><\/div>\n  <h2 id=\"s1\">Hvorfor dette studie<\/h2>\n  <p>N\u00e5r du scanner en stregkode i en kalorietracker i Frankrig, MyFitnessPal, Yazio, Lifesum eller Lean, kommer dataene mere eller mindre fra samme kilde: <a href=\"https:\/\/world.openfoodfacts.org\/\" target=\"_blank\" rel=\"noopener\">OpenFoodFacts<\/a>, en formidabel fransk kollaborativ base under \u00e5ben ODbL-licens. Millioner af produktposter, udfyldt af frivillige bidragydere.<\/p>\n  <p>En kollaborativ base, det er dens styrke og dens begr\u00e6nsning: hvem som helst kan oprette eller \u00e6ndre en post, og ingen kontrollerer systematisk. Ingen havde sat tal p\u00e5 den reelle p\u00e5lidelighed af det, din scanning giver. Vi downloadede derfor det komplette offentlige dump fra 23. august 2026 og testede hvert produkt solgt i Frankrig.<\/p>\n  <div class=\"stat-grid\">\n    <div class=\"stat-card\"><div class=\"n\">4 535 553<\/div><div class=\"t\">produkter i den globale base per 23. august 2026<\/div><\/div>\n    <div class=\"stat-card\"><div class=\"n\">1 265 726<\/div><div class=\"t\">produkter registreret som solgt i Frankrig<\/div><\/div>\n    <div class=\"stat-card\"><div class=\"n pink\">857 655<\/div><div class=\"t\">analyserbare produkter: kalorier og de 3 makroer angivet<\/div><\/div>\n  <\/div>\n<\/section>\n\n<section aria-labelledby=\"s2\" class=\"rev\">\n  <div class=\"section-label\"><span class=\"bar\"><\/span><span class=\"num\">02<\/span><\/div>\n  <h2 id=\"s2\">Metoden: hver post testet mod sig selv<\/h2>\n  <p>Intet laboratorium n\u00f8dvendigt for at opdage en forkert post: det er nok at holde den op mod sig selv. Kalorierne i en f\u00f8devare udledes af dens makron\u00e6ringsstoffer med Atwater-faktorerne, de samme som EU-forordningen INCO p\u00e5l\u00e6gger producenterne: 4&nbsp;kcal per gram protein, 4 per gram kulhydrater, 9 per gram fedt.<\/p>\n  <p>Viser en post 100&nbsp;kcal, men dens egne makroer giver 250, er en af de to linjer forkert. Og din app viser dig en af dem uden at blinke.<\/p>\n  <div class=\"metho\">\n    <h3>Komplet metodik<\/h3>\n    <ul>\n      <li>Officielt OpenFoodFacts-dump fra 23. august 2026 (ODbL-licens), omfang Frankrig<\/li>\n      <li>Genberegning: <code>4&times;protein + 4&times;kulhydrater + 9&times;fedt<\/code>, plus 7&nbsp;kcal\/g alkohol, 2&nbsp;kcal\/g fibre og 2,4&nbsp;kcal\/g polyoler (erythritol: 0), i overensstemmelse med INCO-forordning 1169\/2011<\/li>\n      <li>Post regnet som inkonsistent kun hvis forskellen overstiger b\u00e5de 10&nbsp;% og 30&nbsp;kcal\/100g: st\u00f8jen fra vand og te p\u00e5 2&nbsp;kcal er udelukket<\/li>\n      <li>16 364 afvigende poster forkastet (kalorier uden for 1-950&nbsp;kcal\/100g, umulige makroer)<\/li>\n      <li>Hvert eksempel citeret p\u00e5 denne side er kontrolleret igen i onlineposten p\u00e5 publiceringsdagen<\/li>\n    <\/ul>\n  <\/div>\n<\/section>\n\n<section aria-labelledby=\"s3\" class=\"rev\">\n  <div class=\"section-label\"><span class=\"bar\"><\/span><span class=\"num\">03<\/span><\/div>\n  <h2 id=\"s3\">Resultat 1: n\u00e6sten 1 ud af 3 poster er ufuldst\u00e6ndig<\/h2>\n  <div class=\"bignum\">31 %<small>af FR-produkterne uden komplette data<\/small><\/div>\n  <p>391 707 produkter solgt i Frankrig har ingen kalorier angivet, eller ikke deres tre makron\u00e6ringsstoffer. Konkret: du scanner, og appen viser 0&nbsp;kcal, eller kalorier uden protein eller kulhydrater. Du tror, du logger, du logger tomhed.<\/p>\n  <figure class=\"fig rev\">\n    <div class=\"cv-wrap\" style=\"position:relative;width:100%;height:400px;min-height:360px\"><canvas id=\"chartDonut\" aria-label=\"Fordeling af de 1 265 726 franske produkter efter postens p\u00e5lidelighed\" role=\"img\"><\/canvas><\/div>\n    <figcaption>Sk\u00e6bnen for en scanning i Frankrig, p\u00e5 1 265 726 produkter.<\/figcaption>\n  <\/figure>\n  <p>Det er den mest snigende fejl, fordi den ikke ligner en fejl: posten vises, produktet har et navn, et billede. Der mangler bare det v\u00e6sentlige.<\/p>\n<\/section>\n\n<section aria-labelledby=\"s4\" class=\"rev\">\n  <div class=\"section-label\"><span class=\"bar\"><\/span><span class=\"num\">04<\/span><\/div>\n  <h2 id=\"s4\">Resultat 2: 46 757 produkter med inkonsistente kalorier<\/h2>\n  <p>Af de 857 655 komplette poster viser 46 757 kalorier, der er uforenelige med deres egne makroer, med mindst 10&nbsp;% og 30&nbsp;kcal per 100&nbsp;g. Hvert punkt i grafen nedenfor er et rigtigt produkt: p\u00e5 x-aksen det, posten angiver, p\u00e5 y-aksen det, makroerne giver. En \u00e6rlig post lander p\u00e5 diagonalen.<\/p>\n  <figure class=\"fig rev\">\n    <div class=\"cv-wrap\" style=\"position:relative;width:100%;height:460px;min-height:420px\"><canvas id=\"chartScatter\" aria-label=\"Angivne kalorier mod genberegnede kalorier, stikpr\u00f8ve p\u00e5 1 370 produkter\" role=\"img\"><\/canvas><\/div>\n    <figcaption>1 370 rigtige produkter: angivet vs genberegnet fra makroerne.<\/figcaption>\n  <\/figure>\n  <p>Fordelingen af forskellene viser, at basen er massivt korrekt, og derefter g\u00e5r ud i en lang hale: de forkerte poster er ikke lidt forkerte, de er meget forkerte.<\/p>\n  <figure class=\"fig rev\">\n    <div class=\"cv-wrap\" style=\"position:relative;width:100%;height:360px;min-height:320px\"><canvas id=\"chartHisto\" aria-label=\"Fordeling af de relative forskelle mellem angivne og genberegnede kalorier\" role=\"img\"><\/canvas><\/div>\n    <figcaption>Fordeling af forskellene, logaritmisk skala.<\/figcaption>\n  <\/figure>\n  <figure class=\"fig rev\">\n    <div class=\"cv-wrap\" style=\"position:relative;width:100%;height:360px;min-height:320px\"><canvas id=\"chartSeuils\" aria-label=\"Inkonsistente produkter per forskelst\u00e6rskel\" role=\"img\"><\/canvas><\/div>\n    <figcaption>Inkonsistente produkter per forskelst\u00e6rskel, base 857 655 poster.<\/figcaption>\n  <\/figure>\n  <p>18 251 produkter, alts\u00e5 to ud af fem materielt inkonsistente, tager fejl <em>fra det ene til det dobbelte eller mere<\/em>. P\u00e5 det niveau er det ikke l\u00e6ngere en upr\u00e6cision, det er en data, der vender din kaloriebalance for dagen.<\/p>\n  <p>Ved at l\u00e6gge ufuldst\u00e6ndige og inkonsistente poster sammen: <strong>mere end en ud af tre scanninger i Frankrig giver en manglende, ufuldst\u00e6ndig eller inkonsistent data<\/strong>.<\/p>\n<\/section>\n\n<section aria-labelledby=\"s5\" class=\"rev\">\n  <div class=\"section-label\"><span class=\"bar\"><\/span><span class=\"num\">05<\/span><\/div>\n  <h2 id=\"s5\">Produkter, du har i dit skab<\/h2>\n  <p>Hver post nedenfor er kontrolleret igen online p\u00e5 publiceringsdagen. Til venstre det, OpenFoodFacts-posten viser, til h\u00f8jre det, dens egne makroer giver:<\/p>\n  <div class=\"prod-cards\">\n    <div class=\"prod-card\"><div class=\"who\"><b>Le Beurre Tendre<\/b><span>post for produktet Elle&amp;Vire &middot; 535 scanninger<\/span><\/div><div class=\"vals\"><span><span class=\"fiche\">375<\/span><span class=\"unit\">post<\/span><\/span><span class=\"fleche\">&rarr;<\/span><span><span class=\"reel\">744<\/span><span class=\"unit\">makroer<\/span><\/span><\/div><\/div>\n    <div class=\"prod-card\"><div class=\"who\"><b>Yaos Yaourt \u00e0 la Grecque<\/b><span>post for produktet Nestl\u00e9 &middot; 271 scanninger<\/span><\/div><div class=\"vals\"><span><span class=\"fiche\">50<\/span><span class=\"unit\">post<\/span><\/span><span class=\"fleche\">&rarr;<\/span><span><span class=\"reel\">98<\/span><span class=\"unit\">makroer<\/span><\/span><\/div><\/div>\n    <div class=\"prod-card\"><div class=\"who\"><b>Sweet &amp; Salty Nut chokolade<\/b><span>post for produktet Nature Valley &middot; 338 scanninger<\/span><\/div><div class=\"vals\"><span><span class=\"fiche\">647<\/span><span class=\"unit\">post<\/span><\/span><span class=\"fleche\">&rarr;<\/span><span><span class=\"reel\">140<\/span><span class=\"unit\">makroer<\/span><\/span><\/div><\/div>\n    <div class=\"prod-card\"><div class=\"who\"><b>Ratatouille \u00e0 la Proven\u00e7ale<\/b><span>post for produktet Cassegrain &middot; 298 scanninger<\/span><\/div><div class=\"vals\"><span><span class=\"fiche\">38<\/span><span class=\"unit\">post<\/span><\/span><span class=\"fleche\">&rarr;<\/span><span><span class=\"reel\">72<\/span><span class=\"unit\">makroer<\/span><\/span><\/div><\/div>\n  <\/div>\n  <p>Skoleeksemplet: linserne \u00e0 l&rsquo;Auvergnate fra Raynal &amp; Roquelaure findes under <strong>to forskellige poster<\/strong>. Den ene viser 48&nbsp;kcal\/100g, den anden 207. Den reelle v\u00e6rdi er omkring 99. Afh\u00e6ngigt af den stregkode, din app fanger, tror du, at du spiser halvdelen eller det dobbelte af virkeligheden.<\/p>\n  <p>En bruger, der sm\u00f8rer 30&nbsp;g af sm\u00f8rret ovenfor, undert\u00e6ller 110&nbsp;kcal. Hver dag. I den tro, at han g\u00f8r det rigtigt.<\/p>\n  <div class=\"cta-band rev\">\n    <div class=\"l\">Lean kontrollerer konsistensen i posterne og scanner ogs\u00e5 din tallerken via foto, uden at v\u00e6re afh\u00e6ngig af en stregkode.<\/div>\n    <div class=\"stores\">\n      <a href=\"https:\/\/apps.apple.com\/fr\/app\/lean-calorie-ai-podometre\/id6738668646?utm_source=seo&#038;utm_medium=blog&#038;utm_campaign=etude-off\" target=\"_blank\" rel=\"noopener\"><img src=\"https:\/\/lean-app.com\/wp-content\/uploads\/2026\/05\/lvm-appstore-official.webp\" alt=\"App Store\" width=\"413\" height=\"122\" loading=\"lazy\" decoding=\"async\" \/><\/a>\n      <a href=\"https:\/\/play.google.com\/store\/apps\/details?id=com.lean.testsqflite&#038;utm_source=seo&#038;utm_medium=blog&#038;utm_campaign=etude-off\" target=\"_blank\" rel=\"noopener\"><img src=\"https:\/\/lean-app.com\/wp-content\/uploads\/2026\/05\/lvm-googleplay-official.webp\" alt=\"Google Play\" width=\"315\" height=\"95\" loading=\"lazy\" decoding=\"async\" \/><\/a>\n    <\/div>\n  <\/div>\n<\/section>\n\n<section aria-labelledby=\"s6\" class=\"rev\">\n  <div class=\"section-label\"><span class=\"bar\"><\/span><span class=\"num\">06<\/span><\/div>\n  <h2 id=\"s6\">De mest ramte kategorier<\/h2>\n  <p>Inkonsistensen er ikke tilf\u00e6ldigt fordelt, og ironien i rangordenen er grusom: den mest ramte kategori i hele basen er den, sportsud\u00f8vere logger mest. <strong>Mere end en ud af fem proteinbarer (20,8&nbsp;%) har en inkonsistent post.<\/strong><\/p>\n  <figure class=\"fig rev\">\n    <div class=\"cv-wrap\" style=\"position:relative;width:100%;height:460px;min-height:420px\"><canvas id=\"chartBubble\" aria-label=\"Kategorier: produktvolumen, andel og antal inkonsistente poster\" role=\"img\"><\/canvas><\/div>\n    <figcaption>Hver boble er en kategori; dens st\u00f8rrelse, dens inkonsistente poster.<\/figcaption>\n  <\/figure>\n  <p>Komplekse opskrifter og berigede produkter koncentrerer fejlene: proteinbarer, konfekture, slik, oste. Enkle produkter klarer sig bedre.<\/p>\n  <figure class=\"fig rev\">\n    <div class=\"cv-wrap\" style=\"position:relative;width:100%;height:380px;min-height:340px\"><canvas id=\"chartCats\" aria-label=\"Inkonsistensgrad per kategori\" role=\"img\"><\/canvas><\/div>\n    <figcaption>Andel inkonsistente poster per kategori (min. 1 000 produkter).<\/figcaption>\n  <\/figure>\n  <p>En \u00e6rlig note: slik, konfekture og barer forklares delvist af s\u00f8destoffer. N\u00e5r en post ikke angiver sine polyoler, overvurderer genberegningen forskellen. Vi har korrigeret alt det, der var angivet; resten afspejler ogs\u00e5 dette hul i angivelsen, som narrer din app p\u00e5 pr\u00e6cis samme m\u00e5de.<\/p>\n<\/section>\n\n<section aria-labelledby=\"s7\" class=\"rev\">\n  <div class=\"section-label\"><span class=\"bar\"><\/span><span class=\"num\">07<\/span><\/div>\n  <h2 id=\"s7\">Hvad det \u00e6ndrer for din logning<\/h2>\n  <p>F\u00f8rst det, det ikke betyder: man skal ikke holde op med at scanne, og OpenFoodFacts er stadig et bem\u00e6rkelsesv\u00e6rdigt projekt, der lever og korrigeres kontinuerligt. Kurven nedenfor viser det: posterne oprettet i 2020-2021 er de mindst p\u00e5lidelige (op til 7,5&nbsp;% inkonsistens), og kvaliteten er tydeligt forbedret siden 2023.<\/p>\n  <figure class=\"fig rev\">\n    <div class=\"cv-wrap\" style=\"position:relative;width:100%;height:340px;min-height:300px\"><canvas id=\"chartYears\" aria-label=\"Andel inkonsistente poster efter postens oprettelses\u00e5r\" role=\"img\"><\/canvas><\/div>\n    <figcaption>Inkonsistensgrad efter postens oprettelses\u00e5r.<\/figcaption>\n  <\/figure>\n  <p>Fire af de seks v\u00e6rste poster i dumpet var allerede korrigeret online, da vi kontrollerede. Men din app har m\u00e5ske synkroniseret den forkerte version, og de hundredtusindvis af poster, der blev oprettet i de v\u00e6rste \u00e5r, er stadig i basen.<\/p>\n  <p>To reflekser at huske:<\/p>\n  <p><strong>1. Scanningen er et hastighedsv\u00e6rkt\u00f8j, ikke et sandhedsv\u00e6rkt\u00f8j.<\/strong> Efter en scanning er et blik p\u00e5 makroerne nok: hvis protein, kulhydrater og fedt ikke stemmer med de viste kalorier, er posten forkert. Det er pr\u00e6cis testen i dette studie, og den tager to sekunder.<\/p>\n  <p><strong>2. Den usynlige fejl er ikke p\u00e5 din tallerken, den er i dit forbrug.<\/strong> En post, der er 110&nbsp;kcal forkert, rettes p\u00e5 ti sekunder, n\u00e5r den er opdaget. Et kalorieforbrug, der er 300&nbsp;kcal om dagen forkert, ses aldrig: det er begravet i den \u00abaktivitetsmultiplikator\u00bb, din app fik dig til at v\u00e6lge ved tilmeldingen. Det er der, Lean koncentrerer sin pr\u00e6cision: <a href=\"https:\/\/lean-app.com\/da\/depense-energetique-totale-v2\/\">TDEE = BMR + NEAT + EAT + TEF<\/a>, med en BMR beregnet p\u00e5 din <a href=\"https:\/\/lean-app.com\/da\/calcul-metabolisme-de-base\/\">reelle fedtprocent<\/a> og en <a href=\"https:\/\/lean-app.com\/da\/calculateur-neat\/\">NEAT p\u00e5 dine reelle skridt<\/a>, ikke p\u00e5 en afkrydset boks.<\/p>\n  <div class=\"cta-band rev\">\n    <div class=\"l\">Bliv Lean, forbliv Lean: den eneste app, der beregner dit forbrug p\u00e5 m\u00e5linger, ikke p\u00e5 bokse.<\/div>\n    <div class=\"stores\">\n      <a href=\"https:\/\/apps.apple.com\/fr\/app\/lean-calorie-ai-podometre\/id6738668646?utm_source=seo&#038;utm_medium=blog&#038;utm_campaign=etude-off\" target=\"_blank\" rel=\"noopener\"><img src=\"https:\/\/lean-app.com\/wp-content\/uploads\/2026\/05\/lvm-appstore-official.webp\" alt=\"App Store\" width=\"413\" height=\"122\" loading=\"lazy\" decoding=\"async\" \/><\/a>\n      <a href=\"https:\/\/play.google.com\/store\/apps\/details?id=com.lean.testsqflite&#038;utm_source=seo&#038;utm_medium=blog&#038;utm_campaign=etude-off\" target=\"_blank\" rel=\"noopener\"><img src=\"https:\/\/lean-app.com\/wp-content\/uploads\/2026\/05\/lvm-googleplay-official.webp\" alt=\"Google Play\" width=\"315\" height=\"95\" loading=\"lazy\" decoding=\"async\" \/><\/a>\n    <\/div>\n  <\/div>\n<\/section>\n\n<section aria-labelledby=\"s9\" class=\"rev\">\n  <div class=\"section-label\"><span class=\"bar\"><\/span><span class=\"num\">08<\/span><\/div>\n  <h2 id=\"s9\">Videnskabelige deponeringer og citering<\/h2>\n  <p>Dette studie er deponeret i uafh\u00e6ngige \u00e5bne arkiver, med en varig identifikator (DOI) og de komplette PDF-filer p\u00e5 fransk og engelsk. Hver deponering kan kontrolleres uden at g\u00e5 via dette websted:<\/p>\n  <div class=\"prod-cards\">\n    <div class=\"prod-card\"><div class=\"who\"><b>Zenodo (CERN)<\/b><span>DOI 10.5281\/zenodo.22284416 &middot; referencedeponering, PDF FR + EN<\/span><\/div><div class=\"vals\"><a href=\"https:\/\/doi.org\/10.5281\/zenodo.22284416\" target=\"_blank\" rel=\"noopener\">\u00c5bn deponeringen &rarr;<\/a><\/div><\/div>\n    <div class=\"prod-card\"><div class=\"who\"><b>Figshare<\/b><span>DOI 10.6084\/m9.figshare.33432244 &middot; preprint, PDF FR + EN<\/span><\/div><div class=\"vals\"><a href=\"https:\/\/doi.org\/10.6084\/m9.figshare.33432244\" target=\"_blank\" rel=\"noopener\">\u00c5bn deponeringen &rarr;<\/a><\/div><\/div>\n    <div class=\"prod-card\"><div class=\"who\"><b>OSF (Center for Open Science)<\/b><span>offentligt projekt tczvj &middot; metodik og filer<\/span><\/div><div class=\"vals\"><a href=\"https:\/\/osf.io\/tczvj\/\" target=\"_blank\" rel=\"noopener\">\u00c5bn projektet &rarr;<\/a><\/div><\/div>\n    <div class=\"prod-card\"><div class=\"who\"><b>data.gouv.fr<\/b><span>erkl\u00e6ret genbrug af datas\u00e6ttet Open Food Facts<\/span><\/div><div class=\"vals\"><a href=\"https:\/\/www.data.gouv.fr\/fr\/reuses\/etude-coherence-interne-des-donnees-caloriques-dopen-food-facts\/\" target=\"_blank\" rel=\"noopener\">Se genbruget &rarr;<\/a><\/div><\/div>\n  <\/div>\n  <p><strong>For at citere dette studie:<\/strong> Lean-teamet (2026). 857 655 produkter analyseret: intern konsistens i kaloriedata i Open Food Facts. Zenodo. https:\/\/doi.org\/10.5281\/zenodo.22284416<\/p>\n<\/section>\n\n<section aria-labelledby=\"s8\" class=\"rev\">\n  <div class=\"section-label\"><span class=\"bar\"><\/span><span class=\"num\">FAQ<\/span><\/div>\n  <h2 id=\"s8\">Ofte stillede sp\u00f8rgsm\u00e5l<\/h2>\n  <div class=\"faq\">\n    <details><summary>Hvorfor OpenFoodFacts og ikke USDA?<\/summary><div class=\"ans\">For produkter med stregkode solgt i Frankrig er trackernes referencekilde OpenFoodFacts. USDA d\u00e6kker r\u00e5varer og det amerikanske marked. Dette studie handler om det, en scanning i Frankrig faktisk giver.<\/div><\/details>\n    <details><summary>Skal man holde op med at scanne sin mad?<\/summary><div class=\"ans\">Nej. Scanningen er stadig den hurtigste m\u00e5de at logge p\u00e5. God praksis: kontroll\u00e9r, at de viste makroer er konsistente med kalorierne. To sekunder, der undg\u00e5r de v\u00e6rste poster.<\/div><\/details>\n    <details><summary>Retter applikationerne disse fejl?<\/summary><div class=\"ans\">Basen lever kontinuerligt og korrigeres, det er styrken ved det kollaborative. Men en app, der har synkroniseret en forkert post, kan beholde den i cache l\u00e6nge efter korrektionen online.<\/div><\/details>\n    <details><summary>Kan man genbruge tallene fra dette studie?<\/summary><div class=\"ans\">Ja, frit, ved at citere \u00abLean-studie, august 2026\u00bb med et link til denne side. Kildedataene tilh\u00f8rer OpenFoodFacts (ODbL-licens), og vores metodik er beskrevet i sin helhed ovenfor.<\/div><\/details>\n  <\/div>\n<\/section>\n\n<section aria-labelledby=\"src\" class=\"sources rev\">\n  <div class=\"section-label\"><span class=\"bar\"><\/span><span class=\"num\">Kilder<\/span><\/div>\n  <ol>\n    <li>OpenFoodFacts, officielt dump fra 23. august 2026, <a href=\"https:\/\/world.openfoodfacts.org\/data\" target=\"_blank\" rel=\"noopener\">world.openfoodfacts.org\/data<\/a>, ODbL-licens.<\/li>\n    <li>Forordning (EU) nr. 1169\/2011 (INCO), bilag XIV: energiomregningsfaktorer.<\/li>\n    <li>Atwater W.O. &amp; Bryant A.P. (1900). The availability and fuel value of food materials.<\/li>\n    <li>Merrill A.L. &amp; Watt B.K. (1973). Energy value of foods, USDA Agriculture Handbook No. 74.<\/li>\n  <\/ol>\n<\/section>\n\n<\/main>\n\n<footer>\n  <div class=\"wrap\">\n    <div class=\"row\">\n      <div>\n        <div class=\"kicker\">Lean &middot; lean-app.com<\/div>\n        <p>Studie publiceret 24. august 2026. Opdateres regelm\u00e6ssigt med brugerfeedback og nye relevante studier. Lean f\u00e5s til iOS og Android.<\/p>\n      <\/div>\n      <div class=\"stores\">\n        <a href=\"https:\/\/apps.apple.com\/fr\/app\/lean-calorie-ai-podometre\/id6738668646?utm_source=seo&#038;utm_medium=blog&#038;utm_campaign=etude-off\" target=\"_blank\" rel=\"noopener\"><img src=\"https:\/\/lean-app.com\/wp-content\/uploads\/2026\/05\/lvm-appstore-official.webp\" alt=\"App Store\" width=\"413\" height=\"122\" loading=\"lazy\" decoding=\"async\" \/><\/a>\n        <a href=\"https:\/\/play.google.com\/store\/apps\/details?id=com.lean.testsqflite&#038;utm_source=seo&#038;utm_medium=blog&#038;utm_campaign=etude-off\" target=\"_blank\" rel=\"noopener\"><img src=\"https:\/\/lean-app.com\/wp-content\/uploads\/2026\/05\/lvm-googleplay-official.webp\" alt=\"Google Play\" width=\"315\" height=\"95\" loading=\"lazy\" decoding=\"async\" \/><\/a>\n      <\/div>\n    <\/div>\n  <\/div>\n<\/footer>\n<script data-wpmeteor-nooptimize=\"true\">\n(function(){\n  var bar = document.getElementById('progBar');\n  function up(){\n    var h = document.documentElement;\n    var sc = (h.scrollTop)\/Math.max(1,(h.scrollHeight - h.clientHeight));\n    bar.style.transform = 'scaleX(' + Math.max(0,Math.min(1,sc)) + ')';\n  }\n  document.addEventListener('scroll', up, {passive:true});\n  up();\n})();\n\n(function(){\n  if (!('IntersectionObserver' in window)) {\n    document.querySelectorAll('.rev').forEach(function(n){n.classList.add('on')});\n    return;\n  }\n  var obs = new IntersectionObserver(function(entries){\n    entries.forEach(function(e){\n      if (e.isIntersecting) { e.target.classList.add('on'); obs.unobserve(e.target); }\n    });\n  }, {threshold:0.12});\n  document.querySelectorAll('.rev').forEach(function(n){ obs.observe(n); });\n})();\n<\/script>\n\n<script data-wpmeteor-nooptimize=\"true\">\n\/\/ === Charts etude OFF ===\n(function chartInit(){\n  if (typeof Chart === 'undefined') { return setTimeout(chartInit, 60); }\n  var LEAN_LANG = document.documentElement.lang || 'fr';\n  function T(fr, en){ return LEAN_LANG.indexOf('en') === 0 ? en : fr; }\n  var PINK = '#FF2D6E', INK = '#0E0E10', MUTED = '#6E6E73', RULE = '#E8E6DF';\n  var PINKS = ['rgba(255,45,110,1)','rgba(255,45,110,0.82)','rgba(255,45,110,0.66)','rgba(255,45,110,0.52)','rgba(255,45,110,0.4)','rgba(255,45,110,0.3)','rgba(255,45,110,0.24)','rgba(255,45,110,0.18)'];\n  Chart.defaults.font.family = '-apple-system, \"SF Pro Text\", system-ui, sans-serif';\n  var DPR = Math.max(2, window.devicePixelRatio || 2);\n  function nf(v){ return v.toLocaleString('fr-FR'); }\n  function pinkGrad(ctx, alphaTop){\n    var g = ctx.createLinearGradient(0, 0, 0, ctx.canvas.clientHeight || 360);\n    g.addColorStop(0, 'rgba(255,45,110,' + alphaTop + ')');\n    g.addColorStop(1, 'rgba(255,45,110,0.02)');\n    return g;\n  }\n\n  \/\/ 1. Donut : le sort d'un scan\n  var elD = document.getElementById('chartDonut');\n  if (elD) new Chart(elD, {\n    type: 'doughnut',\n    data: {\n      labels: [T('Fiche compl\u00e8te et coh\u00e9rente', 'Complete and consistent'), T('Fiche incompl\u00e8te', 'Incomplete entry'), T('Calories incoh\u00e9rentes', 'Inconsistent calories'), T('Donn\u00e9es aberrantes', 'Invalid data')],\n      datasets: [{ data: [807650, 391707, 46757, 19612],\n        backgroundColor: ['#E8E6DF', PINK, 'rgba(255,45,110,0.55)', 'rgba(110,110,115,0.45)'],\n        borderWidth: 3, borderColor: '#FFFFFF', borderRadius: 6, spacing: 1, hoverOffset: 6 }]\n    },\n    options: { responsive: true, maintainAspectRatio: false, devicePixelRatio: DPR, cutout: '66%',\n      plugins: { legend: { position: 'bottom', labels: { color: INK, boxWidth: 12, boxHeight: 12, borderRadius: 3, useBorderRadius: true, padding: 14, font: { size: 12.5 } } },\n        tooltip: { callbacks: { label: function(c){ return ' ' + nf(c.parsed) + T(' produits (', ' products (') + (100 * c.parsed \/ 1265726).toFixed(1) + ' %)'; } } } }\n    },\n    plugins: [{ id: 'centerText', afterDraw: function(chart){\n      var a = chart.ctx, area = chart.chartArea;\n      a.save(); a.textAlign = 'center';\n      a.fillStyle = PINK; a.font = '600 30px -apple-system, \"SF Pro Display\", system-ui, sans-serif';\n      a.fillText(T('1 sur 3', '1 in 3'), (area.left + area.right) \/ 2, (area.top + area.bottom) \/ 2 - 4);\n      a.fillStyle = MUTED; a.font = '500 12px -apple-system, system-ui, sans-serif';\n      a.fillText(T('scans non fiables', 'unreliable scans'), (area.left + area.right) \/ 2, (area.top + area.bottom) \/ 2 + 18);\n      a.restore();\n    } }]\n  });\n\n  \/\/ 2. Scatter : declare vs recalcule + diagonale de verite\n  var elSc = document.getElementById('chartScatter');\n  if (elSc) new Chart(elSc, {\n    type: 'scatter',\n    data: { datasets: [\n      { label: T('Fiches coh\u00e9rentes', 'Consistent entries'), data: [{\"x\": 457, \"y\": 457}, {\"x\": 299, \"y\": 294}, {\"x\": 391, \"y\": 386}, {\"x\": 129, \"y\": 129}, {\"x\": 476, \"y\": 483}, {\"x\": 535, \"y\": 531}, {\"x\": 21, \"y\": 21}, {\"x\": 529, \"y\": 536}, {\"x\": 36, \"y\": 36}, {\"x\": 566, \"y\": 547}, {\"x\": 429, \"y\": 458}, {\"x\": 483, \"y\": 488}, {\"x\": 594, \"y\": 636}, {\"x\": 149, \"y\": 146}, {\"x\": 80, \"y\": 81}, {\"x\": 350, \"y\": 353}, {\"x\": 33, \"y\": 37}, {\"x\": 93, \"y\": 93}, {\"x\": 27, \"y\": 27}, {\"x\": 190, \"y\": 204}, {\"x\": 50, \"y\": 50}, {\"x\": 30, \"y\": 29}, {\"x\": 475, \"y\": 498}, {\"x\": 319, \"y\": 319}, {\"x\": 382, \"y\": 385}, {\"x\": 412, \"y\": 416}, {\"x\": 404, \"y\": 399}, {\"x\": 171, \"y\": 171}, {\"x\": 158, \"y\": 154}, {\"x\": 418, \"y\": 421}, {\"x\": 341, \"y\": 336}, {\"x\": 494, \"y\": 470}, {\"x\": 238, \"y\": 219}, {\"x\": 141, \"y\": 141}, {\"x\": 276, \"y\": 270}, {\"x\": 213, \"y\": 213}, {\"x\": 309, \"y\": 309}, {\"x\": 134, \"y\": 130}, {\"x\": 388, \"y\": 387}, {\"x\": 223, \"y\": 221}, {\"x\": 78, \"y\": 78}, {\"x\": 256, \"y\": 250}, {\"x\": 327, \"y\": 324}, {\"x\": 106, \"y\": 106}, {\"x\": 268, \"y\": 262}, {\"x\": 373, \"y\": 373}, {\"x\": 78, \"y\": 78}, {\"x\": 291, \"y\": 291}, {\"x\": 362, \"y\": 360}, {\"x\": 311, \"y\": 311}, {\"x\": 385, \"y\": 385}, {\"x\": 333, \"y\": 333}, {\"x\": 399, \"y\": 397}, {\"x\": 110, \"y\": 112}, {\"x\": 104, \"y\": 104}, {\"x\": 448, \"y\": 447}, {\"x\": 105, \"y\": 105}, {\"x\": 108, \"y\": 108}, {\"x\": 128, \"y\": 126}, {\"x\": 168, \"y\": 166}, {\"x\": 369, \"y\": 370}, {\"x\": 147, \"y\": 146}, {\"x\": 398, \"y\": 390}, {\"x\": 309, \"y\": 309}, {\"x\": 98, \"y\": 98}, {\"x\": 106, \"y\": 106}, {\"x\": 245, \"y\": 241}, {\"x\": 104, \"y\": 104}, {\"x\": 353, \"y\": 359}, {\"x\": 124, \"y\": 124}, {\"x\": 373, \"y\": 369}, {\"x\": 362, \"y\": 368}, {\"x\": 133, \"y\": 132}, {\"x\": 157, \"y\": 157}, {\"x\": 51, \"y\": 51}, {\"x\": 391, \"y\": 391}, {\"x\": 365, \"y\": 344}, {\"x\": 113, \"y\": 113}, {\"x\": 366, \"y\": 366}, {\"x\": 142, \"y\": 138}, {\"x\": 101, \"y\": 101}, {\"x\": 285, \"y\": 285}, {\"x\": 60, \"y\": 59}, {\"x\": 45, \"y\": 50}, {\"x\": 494, \"y\": 496}, {\"x\": 565, \"y\": 561}, {\"x\": 480, \"y\": 481}, {\"x\": 366, \"y\": 360}, {\"x\": 333, \"y\": 333}, {\"x\": 304, \"y\": 307}, {\"x\": 1, \"y\": 1}, {\"x\": 564, \"y\": 564}, {\"x\": 406, \"y\": 394}, {\"x\": 336, \"y\": 338}, {\"x\": 101, \"y\": 100}, {\"x\": 217, \"y\": 217}, {\"x\": 9, \"y\": 8}, {\"x\": 110, \"y\": 118}, {\"x\": 335, \"y\": 332}, {\"x\": 92, \"y\": 110}, {\"x\": 1, \"y\": 1}, {\"x\": 335, \"y\": 331}, {\"x\": 495, \"y\": 505}, {\"x\": 136, \"y\": 136}, {\"x\": 72, \"y\": 72}, {\"x\": 359, \"y\": 361}, {\"x\": 39, \"y\": 38}, {\"x\": 19, \"y\": 18}, {\"x\": 465, \"y\": 461}, {\"x\": 276, \"y\": 276}, {\"x\": 358, \"y\": 352}, {\"x\": 156, \"y\": 156}, {\"x\": 449, \"y\": 445}, {\"x\": 182, \"y\": 176}, {\"x\": 240, \"y\": 240}, {\"x\": 284, \"y\": 283}, {\"x\": 221, \"y\": 222}, {\"x\": 331, \"y\": 331}, {\"x\": 254, \"y\": 251}, {\"x\": 299, \"y\": 299}, {\"x\": 619, \"y\": 616}, {\"x\": 54, \"y\": 52}, {\"x\": 176, \"y\": 160}, {\"x\": 150, \"y\": 145}, {\"x\": 410, \"y\": 409}, {\"x\": 216, \"y\": 213}, {\"x\": 390, \"y\": 423}, {\"x\": 485, \"y\": 491}, {\"x\": 498, \"y\": 498}, {\"x\": 42, \"y\": 44}, {\"x\": 295, \"y\": 292}, {\"x\": 376, \"y\": 375}, {\"x\": 65, \"y\": 65}, {\"x\": 29, \"y\": 28}, {\"x\": 228, \"y\": 224}, {\"x\": 386, \"y\": 386}, {\"x\": 628, \"y\": 628}, {\"x\": 336, \"y\": 336}, {\"x\": 336, \"y\": 306}, {\"x\": 38, \"y\": 36}, {\"x\": 507, \"y\": 483}, {\"x\": 50, \"y\": 50}, {\"x\": 117, \"y\": 119}, {\"x\": 332, \"y\": 332}, {\"x\": 250, \"y\": 248}, {\"x\": 1, \"y\": 1}, {\"x\": 237, \"y\": 245}, {\"x\": 213, \"y\": 209}, {\"x\": 168, \"y\": 195}, {\"x\": 368, \"y\": 372}, {\"x\": 369, \"y\": 369}, {\"x\": 366, \"y\": 363}, {\"x\": 197, \"y\": 197}, {\"x\": 176, \"y\": 176}, {\"x\": 401, \"y\": 397}, {\"x\": 167, \"y\": 165}, {\"x\": 381, \"y\": 380}, {\"x\": 271, \"y\": 271}, {\"x\": 181, \"y\": 184}, {\"x\": 139, \"y\": 139}, {\"x\": 364, \"y\": 364}, {\"x\": 385, \"y\": 387}, {\"x\": 385, \"y\": 388}, {\"x\": 239, \"y\": 249}, {\"x\": 314, \"y\": 316}, {\"x\": 185, \"y\": 185}, {\"x\": 418, \"y\": 423}, {\"x\": 161, \"y\": 161}, {\"x\": 217, \"y\": 217}, {\"x\": 236, \"y\": 236}, {\"x\": 166, \"y\": 166}, {\"x\": 117, \"y\": 113}, {\"x\": 199, \"y\": 200}, {\"x\": 150, \"y\": 148}, {\"x\": 122, \"y\": 124}, {\"x\": 289, \"y\": 288}, {\"x\": 361, \"y\": 363}, {\"x\": 173, \"y\": 177}, {\"x\": 165, \"y\": 164}, {\"x\": 106, \"y\": 109}, {\"x\": 172, \"y\": 169}, {\"x\": 95, \"y\": 94}, {\"x\": 305, \"y\": 306}, {\"x\": 97, \"y\": 96}, {\"x\": 348, \"y\": 348}, {\"x\": 136, \"y\": 135}, {\"x\": 156, \"y\": 158}, {\"x\": 124, \"y\": 124}, {\"x\": 225, \"y\": 225}, {\"x\": 153, \"y\": 153}, {\"x\": 139, \"y\": 138}, {\"x\": 255, \"y\": 260}, {\"x\": 398, \"y\": 410}, {\"x\": 392, \"y\": 388}, {\"x\": 327, \"y\": 325}, {\"x\": 272, \"y\": 270}, {\"x\": 283, \"y\": 283}, {\"x\": 144, \"y\": 142}, {\"x\": 283, \"y\": 283}, {\"x\": 338, \"y\": 332}, {\"x\": 251, \"y\": 228}, {\"x\": 48, \"y\": 48}, {\"x\": 450, \"y\": 437}, {\"x\": 328, \"y\": 310}, {\"x\": 339, \"y\": 369}, {\"x\": 404, \"y\": 405}, {\"x\": 551, \"y\": 559}, {\"x\": 221, \"y\": 219}, {\"x\": 123, \"y\": 122}, {\"x\": 356, \"y\": 354}, {\"x\": 248, \"y\": 248}, {\"x\": 250, \"y\": 250}, {\"x\": 163, \"y\": 156}, {\"x\": 317, \"y\": 292}, {\"x\": 245, \"y\": 246}, {\"x\": 229, \"y\": 229}, {\"x\": 725, \"y\": 717}, {\"x\": 159, \"y\": 161}, {\"x\": 361, \"y\": 357}, {\"x\": 111, \"y\": 109}, {\"x\": 418, \"y\": 423}, {\"x\": 220, \"y\": 214}, {\"x\": 228, \"y\": 229}, {\"x\": 139, \"y\": 141}, {\"x\": 155, \"y\": 126}, {\"x\": 162, \"y\": 163}, {\"x\": 403, \"y\": 397}, {\"x\": 364, \"y\": 360}, {\"x\": 402, \"y\": 406}, {\"x\": 55, \"y\": 55}, {\"x\": 257, \"y\": 260}, {\"x\": 105, \"y\": 105}, {\"x\": 110, \"y\": 110}, {\"x\": 42, \"y\": 43}, {\"x\": 365, \"y\": 370}, {\"x\": 235, \"y\": 235}, {\"x\": 404, \"y\": 401}, {\"x\": 111, \"y\": 108}, {\"x\": 413, \"y\": 413}, {\"x\": 70, \"y\": 72}, {\"x\": 206, \"y\": 206}, {\"x\": 390, \"y\": 390}, {\"x\": 524, \"y\": 529}, {\"x\": 285, \"y\": 288}, {\"x\": 177, \"y\": 177}, {\"x\": 107, \"y\": 105}, {\"x\": 52, \"y\": 53}, {\"x\": 361, \"y\": 361}, {\"x\": 125, \"y\": 123}, {\"x\": 343, \"y\": 337}, {\"x\": 227, \"y\": 228}, {\"x\": 124, \"y\": 124}, {\"x\": 74, \"y\": 70}, {\"x\": 325, \"y\": 325}, {\"x\": 87, \"y\": 86}, {\"x\": 41, \"y\": 41}, {\"x\": 365, \"y\": 365}, {\"x\": 177, \"y\": 176}, {\"x\": 333, \"y\": 332}, {\"x\": 82, \"y\": 82}, {\"x\": 328, \"y\": 328}, {\"x\": 562, \"y\": 557}, {\"x\": 530, \"y\": 520}, {\"x\": 290, \"y\": 284}, {\"x\": 335, \"y\": 335}, {\"x\": 367, \"y\": 367}, {\"x\": 198, \"y\": 198}, {\"x\": 308, \"y\": 294}, {\"x\": 368, \"y\": 370}, {\"x\": 71, \"y\": 71}, {\"x\": 60, \"y\": 59}, {\"x\": 19, \"y\": 16}, {\"x\": 320, \"y\": 324}, {\"x\": 183, \"y\": 172}, {\"x\": 124, \"y\": 124}, {\"x\": 465, \"y\": 450}, {\"x\": 363, \"y\": 367}, {\"x\": 111, \"y\": 109}, {\"x\": 116, \"y\": 116}, {\"x\": 565, \"y\": 558}, {\"x\": 136, \"y\": 146}, {\"x\": 458, \"y\": 497}, {\"x\": 512, \"y\": 504}, {\"x\": 545, \"y\": 540}, {\"x\": 382, \"y\": 384}, {\"x\": 547, \"y\": 520}, {\"x\": 8, \"y\": 2}, {\"x\": 109, \"y\": 109}, {\"x\": 167, \"y\": 176}, {\"x\": 338, \"y\": 336}, {\"x\": 140, \"y\": 142}, {\"x\": 615, \"y\": 612}, {\"x\": 503, \"y\": 498}, {\"x\": 546, \"y\": 542}, {\"x\": 313, \"y\": 318}, {\"x\": 424, \"y\": 425}, {\"x\": 544, \"y\": 534}, {\"x\": 370, \"y\": 370}, {\"x\": 12, \"y\": 14}, {\"x\": 433, \"y\": 460}, {\"x\": 770, \"y\": 771}, {\"x\": 303, \"y\": 274}, {\"x\": 127, \"y\": 123}, {\"x\": 410, \"y\": 399}, {\"x\": 371, \"y\": 364}, {\"x\": 62, \"y\": 62}, {\"x\": 239, \"y\": 239}, {\"x\": 238, \"y\": 238}, {\"x\": 361, \"y\": 360}, {\"x\": 253, \"y\": 250}, {\"x\": 140, \"y\": 140}, {\"x\": 23, \"y\": 23}, {\"x\": 46, \"y\": 46}, {\"x\": 101, \"y\": 101}, {\"x\": 487, \"y\": 486}, {\"x\": 223, \"y\": 223}, {\"x\": 247, \"y\": 247}, {\"x\": 47, \"y\": 47}, {\"x\": 81, \"y\": 81}, {\"x\": 336, \"y\": 332}, {\"x\": 51, \"y\": 44}, {\"x\": 522, \"y\": 503}, {\"x\": 157, \"y\": 157}, {\"x\": 113, \"y\": 113}, {\"x\": 619, \"y\": 620}, {\"x\": 316, \"y\": 316}, {\"x\": 270, \"y\": 270}, {\"x\": 337, \"y\": 333}, {\"x\": 351, \"y\": 351}, {\"x\": 197, \"y\": 198}, {\"x\": 249, \"y\": 243}, {\"x\": 49, \"y\": 50}, {\"x\": 171, \"y\": 171}, {\"x\": 46, \"y\": 58}, {\"x\": 132, \"y\": 134}, {\"x\": 243, \"y\": 249}, {\"x\": 247, \"y\": 247}, {\"x\": 49, \"y\": 44}, {\"x\": 129, \"y\": 129}, {\"x\": 462, \"y\": 462}, {\"x\": 105, \"y\": 104}, {\"x\": 57, \"y\": 54}, {\"x\": 347, \"y\": 347}, {\"x\": 152, \"y\": 152}, {\"x\": 136, \"y\": 136}, {\"x\": 32, \"y\": 38}, {\"x\": 696, \"y\": 692}, {\"x\": 360, \"y\": 360}, {\"x\": 510, \"y\": 510}, {\"x\": 183, \"y\": 179}, {\"x\": 248, \"y\": 248}, {\"x\": 232, \"y\": 232}, {\"x\": 681, \"y\": 685}, {\"x\": 81, \"y\": 81}, {\"x\": 62, \"y\": 68}, {\"x\": 436, \"y\": 441}, {\"x\": 561, \"y\": 562}, {\"x\": 204, \"y\": 208}, {\"x\": 83, \"y\": 84}, {\"x\": 289, \"y\": 302}, {\"x\": 461, \"y\": 462}, {\"x\": 683, \"y\": 681}, {\"x\": 161, \"y\": 160}, {\"x\": 28, \"y\": 32}, {\"x\": 363, \"y\": 363}, {\"x\": 498, \"y\": 498}, {\"x\": 452, \"y\": 466}, {\"x\": 186, \"y\": 186}, {\"x\": 14, \"y\": 14}, {\"x\": 159, \"y\": 160}, {\"x\": 49, \"y\": 53}, {\"x\": 544, \"y\": 544}, {\"x\": 487, \"y\": 480}, {\"x\": 405, \"y\": 401}, {\"x\": 26, \"y\": 54}, {\"x\": 35, \"y\": 34}, {\"x\": 238, \"y\": 238}, {\"x\": 139, \"y\": 138}, {\"x\": 900, \"y\": 900}, {\"x\": 87, \"y\": 87}, {\"x\": 348, \"y\": 348}, {\"x\": 134, \"y\": 134}, {\"x\": 204, \"y\": 204}, {\"x\": 110, \"y\": 108}, {\"x\": 380, \"y\": 380}, {\"x\": 40, \"y\": 40}, {\"x\": 391, \"y\": 392}, {\"x\": 68, \"y\": 69}, {\"x\": 248, \"y\": 248}, {\"x\": 155, \"y\": 150}, {\"x\": 129, \"y\": 129}, {\"x\": 269, \"y\": 257}, {\"x\": 314, \"y\": 310}, {\"x\": 355, \"y\": 355}, {\"x\": 90, \"y\": 88}, {\"x\": 417, \"y\": 427}, {\"x\": 201, \"y\": 204}, {\"x\": 487, \"y\": 487}, {\"x\": 81, \"y\": 77}, {\"x\": 573, \"y\": 579}, {\"x\": 268, \"y\": 273}, {\"x\": 99, \"y\": 99}, {\"x\": 222, \"y\": 222}, {\"x\": 234, \"y\": 233}, {\"x\": 420, \"y\": 420}, {\"x\": 115, \"y\": 115}, {\"x\": 38, \"y\": 38}, {\"x\": 120, \"y\": 120}, {\"x\": 106, \"y\": 106}, {\"x\": 225, \"y\": 221}, {\"x\": 232, \"y\": 234}, {\"x\": 305, \"y\": 305}, {\"x\": 242, \"y\": 246}, {\"x\": 196, \"y\": 196}, {\"x\": 242, \"y\": 242}, {\"x\": 320, \"y\": 324}, {\"x\": 74, \"y\": 74}, {\"x\": 357, \"y\": 354}, {\"x\": 1, \"y\": 1}, {\"x\": 210, \"y\": 205}, {\"x\": 544, \"y\": 536}, {\"x\": 90, \"y\": 96}, {\"x\": 232, \"y\": 232}, {\"x\": 85, \"y\": 85}, {\"x\": 231, \"y\": 234}, {\"x\": 102, \"y\": 102}, {\"x\": 144, \"y\": 144}, {\"x\": 368, \"y\": 361}, {\"x\": 21, \"y\": 21}, {\"x\": 417, \"y\": 412}, {\"x\": 411, \"y\": 411}, {\"x\": 374, \"y\": 373}, {\"x\": 395, \"y\": 391}, {\"x\": 216, \"y\": 216}, {\"x\": 58, \"y\": 58}, {\"x\": 17, \"y\": 17}, {\"x\": 231, \"y\": 228}, {\"x\": 82, \"y\": 78}, {\"x\": 324, \"y\": 320}, {\"x\": 444, \"y\": 441}, {\"x\": 230, \"y\": 230}, {\"x\": 177, \"y\": 176}, {\"x\": 100, \"y\": 100}, {\"x\": 205, \"y\": 205}, {\"x\": 95, \"y\": 91}, {\"x\": 534, \"y\": 534}, {\"x\": 34, \"y\": 32}, {\"x\": 107, \"y\": 104}, {\"x\": 115, \"y\": 115}, {\"x\": 144, \"y\": 144}, {\"x\": 143, \"y\": 141}, {\"x\": 27, \"y\": 21}, {\"x\": 374, \"y\": 374}, {\"x\": 470, \"y\": 443}, {\"x\": 101, \"y\": 101}, {\"x\": 210, \"y\": 210}, {\"x\": 234, \"y\": 234}, {\"x\": 523, \"y\": 538}, {\"x\": 208, \"y\": 208}, {\"x\": 347, \"y\": 347}, {\"x\": 120, \"y\": 119}, {\"x\": 91, \"y\": 87}, {\"x\": 93, \"y\": 93}, {\"x\": 50, \"y\": 47}, {\"x\": 33, \"y\": 34}, {\"x\": 91, \"y\": 90}, {\"x\": 326, \"y\": 326}, {\"x\": 165, \"y\": 167}, {\"x\": 515, \"y\": 513}, {\"x\": 77, \"y\": 73}, {\"x\": 133, \"y\": 124}, {\"x\": 330, \"y\": 344}, {\"x\": 39, \"y\": 47}, {\"x\": 593, \"y\": 628}, {\"x\": 190, \"y\": 191}, {\"x\": 340, \"y\": 340}, {\"x\": 43, \"y\": 44}, {\"x\": 95, \"y\": 95}, {\"x\": 88, \"y\": 88}, {\"x\": 220, \"y\": 220}, {\"x\": 361, \"y\": 361}, {\"x\": 361, \"y\": 361}, {\"x\": 187, \"y\": 187}, {\"x\": 698, \"y\": 690}, {\"x\": 351, \"y\": 349}, {\"x\": 485, \"y\": 485}, {\"x\": 242, \"y\": 239}, {\"x\": 170, \"y\": 171}, {\"x\": 409, \"y\": 411}, {\"x\": 392, \"y\": 392}, {\"x\": 493, \"y\": 490}, {\"x\": 69, \"y\": 69}, {\"x\": 168, \"y\": 169}, {\"x\": 223, \"y\": 218}, {\"x\": 217, \"y\": 214}, {\"x\": 450, \"y\": 416}, {\"x\": 157, \"y\": 158}, {\"x\": 286, \"y\": 261}, {\"x\": 427, \"y\": 426}, {\"x\": 355, \"y\": 351}, {\"x\": 332, \"y\": 332}, {\"x\": 337, \"y\": 337}, {\"x\": 161, \"y\": 162}, {\"x\": 290, \"y\": 291}, {\"x\": 398, \"y\": 398}, {\"x\": 43, \"y\": 41}, {\"x\": 154, \"y\": 153}, {\"x\": 119, \"y\": 119}, {\"x\": 577, \"y\": 549}, {\"x\": 508, \"y\": 508}, {\"x\": 189, \"y\": 193}, {\"x\": 39, \"y\": 36}, {\"x\": 470, \"y\": 464}, {\"x\": 391, \"y\": 371}, {\"x\": 580, \"y\": 576}, {\"x\": 273, \"y\": 273}, {\"x\": 68, \"y\": 69}, {\"x\": 338, \"y\": 345}, {\"x\": 485, \"y\": 477}, {\"x\": 427, \"y\": 427}, {\"x\": 46, \"y\": 48}, {\"x\": 167, \"y\": 170}, {\"x\": 69, \"y\": 69}, {\"x\": 300, \"y\": 301}, {\"x\": 1, \"y\": 9}, {\"x\": 318, \"y\": 329}, {\"x\": 113, \"y\": 109}, {\"x\": 72, \"y\": 72}, {\"x\": 565, \"y\": 535}, {\"x\": 900, \"y\": 900}, {\"x\": 49, \"y\": 54}, {\"x\": 256, \"y\": 254}, {\"x\": 225, \"y\": 226}, {\"x\": 325, \"y\": 314}, {\"x\": 255, \"y\": 252}, {\"x\": 17, \"y\": 16}, {\"x\": 290, \"y\": 290}, {\"x\": 529, \"y\": 529}, {\"x\": 468, \"y\": 469}, {\"x\": 163, \"y\": 167}, {\"x\": 501, \"y\": 500}, {\"x\": 42, \"y\": 42}, {\"x\": 164, \"y\": 164}, {\"x\": 485, \"y\": 476}, {\"x\": 89, \"y\": 88}, {\"x\": 201, \"y\": 200}, {\"x\": 66, \"y\": 65}, {\"x\": 71, \"y\": 71}, {\"x\": 578, \"y\": 563}, {\"x\": 563, \"y\": 556}, {\"x\": 600, \"y\": 590}, {\"x\": 340, \"y\": 331}, {\"x\": 575, \"y\": 616}, {\"x\": 261, \"y\": 261}, {\"x\": 262, \"y\": 262}, {\"x\": 451, \"y\": 450}, {\"x\": 327, \"y\": 323}, {\"x\": 179, \"y\": 182}, {\"x\": 132, \"y\": 132}, {\"x\": 530, \"y\": 530}, {\"x\": 324, \"y\": 312}, {\"x\": 439, \"y\": 432}, {\"x\": 14, \"y\": 18}, {\"x\": 195, \"y\": 185}, {\"x\": 389, \"y\": 378}, {\"x\": 358, \"y\": 333}, {\"x\": 260, \"y\": 258}, {\"x\": 271, \"y\": 273}, {\"x\": 275, \"y\": 276}, {\"x\": 179, \"y\": 180}, {\"x\": 326, \"y\": 326}, {\"x\": 73, \"y\": 74}, {\"x\": 154, \"y\": 154}, {\"x\": 168, \"y\": 167}, {\"x\": 470, \"y\": 470}, {\"x\": 298, \"y\": 298}, {\"x\": 67, \"y\": 67}, {\"x\": 265, \"y\": 261}, {\"x\": 336, \"y\": 340}, {\"x\": 265, \"y\": 261}, {\"x\": 900, \"y\": 898}, {\"x\": 387, \"y\": 395}, {\"x\": 32, \"y\": 33}, {\"x\": 500, \"y\": 495}, {\"x\": 13, \"y\": 17}, {\"x\": 231, \"y\": 225}, {\"x\": 350, \"y\": 351}, {\"x\": 148, \"y\": 151}, {\"x\": 88, \"y\": 87}, {\"x\": 147, \"y\": 147}, {\"x\": 318, \"y\": 316}, {\"x\": 108, \"y\": 108}, {\"x\": 628, \"y\": 624}, {\"x\": 150, \"y\": 152}, {\"x\": 25, \"y\": 28}, {\"x\": 98, \"y\": 99}, {\"x\": 523, \"y\": 512}, {\"x\": 358, \"y\": 344}, {\"x\": 654, \"y\": 696}, {\"x\": 284, \"y\": 285}, {\"x\": 105, \"y\": 122}, {\"x\": 248, \"y\": 249}, {\"x\": 364, \"y\": 364}, {\"x\": 373, \"y\": 373}, {\"x\": 95, \"y\": 95}, {\"x\": 108, \"y\": 108}, {\"x\": 329, \"y\": 327}, {\"x\": 155, \"y\": 152}, {\"x\": 108, \"y\": 108}, {\"x\": 73, \"y\": 69}, {\"x\": 341, \"y\": 340}, {\"x\": 23, \"y\": 26}, {\"x\": 48, \"y\": 48}, {\"x\": 584, \"y\": 560}, {\"x\": 189, \"y\": 189}, {\"x\": 130, \"y\": 129}, {\"x\": 638, \"y\": 630}, {\"x\": 54, \"y\": 54}, {\"x\": 38, \"y\": 38}, {\"x\": 350, \"y\": 340}, {\"x\": 93, \"y\": 94}, {\"x\": 247, \"y\": 248}, {\"x\": 42, \"y\": 40}, {\"x\": 232, \"y\": 222}, {\"x\": 218, \"y\": 219}, {\"x\": 47, \"y\": 49}, {\"x\": 363, \"y\": 363}, {\"x\": 162, \"y\": 162}, {\"x\": 83, \"y\": 83}, {\"x\": 89, \"y\": 90}, {\"x\": 123, \"y\": 124}, {\"x\": 237, \"y\": 236}, {\"x\": 60, \"y\": 64}, {\"x\": 544, \"y\": 544}, {\"x\": 744, \"y\": 744}, {\"x\": 47, \"y\": 48}, {\"x\": 357, \"y\": 386}, {\"x\": 27, \"y\": 27}, {\"x\": 49, \"y\": 50}, {\"x\": 44, \"y\": 41}, {\"x\": 345, \"y\": 345}, {\"x\": 303, \"y\": 303}, {\"x\": 347, \"y\": 348}, {\"x\": 477, \"y\": 477}, {\"x\": 170, \"y\": 170}, {\"x\": 69, \"y\": 69}, {\"x\": 119, \"y\": 119}, {\"x\": 350, \"y\": 350}, {\"x\": 386, \"y\": 386}, {\"x\": 39, \"y\": 46}, {\"x\": 398, \"y\": 398}, {\"x\": 124, \"y\": 124}, {\"x\": 95, \"y\": 94}, {\"x\": 355, \"y\": 354}, {\"x\": 202, \"y\": 212}, {\"x\": 386, \"y\": 380}, {\"x\": 145, \"y\": 145}, {\"x\": 238, \"y\": 235}, {\"x\": 49, \"y\": 53}, {\"x\": 374, \"y\": 377}, {\"x\": 268, \"y\": 262}, {\"x\": 344, \"y\": 328}, {\"x\": 159, \"y\": 158}, {\"x\": 101, \"y\": 102}, {\"x\": 285, \"y\": 256}, {\"x\": 313, \"y\": 303}, {\"x\": 28, \"y\": 28}, {\"x\": 212, \"y\": 212}, {\"x\": 132, \"y\": 118}, {\"x\": 198, \"y\": 198}, {\"x\": 596, \"y\": 591}, {\"x\": 48, \"y\": 48}, {\"x\": 41, \"y\": 40}, {\"x\": 424, \"y\": 424}, {\"x\": 257, \"y\": 257}, {\"x\": 232, \"y\": 224}, {\"x\": 556, \"y\": 552}, {\"x\": 487, \"y\": 488}, {\"x\": 447, \"y\": 451}, {\"x\": 577, \"y\": 576}, {\"x\": 300, \"y\": 300}, {\"x\": 567, \"y\": 565}, {\"x\": 485, \"y\": 484}, {\"x\": 142, \"y\": 136}, {\"x\": 304, \"y\": 304}, {\"x\": 329, \"y\": 342}, {\"x\": 95, \"y\": 95}, {\"x\": 481, \"y\": 465}, {\"x\": 127, \"y\": 127}, {\"x\": 367, \"y\": 368}, {\"x\": 76, \"y\": 76}, {\"x\": 476, \"y\": 476}, {\"x\": 292, \"y\": 296}, {\"x\": 172, \"y\": 171}, {\"x\": 32, \"y\": 36}, {\"x\": 46, \"y\": 46}, {\"x\": 509, \"y\": 506}, {\"x\": 30, \"y\": 28}, {\"x\": 459, \"y\": 435}, {\"x\": 314, \"y\": 315}, {\"x\": 331, \"y\": 331}, {\"x\": 96, \"y\": 91}, {\"x\": 130, \"y\": 126}, {\"x\": 215, \"y\": 218}, {\"x\": 269, \"y\": 247}, {\"x\": 309, \"y\": 302}, {\"x\": 30, \"y\": 26}, {\"x\": 571, \"y\": 564}, {\"x\": 170, \"y\": 172}, {\"x\": 45, \"y\": 45}, {\"x\": 256, \"y\": 252}, {\"x\": 126, \"y\": 124}, {\"x\": 76, \"y\": 77}, {\"x\": 577, \"y\": 577}, {\"x\": 900, \"y\": 900}, {\"x\": 343, \"y\": 332}, {\"x\": 618, \"y\": 647}, {\"x\": 365, \"y\": 357}, {\"x\": 253, \"y\": 260}, {\"x\": 418, \"y\": 434}, {\"x\": 192, \"y\": 192}, {\"x\": 428, \"y\": 424}, {\"x\": 478, \"y\": 478}, {\"x\": 464, \"y\": 463}, {\"x\": 295, \"y\": 295}, {\"x\": 568, \"y\": 536}, {\"x\": 49, \"y\": 56}, {\"x\": 36, \"y\": 34}, {\"x\": 498, \"y\": 492}, {\"x\": 48, \"y\": 66}, {\"x\": 312, \"y\": 317}, {\"x\": 217, \"y\": 217}, {\"x\": 206, \"y\": 190}, {\"x\": 475, \"y\": 464}, {\"x\": 537, \"y\": 536}, {\"x\": 900, \"y\": 902}, {\"x\": 233, \"y\": 224}, {\"x\": 473, \"y\": 474}, {\"x\": 271, \"y\": 294}, {\"x\": 485, \"y\": 476}, {\"x\": 368, \"y\": 366}, {\"x\": 76, \"y\": 76}, {\"x\": 275, \"y\": 277}, {\"x\": 202, \"y\": 205}, {\"x\": 294, \"y\": 291}, {\"x\": 246, \"y\": 251}, {\"x\": 407, \"y\": 408}, {\"x\": 619, \"y\": 618}, {\"x\": 149, \"y\": 148}, {\"x\": 73, \"y\": 71}, {\"x\": 535, \"y\": 534}, {\"x\": 56, \"y\": 63}, {\"x\": 462, \"y\": 457}, {\"x\": 66, \"y\": 66}, {\"x\": 482, \"y\": 485}, {\"x\": 396, \"y\": 401}, {\"x\": 317, \"y\": 319}, {\"x\": 172, \"y\": 181}, {\"x\": 171, \"y\": 171}, {\"x\": 395, \"y\": 394}, {\"x\": 174, \"y\": 196}, {\"x\": 527, \"y\": 525}, {\"x\": 582, \"y\": 534}, {\"x\": 46, \"y\": 61}, {\"x\": 351, \"y\": 341}, {\"x\": 192, \"y\": 190}, {\"x\": 338, \"y\": 338}, {\"x\": 304, \"y\": 306}, {\"x\": 381, \"y\": 382}, {\"x\": 494, \"y\": 494}, {\"x\": 87, \"y\": 88}, {\"x\": 291, \"y\": 272}, {\"x\": 409, \"y\": 403}, {\"x\": 301, \"y\": 307}, {\"x\": 900, \"y\": 924}, {\"x\": 113, \"y\": 113}, {\"x\": 252, \"y\": 249}, {\"x\": 278, \"y\": 283}, {\"x\": 120, \"y\": 120}, {\"x\": 484, \"y\": 470}, {\"x\": 236, \"y\": 250}, {\"x\": 423, \"y\": 414}, {\"x\": 50, \"y\": 49}, {\"x\": 24, \"y\": 24}, {\"x\": 10, \"y\": 9}, {\"x\": 467, \"y\": 464}, {\"x\": 24, \"y\": 24}, {\"x\": 1, \"y\": 1}, {\"x\": 376, \"y\": 379}, {\"x\": 428, \"y\": 420}, {\"x\": 139, \"y\": 140}, {\"x\": 117, \"y\": 115}, {\"x\": 6, \"y\": 6}, {\"x\": 11, \"y\": 11}, {\"x\": 560, \"y\": 541}, {\"x\": 45, \"y\": 54}, {\"x\": 12, \"y\": 12}, {\"x\": 643, \"y\": 642}, {\"x\": 12, \"y\": 12}, {\"x\": 500, \"y\": 521}, {\"x\": 573, \"y\": 596}, {\"x\": 116, \"y\": 116}, {\"x\": 392, \"y\": 392}, {\"x\": 453, \"y\": 466}, {\"x\": 168, \"y\": 180}, {\"x\": 26, \"y\": 26}, {\"x\": 493, \"y\": 485}, {\"x\": 334, \"y\": 328}, {\"x\": 402, \"y\": 398}, {\"x\": 236, \"y\": 232}, {\"x\": 260, \"y\": 262}, {\"x\": 573, \"y\": 558}, {\"x\": 290, \"y\": 290}, {\"x\": 343, \"y\": 340}, {\"x\": 352, \"y\": 347}, {\"x\": 566, \"y\": 564}, {\"x\": 372, \"y\": 373}, {\"x\": 443, \"y\": 432}, {\"x\": 24, \"y\": 42}, {\"x\": 539, \"y\": 514}, {\"x\": 479, \"y\": 476}, {\"x\": 358, \"y\": 351}, {\"x\": 480, \"y\": 477}, {\"x\": 157, \"y\": 157}, {\"x\": 2, \"y\": 3}, {\"x\": 305, \"y\": 300}, {\"x\": 275, \"y\": 276}, {\"x\": 151, \"y\": 150}, {\"x\": 125, \"y\": 125}, {\"x\": 280, \"y\": 280}, {\"x\": 267, \"y\": 267}, {\"x\": 107, \"y\": 107}, {\"x\": 214, \"y\": 214}, {\"x\": 372, \"y\": 367}, {\"x\": 131, \"y\": 131}, {\"x\": 464, \"y\": 464}, {\"x\": 439, \"y\": 398}, {\"x\": 77, \"y\": 77}, {\"x\": 56, \"y\": 58}, {\"x\": 310, \"y\": 308}, {\"x\": 492, \"y\": 495}, {\"x\": 344, \"y\": 344}, {\"x\": 19, \"y\": 20}, {\"x\": 486, \"y\": 487}, {\"x\": 254, \"y\": 254}, {\"x\": 528, \"y\": 570}, {\"x\": 439, \"y\": 439}, {\"x\": 107, \"y\": 99}, {\"x\": 375, \"y\": 346}, {\"x\": 899, \"y\": 891}, {\"x\": 352, \"y\": 344}, {\"x\": 40, \"y\": 37}, {\"x\": 4, \"y\": 4}, {\"x\": 208, \"y\": 208}, {\"x\": 64, \"y\": 64}, {\"x\": 24, \"y\": 30}, {\"x\": 164, \"y\": 188}, {\"x\": 143, \"y\": 143}, {\"x\": 375, \"y\": 367}, {\"x\": 197, \"y\": 198}, {\"x\": 380, \"y\": 381}, {\"x\": 310, \"y\": 309}, {\"x\": 250, \"y\": 249}, {\"x\": 178, \"y\": 178}, {\"x\": 130, \"y\": 124}, {\"x\": 241, \"y\": 241}, {\"x\": 42, \"y\": 42}, {\"x\": 456, \"y\": 455}, {\"x\": 492, \"y\": 494}, {\"x\": 166, \"y\": 168}, {\"x\": 442, \"y\": 442}, {\"x\": 372, \"y\": 367}, {\"x\": 432, \"y\": 433}, {\"x\": 515, \"y\": 507}, {\"x\": 42, \"y\": 42}, {\"x\": 23, \"y\": 21}, {\"x\": 275, \"y\": 266}, {\"x\": 43, \"y\": 39}, {\"x\": 396, \"y\": 374}, {\"x\": 22, \"y\": 21}, {\"x\": 199, \"y\": 229}, {\"x\": 392, \"y\": 372}, {\"x\": 399, \"y\": 390}, {\"x\": 536, \"y\": 536}, {\"x\": 391, \"y\": 387}, {\"x\": 378, \"y\": 378}, {\"x\": 509, \"y\": 501}, {\"x\": 398, \"y\": 398}, {\"x\": 367, \"y\": 366}, {\"x\": 357, \"y\": 360}, {\"x\": 1, \"y\": 0}, {\"x\": 552, \"y\": 527}, {\"x\": 360, \"y\": 379}, {\"x\": 303, \"y\": 312}, {\"x\": 16, \"y\": 16}, {\"x\": 153, \"y\": 153}, {\"x\": 166, \"y\": 158}, {\"x\": 555, \"y\": 539}, {\"x\": 60, \"y\": 58}, {\"x\": 481, \"y\": 484}, {\"x\": 824, \"y\": 841}, {\"x\": 520, \"y\": 520}, {\"x\": 320, \"y\": 319}, {\"x\": 445, \"y\": 435}, {\"x\": 235, \"y\": 233}, {\"x\": 207, \"y\": 212}, {\"x\": 414, \"y\": 414}, {\"x\": 241, \"y\": 239}, {\"x\": 190, \"y\": 186}, {\"x\": 104, \"y\": 105}, {\"x\": 34, \"y\": 33}, {\"x\": 565, \"y\": 566}, {\"x\": 379, \"y\": 379}, {\"x\": 369, \"y\": 367}, {\"x\": 105, \"y\": 105}, {\"x\": 102, \"y\": 102}, {\"x\": 284, \"y\": 281}, {\"x\": 500, \"y\": 497}, {\"x\": 163, \"y\": 157}, {\"x\": 257, \"y\": 255}, {\"x\": 180, \"y\": 175}, {\"x\": 343, \"y\": 343}, {\"x\": 422, \"y\": 422}, {\"x\": 439, \"y\": 439}, {\"x\": 519, \"y\": 546}, {\"x\": 152, \"y\": 150}, {\"x\": 667, \"y\": 665}, {\"x\": 580, \"y\": 565}, {\"x\": 191, \"y\": 191}, {\"x\": 308, \"y\": 303}, {\"x\": 44, \"y\": 44}, {\"x\": 43, \"y\": 42}, {\"x\": 43, \"y\": 43}, {\"x\": 457, \"y\": 457}, {\"x\": 171, \"y\": 159}, {\"x\": 2, \"y\": 2}, {\"x\": 282, \"y\": 282}, {\"x\": 391, \"y\": 391}, {\"x\": 146, \"y\": 139}, {\"x\": 483, \"y\": 513}, {\"x\": 184, \"y\": 184}, {\"x\": 51, \"y\": 50}, {\"x\": 73, \"y\": 73}, {\"x\": 177, \"y\": 178}, {\"x\": 361, \"y\": 382}, {\"x\": 378, \"y\": 378}, {\"x\": 397, \"y\": 396}, {\"x\": 45, \"y\": 45}, {\"x\": 501, \"y\": 492}, {\"x\": 139, \"y\": 141}],\n        backgroundColor: 'rgba(110,110,115,0.28)', pointRadius: 2.4, pointHoverRadius: 4 },\n      { label: T('Fiches incoh\u00e9rentes', 'Inconsistent entries'), data: [{\"x\": 120, \"y\": 72}, {\"x\": 149, \"y\": 248}, {\"x\": 516, \"y\": 580}, {\"x\": 268, \"y\": 321}, {\"x\": 334, \"y\": 295}, {\"x\": 46, \"y\": 12}, {\"x\": 348, \"y\": 260}, {\"x\": 475, \"y\": 545}, {\"x\": 24, \"y\": 253}, {\"x\": 142, \"y\": 236}, {\"x\": 500, \"y\": 400}, {\"x\": 557, \"y\": 476}, {\"x\": 393, \"y\": 35}, {\"x\": 529, \"y\": 232}, {\"x\": 30, \"y\": 444}, {\"x\": 467, \"y\": 532}, {\"x\": 300, \"y\": 240}, {\"x\": 712, \"y\": 376}, {\"x\": 441, \"y\": 491}, {\"x\": 7, \"y\": 400}, {\"x\": 200, \"y\": 170}, {\"x\": 1, \"y\": 109}, {\"x\": 562, \"y\": 644}, {\"x\": 342, \"y\": 416}, {\"x\": 179, \"y\": 286}, {\"x\": 20, \"y\": 53}, {\"x\": 280, \"y\": 147}, {\"x\": 460, \"y\": 408}, {\"x\": 533, \"y\": 600}, {\"x\": 571, \"y\": 643}, {\"x\": 100, \"y\": 260}, {\"x\": 165, \"y\": 329}, {\"x\": 390, \"y\": 336}, {\"x\": 151, \"y\": 197}, {\"x\": 105, \"y\": 22}, {\"x\": 376, \"y\": 293}, {\"x\": 423, \"y\": 475}, {\"x\": 340, \"y\": 414}, {\"x\": 600, \"y\": 533}, {\"x\": 163, \"y\": 194}, {\"x\": 114, \"y\": 269}, {\"x\": 362, \"y\": 317}, {\"x\": 382, \"y\": 439}, {\"x\": 179, \"y\": 296}, {\"x\": 510, \"y\": 333}, {\"x\": 346, \"y\": 274}, {\"x\": 208, \"y\": 4}, {\"x\": 10, \"y\": 550}, {\"x\": 701, \"y\": 163}, {\"x\": 350, \"y\": 157}, {\"x\": 383, \"y\": 337}, {\"x\": 162, \"y\": 266}, {\"x\": 10, \"y\": 255}, {\"x\": 421, \"y\": 378}, {\"x\": 6, \"y\": 92}, {\"x\": 292, \"y\": 96}, {\"x\": 1, \"y\": 253}, {\"x\": 232, \"y\": 200}, {\"x\": 372, \"y\": 154}, {\"x\": 369, \"y\": 435}, {\"x\": 434, \"y\": 552}, {\"x\": 51, \"y\": 138}, {\"x\": 364, \"y\": 302}, {\"x\": 369, \"y\": 449}, {\"x\": 374, \"y\": 232}, {\"x\": 686, \"y\": 611}, {\"x\": 3, \"y\": 178}, {\"x\": 195, \"y\": 735}, {\"x\": 503, \"y\": 39}, {\"x\": 221, \"y\": 313}, {\"x\": 893, \"y\": 211}, {\"x\": 407, \"y\": 71}, {\"x\": 290, \"y\": 52}, {\"x\": 24, \"y\": 88}, {\"x\": 306, \"y\": 262}, {\"x\": 492, \"y\": 429}, {\"x\": 115, \"y\": 351}, {\"x\": 424, \"y\": 324}, {\"x\": 482, \"y\": 114}, {\"x\": 375, \"y\": 260}, {\"x\": 555, \"y\": 160}, {\"x\": 444, \"y\": 384}, {\"x\": 137, \"y\": 213}, {\"x\": 276, \"y\": 202}, {\"x\": 219, \"y\": 362}, {\"x\": 269, \"y\": 525}, {\"x\": 100, \"y\": 247}, {\"x\": 81, \"y\": 28}, {\"x\": 412, \"y\": 499}, {\"x\": 275, \"y\": 310}, {\"x\": 247, \"y\": 286}, {\"x\": 171, \"y\": 101}, {\"x\": 563, \"y\": 134}, {\"x\": 151, \"y\": 371}, {\"x\": 170, \"y\": 268}, {\"x\": 15, \"y\": 404}, {\"x\": 281, \"y\": 321}, {\"x\": 556, \"y\": 133}, {\"x\": 376, \"y\": 332}, {\"x\": 193, \"y\": 139}, {\"x\": 170, \"y\": 122}, {\"x\": 13, \"y\": 320}, {\"x\": 402, \"y\": 310}, {\"x\": 286, \"y\": 238}, {\"x\": 476, \"y\": 113}, {\"x\": 289, \"y\": 476}, {\"x\": 89, \"y\": 121}, {\"x\": 68, \"y\": 150}, {\"x\": 202, \"y\": 119}, {\"x\": 50, \"y\": 4}, {\"x\": 339, \"y\": 282}, {\"x\": 333, \"y\": 272}, {\"x\": 24, \"y\": 223}, {\"x\": 239, \"y\": 185}, {\"x\": 475, \"y\": 592}, {\"x\": 178, \"y\": 257}, {\"x\": 233, \"y\": 287}, {\"x\": 191, \"y\": 158}, {\"x\": 353, \"y\": 422}, {\"x\": 32, \"y\": 100}, {\"x\": 385, \"y\": 518}, {\"x\": 361, \"y\": 462}, {\"x\": 144, \"y\": 38}, {\"x\": 350, \"y\": 472}, {\"x\": 395, \"y\": 445}, {\"x\": 388, \"y\": 466}, {\"x\": 480, \"y\": 592}, {\"x\": 328, \"y\": 288}, {\"x\": 353, \"y\": 465}, {\"x\": 640, \"y\": 362}, {\"x\": 150, \"y\": 187}, {\"x\": 333, \"y\": 40}, {\"x\": 255, \"y\": 175}, {\"x\": 96, \"y\": 192}, {\"x\": 2, \"y\": 398}, {\"x\": 200, \"y\": 241}, {\"x\": 8, \"y\": 57}, {\"x\": 144, \"y\": 112}, {\"x\": 115, \"y\": 75}, {\"x\": 400, \"y\": 480}, {\"x\": 236, \"y\": 392}, {\"x\": 400, \"y\": 326}, {\"x\": 360, \"y\": 102}, {\"x\": 333, \"y\": 400}, {\"x\": 274, \"y\": 162}, {\"x\": 5, \"y\": 133}, {\"x\": 541, \"y\": 465}, {\"x\": 400, \"y\": 534}, {\"x\": 350, \"y\": 102}, {\"x\": 200, \"y\": 80}, {\"x\": 110, \"y\": 216}, {\"x\": 283, \"y\": 427}, {\"x\": 25, \"y\": 92}, {\"x\": 344, \"y\": 82}, {\"x\": 207, \"y\": 281}, {\"x\": 367, \"y\": 320}, {\"x\": 447, \"y\": 533}, {\"x\": 262, \"y\": 297}, {\"x\": 482, \"y\": 399}, {\"x\": 238, \"y\": 292}, {\"x\": 130, \"y\": 224}, {\"x\": 510, \"y\": 293}, {\"x\": 63, \"y\": 118}, {\"x\": 367, \"y\": 437}, {\"x\": 400, \"y\": 353}, {\"x\": 34, \"y\": 151}, {\"x\": 110, \"y\": 269}, {\"x\": 200, \"y\": 29}, {\"x\": 2, \"y\": 126}, {\"x\": 477, \"y\": 358}, {\"x\": 502, \"y\": 268}, {\"x\": 419, \"y\": 589}, {\"x\": 556, \"y\": 489}, {\"x\": 720, \"y\": 363}, {\"x\": 660, \"y\": 223}, {\"x\": 221, \"y\": 257}, {\"x\": 7, \"y\": 210}, {\"x\": 250, \"y\": 442}, {\"x\": 133, \"y\": 99}, {\"x\": 2, \"y\": 435}, {\"x\": 100, \"y\": 416}, {\"x\": 292, \"y\": 260}, {\"x\": 164, \"y\": 220}, {\"x\": 132, \"y\": 200}, {\"x\": 366, \"y\": 528}, {\"x\": 155, \"y\": 34}, {\"x\": 316, \"y\": 391}, {\"x\": 316, \"y\": 399}, {\"x\": 348, \"y\": 276}, {\"x\": 431, \"y\": 384}, {\"x\": 185, \"y\": 51}, {\"x\": 907, \"y\": 215}, {\"x\": 169, \"y\": 390}, {\"x\": 190, \"y\": 136}, {\"x\": 170, \"y\": 122}, {\"x\": 159, \"y\": 289}, {\"x\": 563, \"y\": 129}, {\"x\": 514, \"y\": 401}, {\"x\": 485, \"y\": 115}, {\"x\": 11, \"y\": 100}, {\"x\": 176, \"y\": 92}, {\"x\": 416, \"y\": 372}, {\"x\": 247, \"y\": 170}, {\"x\": 122, \"y\": 171}, {\"x\": 125, \"y\": 29}, {\"x\": 20, \"y\": 57}, {\"x\": 102, \"y\": 22}, {\"x\": 108, \"y\": 149}, {\"x\": 780, \"y\": 187}, {\"x\": 93, \"y\": 215}, {\"x\": 154, \"y\": 200}, {\"x\": 297, \"y\": 336}, {\"x\": 547, \"y\": 128}, {\"x\": 161, \"y\": 193}, {\"x\": 673, \"y\": 161}, {\"x\": 205, \"y\": 150}, {\"x\": 403, \"y\": 94}, {\"x\": 513, \"y\": 121}, {\"x\": 185, \"y\": 229}, {\"x\": 228, \"y\": 186}, {\"x\": 426, \"y\": 141}, {\"x\": 359, \"y\": 321}, {\"x\": 121, \"y\": 417}, {\"x\": 462, \"y\": 97}, {\"x\": 288, \"y\": 242}, {\"x\": 20, \"y\": 364}, {\"x\": 765, \"y\": 176}, {\"x\": 346, \"y\": 86}, {\"x\": 3, \"y\": 51}, {\"x\": 185, \"y\": 154}, {\"x\": 281, \"y\": 321}, {\"x\": 45, \"y\": 101}, {\"x\": 95, \"y\": 18}, {\"x\": 156, \"y\": 554}, {\"x\": 141, \"y\": 252}, {\"x\": 470, \"y\": 112}, {\"x\": 220, \"y\": 454}, {\"x\": 654, \"y\": 158}, {\"x\": 342, \"y\": 569}, {\"x\": 228, \"y\": 260}, {\"x\": 708, \"y\": 169}, {\"x\": 327, \"y\": 401}, {\"x\": 296, \"y\": 239}, {\"x\": 225, \"y\": 297}, {\"x\": 381, \"y\": 287}, {\"x\": 403, \"y\": 187}, {\"x\": 108, \"y\": 200}, {\"x\": 313, \"y\": 363}, {\"x\": 263, \"y\": 301}, {\"x\": 498, \"y\": 445}, {\"x\": 600, \"y\": 408}, {\"x\": 498, \"y\": 556}, {\"x\": 37, \"y\": 106}, {\"x\": 282, \"y\": 249}, {\"x\": 16, \"y\": 431}, {\"x\": 100, \"y\": 298}, {\"x\": 462, \"y\": 402}, {\"x\": 463, \"y\": 383}, {\"x\": 140, \"y\": 408}, {\"x\": 404, \"y\": 358}, {\"x\": 645, \"y\": 572}, {\"x\": 120, \"y\": 190}, {\"x\": 232, \"y\": 264}, {\"x\": 244, \"y\": 311}, {\"x\": 475, \"y\": 419}, {\"x\": 501, \"y\": 120}, {\"x\": 135, \"y\": 239}, {\"x\": 112, \"y\": 399}, {\"x\": 171, \"y\": 344}, {\"x\": 30, \"y\": 232}, {\"x\": 422, \"y\": 96}, {\"x\": 62, \"y\": 511}, {\"x\": 100, \"y\": 58}, {\"x\": 131, \"y\": 31}, {\"x\": 398, \"y\": 94}, {\"x\": 4, \"y\": 259}, {\"x\": 251, \"y\": 217}, {\"x\": 169, \"y\": 224}, {\"x\": 245, \"y\": 152}, {\"x\": 465, \"y\": 110}, {\"x\": 351, \"y\": 309}, {\"x\": 361, \"y\": 315}, {\"x\": 147, \"y\": 24}, {\"x\": 42, \"y\": 83}, {\"x\": 401, \"y\": 94}, {\"x\": 177, \"y\": 142}, {\"x\": 32, \"y\": 362}, {\"x\": 281, \"y\": 453}, {\"x\": 11, \"y\": 461}, {\"x\": 28, \"y\": 428}, {\"x\": 239, \"y\": 272}, {\"x\": 144, \"y\": 386}, {\"x\": 100, \"y\": 400}, {\"x\": 529, \"y\": 126}, {\"x\": 493, \"y\": 114}, {\"x\": 238, \"y\": 55}, {\"x\": 274, \"y\": 328}, {\"x\": 251, \"y\": 161}, {\"x\": 325, \"y\": 383}, {\"x\": 74, \"y\": 514}, {\"x\": 26, \"y\": 104}, {\"x\": 245, \"y\": 285}, {\"x\": 24, \"y\": 242}, {\"x\": 163, \"y\": 272}, {\"x\": 283, \"y\": 229}, {\"x\": 492, \"y\": 566}, {\"x\": 544, \"y\": 622}, {\"x\": 67, \"y\": 116}, {\"x\": 900, \"y\": 268}, {\"x\": 54, \"y\": 220}, {\"x\": 32, \"y\": 324}, {\"x\": 245, \"y\": 311}, {\"x\": 444, \"y\": 360}, {\"x\": 2, \"y\": 137}, {\"x\": 220, \"y\": 0}, {\"x\": 285, \"y\": 236}, {\"x\": 189, \"y\": 391}, {\"x\": 108, \"y\": 20}, {\"x\": 3, \"y\": 145}, {\"x\": 417, \"y\": 498}, {\"x\": 199, \"y\": 253}, {\"x\": 65, \"y\": 130}, {\"x\": 298, \"y\": 256}, {\"x\": 306, \"y\": 249}, {\"x\": 295, \"y\": 236}, {\"x\": 297, \"y\": 209}, {\"x\": 5, \"y\": 45}, {\"x\": 275, \"y\": 243}, {\"x\": 242, \"y\": 301}, {\"x\": 404, \"y\": 307}, {\"x\": 240, \"y\": 392}, {\"x\": 372, \"y\": 418}, {\"x\": 234, \"y\": 420}, {\"x\": 225, \"y\": 256}, {\"x\": 278, \"y\": 223}, {\"x\": 204, \"y\": 153}, {\"x\": 235, \"y\": 176}, {\"x\": 559, \"y\": 498}, {\"x\": 239, \"y\": 269}, {\"x\": 229, \"y\": 5}, {\"x\": 193, \"y\": 231}, {\"x\": 331, \"y\": 572}, {\"x\": 2, \"y\": 320}, {\"x\": 617, \"y\": 537}, {\"x\": 303, \"y\": 265}, {\"x\": 336, \"y\": 401}, {\"x\": 43, \"y\": 104}, {\"x\": 279, \"y\": 198}, {\"x\": 306, \"y\": 265}, {\"x\": 249, \"y\": 327}, {\"x\": 720, \"y\": 540}, {\"x\": 1, \"y\": 42}, {\"x\": 330, \"y\": 288}, {\"x\": 6, \"y\": 666}, {\"x\": 285, \"y\": 236}, {\"x\": 193, \"y\": 5}, {\"x\": 233, \"y\": 388}, {\"x\": 258, \"y\": 185}, {\"x\": 352, \"y\": 278}, {\"x\": 47, \"y\": 295}, {\"x\": 315, \"y\": 239}, {\"x\": 361, \"y\": 310}, {\"x\": 170, \"y\": 230}, {\"x\": 394, \"y\": 349}, {\"x\": 268, \"y\": 315}, {\"x\": 45, \"y\": 88}, {\"x\": 170, \"y\": 137}, {\"x\": 355, \"y\": 297}, {\"x\": 193, \"y\": 430}, {\"x\": 415, \"y\": 324}, {\"x\": 20, \"y\": 60}, {\"x\": 297, \"y\": 355}, {\"x\": 655, \"y\": 579}, {\"x\": 69, \"y\": 105}, {\"x\": 87, \"y\": 49}, {\"x\": 371, \"y\": 223}, {\"x\": 301, \"y\": 373}, {\"x\": 213, \"y\": 245}, {\"x\": 400, \"y\": 612}, {\"x\": 101, \"y\": 26}, {\"x\": 500, \"y\": 660}, {\"x\": 291, \"y\": 252}, {\"x\": 372, \"y\": 416}, {\"x\": 734, \"y\": 177}, {\"x\": 188, \"y\": 153}, {\"x\": 308, \"y\": 396}, {\"x\": 430, \"y\": 101}, {\"x\": 502, \"y\": 233}, {\"x\": 660, \"y\": 40}, {\"x\": 418, \"y\": 152}, {\"x\": 275, \"y\": 309}, {\"x\": 410, \"y\": 357}, {\"x\": 310, \"y\": 268}, {\"x\": 370, \"y\": 415}, {\"x\": 301, \"y\": 338}, {\"x\": 211, \"y\": 117}, {\"x\": 325, \"y\": 364}, {\"x\": 308, \"y\": 277}, {\"x\": 341, \"y\": 382}, {\"x\": 180, \"y\": 36}, {\"x\": 565, \"y\": 133}, {\"x\": 340, \"y\": 267}, {\"x\": 408, \"y\": 97}, {\"x\": 1, \"y\": 42}, {\"x\": 39, \"y\": 165}, {\"x\": 241, \"y\": 285}, {\"x\": 131, \"y\": 32}, {\"x\": 249, \"y\": 193}, {\"x\": 374, \"y\": 170}, {\"x\": 299, \"y\": 256}, {\"x\": 549, \"y\": 484}, {\"x\": 5, \"y\": 60}, {\"x\": 97, \"y\": 137}, {\"x\": 219, \"y\": 123}, {\"x\": 199, \"y\": 295}, {\"x\": 3, \"y\": 120}, {\"x\": 755, \"y\": 180}, {\"x\": 451, \"y\": 368}, {\"x\": 337, \"y\": 295}, {\"x\": 51, \"y\": 151}],\n        backgroundColor: 'rgba(255,45,110,0.75)', pointRadius: 3.2, pointHoverRadius: 5 },\n      { label: T('Fiche parfaite (d\u00e9clar\u00e9 = recalcul\u00e9)', 'Perfect entry (declared = recomputed)'), type: 'line',\n        data: [{x: 0, y: 0}, {x: 950, y: 950}], borderColor: INK, borderWidth: 1.2, borderDash: [6, 5],\n        pointRadius: 0, fill: false }\n    ] },\n    options: { responsive: true, maintainAspectRatio: false, devicePixelRatio: DPR,\n      plugins: { legend: { position: 'bottom', labels: { color: INK, boxWidth: 12, boxHeight: 12, padding: 14, font: { size: 12 }, filter: function(i){ return true; } } },\n        tooltip: { callbacks: { label: function(c){ return T(' fiche ', ' entry ') + c.parsed.x + T(' kcal, macros ', ' kcal, macros ') + c.parsed.y + ' kcal'; } } } },\n      scales: {\n        x: { min: 0, max: 950, grid: { color: RULE }, ticks: { color: MUTED, font: { size: 11 } },\n          title: { display: true, text: T('Calories d\u00e9clar\u00e9es (kcal\/100g)', 'Declared calories (kcal\/100g)'), color: MUTED, font: { size: 12 } } },\n        y: { min: 0, max: 950, grid: { color: RULE }, ticks: { color: MUTED, font: { size: 11 } },\n          title: { display: true, text: T('Calories recalcul\u00e9es depuis les macros', 'Recomputed from macros'), color: MUTED, font: { size: 12 } } }\n      } }\n  });\n\n  \/\/ 3. Courbe de distribution des ecarts (aire, echelle log)\n  var elH = document.getElementById('chartHisto');\n  if (elH) new Chart(elH, {\n    type: 'line',\n    data: {\n      labels: [T('0-2 %', '0-2%'), T('2-5 %', '2-5%'), T('5-10 %', '5-10%'), T('10-20 %', '10-20%'), T('20-35 %', '20-35%'), T('35-50 %', '35-50%'), T('50-75 %', '50-75%'), T('75-100 %', '75-100%')],\n      datasets: [{ data: [568136, 132669, 63751, 40547, 15887, 7617, 11270, 14530], borderColor: PINK, borderWidth: 2.5, tension: 0.35,\n        pointRadius: 4, pointBackgroundColor: '#FFFFFF', pointBorderColor: PINK, pointBorderWidth: 2,\n        fill: true, backgroundColor: function(c){ return pinkGrad(c.chart.ctx, 0.28); } }]\n    },\n    options: { responsive: true, maintainAspectRatio: false, devicePixelRatio: DPR,\n      plugins: { legend: { display: false },\n        tooltip: { callbacks: { label: function(c){ return ' ' + nf(c.parsed.y) + T(' produits', ' products'); } } } },\n      scales: {\n        y: { type: 'logarithmic', min: 1000, grid: { color: RULE },\n          ticks: { color: MUTED, font: { size: 11 }, callback: function(v){ return [1000, 10000, 100000, 1000000].indexOf(v) >= 0 ? nf(v) : null; } } },\n        x: { grid: { display: false }, ticks: { color: INK, font: { size: 11 } },\n          title: { display: true, text: T('\u00c9cart entre calories d\u00e9clar\u00e9es et recalcul\u00e9es', 'Gap between declared and recomputed calories'), color: MUTED, font: { size: 12 } } }\n      } }\n  });\n\n  \/\/ 4. Barres : seuils\n  var elS = document.getElementById('chartSeuils');\n  if (elS) new Chart(elS, {\n    type: 'bar',\n    data: {\n      labels: [T('\u00e9cart > 10 %', 'gap > 10%'), T('\u00e9cart > 20 %', 'gap > 20%'), T('\u00e9cart > 50 %', 'gap > 50%'), T('du simple au double', 'off by 2x or more')],\n      datasets: [{ data: [46757, 31867, 18215, 18251],\n        backgroundColor: ['rgba(255,45,110,0.35)', 'rgba(255,45,110,0.55)', 'rgba(255,45,110,0.8)', PINK],\n        borderRadius: 8, maxBarThickness: 84 }]\n    },\n    options: { responsive: true, maintainAspectRatio: false, devicePixelRatio: DPR,\n      plugins: { legend: { display: false },\n        tooltip: { callbacks: { label: function(c){ return ' ' + nf(c.parsed.y) + T(' produits', ' products'); } } } },\n      scales: {\n        y: { beginAtZero: true, grid: { color: RULE }, ticks: { color: MUTED, callback: function(v){ return (v \/ 1000) + ' k'; } } },\n        x: { grid: { display: false }, ticks: { color: INK, font: { size: 12 } } }\n      } }\n  });\n\n  \/\/ 5. Bulles : categories dispatchees (x volume log, y taux, r fiches incoherentes)\n  var BUB = [{\"x\": 15828, \"y\": 6.05, \"r\": 19, \"fr\": \"\u00c9picerie\", \"en\": \"Groceries\", \"inc\": 958}, {\"x\": 4147, \"y\": 8.2, \"r\": 12, \"fr\": \"Bonbons\", \"en\": \"Candies\", \"inc\": 340}, {\"x\": 1328, \"y\": 20.78, \"r\": 10, \"fr\": \"Barres prot\u00e9in\u00e9es\", \"en\": \"Protein bars\", \"inc\": 276}, {\"x\": 2973, \"y\": 5.95, \"r\": 8, \"fr\": \"Fromages\", \"en\": \"Cheeses\", \"inc\": 177}, {\"x\": 3107, \"y\": 4.38, \"r\": 7, \"fr\": \"Boissons\", \"en\": \"Beverages\", \"inc\": 136}, {\"x\": 4132, \"y\": 3.12, \"r\": 7, \"fr\": \"Biscuits\", \"en\": \"Biscuits\", \"inc\": 129}, {\"x\": 1416, \"y\": 8.83, \"r\": 7, \"fr\": \"Confiseries\", \"en\": \"Confectioneries\", \"inc\": 125}, {\"x\": 6271, \"y\": 1.91, \"r\": 7, \"fr\": \"Boissons sucr\u00e9es\", \"en\": \"Sweetened beverages\", \"inc\": 120}, {\"x\": 2619, \"y\": 4.54, \"r\": 7, \"fr\": \"Chocolats noirs\", \"en\": \"Dark chocolates\", \"inc\": 119}, {\"x\": 3123, \"y\": 3.46, \"r\": 6, \"fr\": \"Jambons blancs\", \"en\": \"White hams\", \"inc\": 108}];\n  var elB = document.getElementById('chartBubble');\n  if (elB) new Chart(elB, {\n    type: 'bubble',\n    data: { datasets: BUB.map(function(b, i){\n      return { label: T(b.fr, b.en), data: [{x: b.x, y: b.y, r: b.r}],\n        backgroundColor: b.y >= 15 ? 'rgba(255,45,110,0.85)' : (b.y >= 6 ? 'rgba(255,45,110,0.55)' : 'rgba(255,45,110,0.3)'),\n        borderColor: PINK, borderWidth: 1 };\n    }) },\n    options: { responsive: true, maintainAspectRatio: false, devicePixelRatio: DPR,\n      plugins: { legend: { position: 'bottom', labels: { color: INK, boxWidth: 10, boxHeight: 10, padding: 10, font: { size: 11 } } },\n        tooltip: { callbacks: { label: function(c){ var b = BUB[c.datasetIndex];\n          return ' ' + T(b.fr, b.en) + ' : ' + b.y + T(' % incoh\u00e9rentes (', '% inconsistent (') + nf(b.inc) + T(' fiches sur ', ' of ') + nf(b.x) + ')'; } } } },\n      scales: {\n        x: { type: 'logarithmic', min: 900, max: 20000, grid: { color: RULE },\n          ticks: { color: MUTED, font: { size: 11 }, callback: function(v){ return [1000, 2000, 5000, 10000, 20000].indexOf(v) >= 0 ? nf(v) : null; } },\n          title: { display: true, text: T('Produits dans la cat\u00e9gorie (\u00e9chelle log)', 'Products in category (log scale)'), color: MUTED, font: { size: 12 } } },\n        y: { min: 0, max: 24, grid: { color: RULE }, ticks: { color: MUTED, callback: function(v){ return v + ' %'; } },\n          title: { display: true, text: T('Part de fiches incoh\u00e9rentes', 'Share of inconsistent entries'), color: MUTED, font: { size: 12 } } }\n      } }\n  });\n\n  \/\/ 6. Barres horizontales : categories\n  var elC = document.getElementById('chartCats');\n  if (elC) new Chart(elC, {\n    type: 'bar',\n    data: {\n      labels: [[\"Barres prot\u00e9in\u00e9es\", \"Protein bars\"], [\"Confiseries\", \"Confectioneries\"], [\"Bonbons\", \"Candies\"], [\"\u00c9picerie\", \"Groceries\"], [\"Fromages\", \"Cheeses\"], [\"Chocolats noirs\", \"Dark chocolates\"], [\"Boissons\", \"Beverages\"], [\"Jambons blancs\", \"White hams\"]].map(function(p){ return T(p[0], p[1]); }),\n      datasets: [{ data: [20.78, 8.83, 8.2, 6.05, 5.95, 4.54, 4.38, 3.46], backgroundColor: PINKS, borderRadius: 7, maxBarThickness: 30 }]\n    },\n    options: { indexAxis: 'y', responsive: true, maintainAspectRatio: false, devicePixelRatio: DPR,\n      plugins: { legend: { display: false },\n        tooltip: { callbacks: { label: function(c){ return ' ' + c.parsed.x.toLocaleString('fr-FR') + T(' % de fiches incoh\u00e9rentes', '% inconsistent entries'); } } } },\n      scales: {\n        x: { beginAtZero: true, grid: { color: RULE }, ticks: { color: MUTED, callback: function(v){ return v + ' %'; } } },\n        y: { grid: { display: false }, ticks: { color: INK, font: { size: 12.5 } } }\n      } }\n  });\n\n  \/\/ 7. Courbe temporelle : qualite par annee de creation de la fiche\n  var elY = document.getElementById('chartYears');\n  if (elY) new Chart(elY, {\n    type: 'line',\n    data: { labels: [\"2012\", \"2013\", \"2014\", \"2015\", \"2016\", \"2017\", \"2018\", \"2019\", \"2020\", \"2021\", \"2022\", \"2023\", \"2024\", \"2025\", \"2026\"],\n      datasets: [{ data: [2.5, 3.09, 2.55, 2.73, 2.62, 3.68, 5.88, 6.01, 7.34, 7.5, 7.44, 4.1, 3.92, 2.86, 4.12], borderColor: PINK, borderWidth: 2.5, tension: 0.4,\n        pointRadius: 4, pointBackgroundColor: '#FFFFFF', pointBorderColor: PINK, pointBorderWidth: 2,\n        fill: true, backgroundColor: function(c){ return pinkGrad(c.chart.ctx, 0.22); } }] },\n    options: { responsive: true, maintainAspectRatio: false, devicePixelRatio: DPR,\n      plugins: { legend: { display: false },\n        tooltip: { callbacks: { label: function(c){ return ' ' + c.parsed.y + T(' % des fiches cr\u00e9\u00e9es cette ann\u00e9e-l\u00e0 sont incoh\u00e9rentes', '% of entries created that year are inconsistent'); } } } },\n      scales: {\n        y: { min: 0, max: 9, grid: { color: RULE }, ticks: { color: MUTED, callback: function(v){ return v + ' %'; } } },\n        x: { grid: { display: false }, ticks: { color: INK, font: { size: 11 } },\n          title: { display: true, text: T('Ann\u00e9e de cr\u00e9ation de la fiche', 'Year the entry was created'), color: MUTED, font: { size: 12 } } }\n      } }\n  });\n})();\n<\/script>\n<\/div>\n<script data-wpmeteor-nooptimize=\"true\" src=\"https:\/\/cdn.jsdelivr.net\/npm\/chart.js@4.4.4\/dist\/chart.umd.min.js\"><\/script>\n<script data-wpmeteor-nooptimize=\"true\" src=\"https:\/\/cdn.jsdelivr.net\/npm\/chartjs-plugin-annotation@3.1.0\/dist\/chartjs-plugin-annotation.min.js\"><\/script>","protected":false},"excerpt":{"rendered":"<p>Lean Calculateur TDEE Accueil &nbsp;\/&nbsp; \u00c9tude base de donn\u00e9es calories \u00c9tude originale &middot; Donn\u00e9es publiques 857&nbsp;655 produits analys\u00e9s. Ce que ton scanner de calories ne te dit pas. Chaque scan de code-barres en France interroge la m\u00eame base. Nous l&rsquo;avons analys\u00e9e en entier. Plus d&rsquo;un scan sur trois renvoie une donn\u00e9e absente, incompl\u00e8te ou incoh\u00e9rente. [&hellip;]<\/p>","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"single-lvm-blank","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-1947","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Vi analyserede 857 655 produkter solgt i Frankrig: det, din kaloriescanner ikke fort\u00e6ller dig - Lean<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/lean-app.com\/da\/etude-base-donnees-calories\/\" \/>\n<meta property=\"og:locale\" content=\"da_DK\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Vi analyserede 857 655 produkter solgt i Frankrig: det, din kaloriescanner ikke fort\u00e6ller dig - Lean\" \/>\n<meta property=\"og:description\" content=\"Lean Calculateur TDEE Accueil &nbsp;\/&nbsp; \u00c9tude base de donn\u00e9es calories \u00c9tude originale &middot; Donn\u00e9es publiques 857&nbsp;655 produits analys\u00e9s. Ce que ton scanner de calories ne te dit pas. Chaque scan de code-barres en France interroge la m\u00eame base. Nous l&rsquo;avons analys\u00e9e en entier. Plus d&rsquo;un scan sur trois renvoie une donn\u00e9e absente, incompl\u00e8te ou incoh\u00e9rente. [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/lean-app.com\/da\/etude-base-donnees-calories\/\" \/>\n<meta property=\"og:site_name\" content=\"Lean\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/share\/1GXD3qyMBy\/?mibextid=wwXIfr\" \/>\n<meta property=\"article:published_time\" content=\"2026-08-23T20:43:53+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-09-05T10:39:09+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/lean-app.com\/wp-content\/uploads\/2026\/05\/lvm-logo-lean-square-scaled.webp\" \/>\n<meta name=\"author\" content=\"L&#039;\u00e9quipe Lean\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"L&#039;\u00e9quipe Lean\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/lean-app.com\/etude-base-donnees-calories\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/lean-app.com\/etude-base-donnees-calories\/\"},\"author\":{\"@id\":\"https:\/\/lean-app.com\/#organization\"},\"headline\":\"Nous avons analys\u00e9 857 655 produits vendus en France : ce que ton scanner de calories ne te dit pas\",\"datePublished\":\"2026-08-23T20:43:53+00:00\",\"dateModified\":\"2026-09-05T10:39:09+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/lean-app.com\/etude-base-donnees-calories\/\"},\"wordCount\":1781,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/lean-app.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/lean-app.com\/etude-base-donnees-calories\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/lean-app.com\/wp-content\/uploads\/2026\/05\/lvm-logo-lean-square-scaled.webp\",\"inLanguage\":\"da-DK\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/lean-app.com\/etude-base-donnees-calories\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/lean-app.com\/etude-base-donnees-calories\/\",\"url\":\"https:\/\/lean-app.com\/etude-base-donnees-calories\/\",\"name\":\"Nous avons analys\u00e9 857 655 produits vendus en France : ce que ton scanner de calories ne te dit pas - Lean\",\"isPartOf\":{\"@id\":\"https:\/\/lean-app.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/lean-app.com\/etude-base-donnees-calories\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/lean-app.com\/etude-base-donnees-calories\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/lean-app.com\/wp-content\/uploads\/2026\/05\/lvm-logo-lean-square-scaled.webp\",\"datePublished\":\"2026-08-23T20:43:53+00:00\",\"dateModified\":\"2026-09-05T10:39:09+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/lean-app.com\/etude-base-donnees-calories\/#breadcrumb\"},\"inLanguage\":\"da-DK\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/lean-app.com\/etude-base-donnees-calories\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"da-DK\",\"@id\":\"https:\/\/lean-app.com\/etude-base-donnees-calories\/#primaryimage\",\"url\":\"https:\/\/lean-app.com\/wp-content\/uploads\/2026\/05\/lvm-logo-lean-square-scaled.webp\",\"contentUrl\":\"https:\/\/lean-app.com\/wp-content\/uploads\/2026\/05\/lvm-logo-lean-square-scaled.webp\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/lean-app.com\/etude-base-donnees-calories\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/lean-app.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Nous avons analys\u00e9 857 655 produits vendus en France : ce que ton scanner de calories ne te dit pas\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/lean-app.com\/#website\",\"url\":\"https:\/\/lean-app.com\/\",\"name\":\"Lean\",\"description\":\"T\u00e9l\u00e9charge, essaye GRATUITEMENT l&#039;application et prends en main ton corps \u00c0 VIE.\",\"publisher\":{\"@id\":\"https:\/\/lean-app.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/lean-app.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"da-DK\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/lean-app.com\/#organization\",\"name\":\"Lean\",\"url\":\"https:\/\/lean-app.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"da-DK\",\"@id\":\"https:\/\/lean-app.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/lean-app.com\/wp-content\/uploads\/2025\/08\/Logo-for-Lean-App-the-best-calorie-and-TDEE-tracking-application.png\",\"contentUrl\":\"https:\/\/lean-app.com\/wp-content\/uploads\/2025\/08\/Logo-for-Lean-App-the-best-calorie-and-TDEE-tracking-application.png\",\"width\":1672,\"height\":1484,\"caption\":\"Lean\"},\"image\":{\"@id\":\"https:\/\/lean-app.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/share\/1GXD3qyMBy\/?mibextid=wwXIfr\",\"https:\/\/apps.apple.com\/fr\/app\/lean-calorie-ai-podometre\/id6738668646\",\"https:\/\/play.google.com\/store\/apps\/details?id=com.lean.testsqflite\",\"https:\/\/app.dealroom.co\/companies\/lean_calorie_tracker\",\"https:\/\/alternativeto.net\/software\/lean-calorie-tracker\/\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Vi analyserede 857 655 produkter solgt i Frankrig: det, din kaloriescanner ikke fort\u00e6ller dig - Lean","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/lean-app.com\/da\/etude-base-donnees-calories\/","og_locale":"da_DK","og_type":"article","og_title":"Vi analyserede 857 655 produkter solgt i Frankrig: det, din kaloriescanner ikke fort\u00e6ller dig - Lean","og_description":"Lean Calculateur TDEE Accueil &nbsp;\/&nbsp; \u00c9tude base de donn\u00e9es calories \u00c9tude originale &middot; Donn\u00e9es publiques 857&nbsp;655 produits analys\u00e9s. Ce que ton scanner de calories ne te dit pas. Chaque scan de code-barres en France interroge la m\u00eame base. Nous l&rsquo;avons analys\u00e9e en entier. Plus d&rsquo;un scan sur trois renvoie une donn\u00e9e absente, incompl\u00e8te ou incoh\u00e9rente. [&hellip;]","og_url":"https:\/\/lean-app.com\/da\/etude-base-donnees-calories\/","og_site_name":"Lean","article_publisher":"https:\/\/www.facebook.com\/share\/1GXD3qyMBy\/?mibextid=wwXIfr","article_published_time":"2026-08-23T20:43:53+00:00","article_modified_time":"2026-09-05T10:39:09+00:00","og_image":[{"url":"https:\/\/lean-app.com\/wp-content\/uploads\/2026\/05\/lvm-logo-lean-square-scaled.webp","type":"","width":"","height":""}],"author":"L'\u00e9quipe Lean","twitter_card":"summary_large_image","twitter_misc":{"Written by":"L'\u00e9quipe Lean","Est. reading time":"9 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/lean-app.com\/etude-base-donnees-calories\/#article","isPartOf":{"@id":"https:\/\/lean-app.com\/etude-base-donnees-calories\/"},"author":{"@id":"https:\/\/lean-app.com\/#organization"},"headline":"Nous avons analys\u00e9 857 655 produits vendus en France : ce que ton scanner de calories ne te dit pas","datePublished":"2026-08-23T20:43:53+00:00","dateModified":"2026-09-05T10:39:09+00:00","mainEntityOfPage":{"@id":"https:\/\/lean-app.com\/etude-base-donnees-calories\/"},"wordCount":1781,"commentCount":0,"publisher":{"@id":"https:\/\/lean-app.com\/#organization"},"image":{"@id":"https:\/\/lean-app.com\/etude-base-donnees-calories\/#primaryimage"},"thumbnailUrl":"https:\/\/lean-app.com\/wp-content\/uploads\/2026\/05\/lvm-logo-lean-square-scaled.webp","inLanguage":"da-DK","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/lean-app.com\/etude-base-donnees-calories\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/lean-app.com\/etude-base-donnees-calories\/","url":"https:\/\/lean-app.com\/etude-base-donnees-calories\/","name":"Vi analyserede 857 655 produkter solgt i Frankrig: det, din kaloriescanner ikke fort\u00e6ller dig - Lean","isPartOf":{"@id":"https:\/\/lean-app.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/lean-app.com\/etude-base-donnees-calories\/#primaryimage"},"image":{"@id":"https:\/\/lean-app.com\/etude-base-donnees-calories\/#primaryimage"},"thumbnailUrl":"https:\/\/lean-app.com\/wp-content\/uploads\/2026\/05\/lvm-logo-lean-square-scaled.webp","datePublished":"2026-08-23T20:43:53+00:00","dateModified":"2026-09-05T10:39:09+00:00","breadcrumb":{"@id":"https:\/\/lean-app.com\/etude-base-donnees-calories\/#breadcrumb"},"inLanguage":"da-DK","potentialAction":[{"@type":"ReadAction","target":["https:\/\/lean-app.com\/etude-base-donnees-calories\/"]}]},{"@type":"ImageObject","inLanguage":"da-DK","@id":"https:\/\/lean-app.com\/etude-base-donnees-calories\/#primaryimage","url":"https:\/\/lean-app.com\/wp-content\/uploads\/2026\/05\/lvm-logo-lean-square-scaled.webp","contentUrl":"https:\/\/lean-app.com\/wp-content\/uploads\/2026\/05\/lvm-logo-lean-square-scaled.webp"},{"@type":"BreadcrumbList","@id":"https:\/\/lean-app.com\/etude-base-donnees-calories\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/lean-app.com\/"},{"@type":"ListItem","position":2,"name":"Nous avons analys\u00e9 857 655 produits vendus en France : ce que ton scanner de calories ne te dit pas"}]},{"@type":"WebSite","@id":"https:\/\/lean-app.com\/#website","url":"https:\/\/lean-app.com\/","name":"Lean","description":"Download, pr\u00f8v appen GRATIS, og tag kontrol over din krop FOR ALTID.","publisher":{"@id":"https:\/\/lean-app.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/lean-app.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"da-DK"},{"@type":"Organization","@id":"https:\/\/lean-app.com\/#organization","name":"Lean","url":"https:\/\/lean-app.com\/","logo":{"@type":"ImageObject","inLanguage":"da-DK","@id":"https:\/\/lean-app.com\/#\/schema\/logo\/image\/","url":"https:\/\/lean-app.com\/wp-content\/uploads\/2025\/08\/Logo-for-Lean-App-the-best-calorie-and-TDEE-tracking-application.png","contentUrl":"https:\/\/lean-app.com\/wp-content\/uploads\/2025\/08\/Logo-for-Lean-App-the-best-calorie-and-TDEE-tracking-application.png","width":1672,"height":1484,"caption":"Lean"},"image":{"@id":"https:\/\/lean-app.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/share\/1GXD3qyMBy\/?mibextid=wwXIfr","https:\/\/apps.apple.com\/fr\/app\/lean-calorie-ai-podometre\/id6738668646","https:\/\/play.google.com\/store\/apps\/details?id=com.lean.testsqflite","https:\/\/app.dealroom.co\/companies\/lean_calorie_tracker","https:\/\/alternativeto.net\/software\/lean-calorie-tracker\/"]}]}},"_links":{"self":[{"href":"https:\/\/lean-app.com\/da\/wp-json\/wp\/v2\/posts\/1947","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lean-app.com\/da\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/lean-app.com\/da\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/lean-app.com\/da\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/lean-app.com\/da\/wp-json\/wp\/v2\/comments?post=1947"}],"version-history":[{"count":0,"href":"https:\/\/lean-app.com\/da\/wp-json\/wp\/v2\/posts\/1947\/revisions"}],"wp:attachment":[{"href":"https:\/\/lean-app.com\/da\/wp-json\/wp\/v2\/media?parent=1947"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/lean-app.com\/da\/wp-json\/wp\/v2\/categories?post=1947"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/lean-app.com\/da\/wp-json\/wp\/v2\/tags?post=1947"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}