{"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\/nl\/etude-base-donnees-calories\/","title":{"rendered":"We hebben 857 655 in Frankrijk verkochte producten geanalyseerd: wat je caloriescanner je niet vertelt"},"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\/nl\/\" aria-label=\"Accueil Lean\">\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\/nl\/tdee-calculator\/\">TDEE-calculator<\/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=\"T\u00e9l\u00e9charger sur l'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=\"Disponible sur 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\/nl\/\">Home<\/a> &nbsp;\/&nbsp; Studie caloriedatabase<\/div>\n  <div class=\"eyebrow\">Originele studie &middot; Publieke gegevens<\/div>\n  <h1 id=\"title\">857&nbsp;655 producten geanalyseerd.\n    <span class=\"alt\">Wat je caloriescanner je niet vertelt.<\/span>\n  <\/h1>\n  <p class=\"dek\">Elke barcodescan in Frankrijk raadpleegt dezelfde database. We hebben ze volledig geanalyseerd. Meer dan \u00e9\u00e9n scan op drie geeft een ontbrekend, onvolledig of inconsistent gegeven terug.<\/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>Door <strong>Het Lean-team<\/strong> &middot; gepubliceerd op 24 augustus 2026 &middot; leestijd 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=\"T\u00e9l\u00e9charger Lean sur l'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=\"T\u00e9l\u00e9charger Lean sur 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\">Waarom deze studie<\/h2>\n  <p>Als je een barcode scant in een calorietracker in Frankrijk, MyFitnessPal, Yazio, Lifesum of Lean, komt het gegeven min of meer van dezelfde bron: <a href=\"https:\/\/world.openfoodfacts.org\/\" target=\"_blank\" rel=\"noopener\">OpenFoodFacts<\/a>, een formidabele Franse collaboratieve database onder de open ODbL-licentie. Miljoenen productfiches, ingevuld door vrijwillige bijdragers.<\/p>\n  <p>Een collaboratieve database, dat is haar kracht en haar beperking: iedereen kan een fiche aanmaken of wijzigen, en niemand controleert systematisch. Niemand had de echte betrouwbaarheid becijferd van wat je scan teruggeeft. We hebben daarom de volledige publieke dump van 23 augustus 2026 gedownload en elk in Frankrijk verkocht product getest.<\/p>\n  <div class=\"stat-grid\">\n    <div class=\"stat-card\"><div class=\"n\">4 535 553<\/div><div class=\"t\">producten in de wereldwijde database op 23 augustus 2026<\/div><\/div>\n    <div class=\"stat-card\"><div class=\"n\">1 265 726<\/div><div class=\"t\">producten gerefereerd als verkocht in Frankrijk<\/div><\/div>\n    <div class=\"stat-card\"><div class=\"n pink\">857 655<\/div><div class=\"t\">analyseerbare producten: calorie\u00ebn en de 3 macro&rsquo;s ingevuld<\/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\">De methode: elke fiche getest tegen zichzelf<\/h2>\n  <p>Geen labo nodig om een foute fiche op te sporen: het volstaat ze met zichzelf te confronteren. De calorie\u00ebn van een voedingsmiddel worden afgeleid van zijn macronutri\u00ebnten met de Atwater-factoren, dezelfde die de Europese INCO-verordening aan de industrie oplegt: 4&nbsp;kcal per gram eiwitten, 4 per gram koolhydraten, 9 per gram vetten.<\/p>\n  <p>Als een fiche 100&nbsp;kcal toont maar haar eigen macro&rsquo;s er 250 geven, is een van de twee regels fout. En je app toont je een van de twee zonder te knipperen.<\/p>\n  <div class=\"metho\">\n    <h3>Volledige methodologie<\/h3>\n    <ul>\n      <li>Offici\u00eble OpenFoodFacts-dump van 23 augustus 2026 (ODbL-licentie), perimeter Frankrijk<\/li>\n      <li>Herberekening: <code>4&times;eiwitten + 4&times;koolhydraten + 9&times;vetten<\/code>, plus 7&nbsp;kcal\/g alcohol, 2&nbsp;kcal\/g vezels en 2,4&nbsp;kcal\/g polyolen (erythritol: 0), conform INCO-verordening 1169\/2011<\/li>\n      <li>Fiche alleen als inconsistent geteld als de afwijking zowel 10&nbsp;% als 30&nbsp;kcal\/100g overschrijdt: de ruis van water en thee op 2&nbsp;kcal is uitgesloten<\/li>\n      <li>16 364 afwijkende fiches uitgesloten (calorie\u00ebn buiten 1-950&nbsp;kcal\/100g, onmogelijke macro&rsquo;s)<\/li>\n      <li>Elk voorbeeld op deze pagina is op de dag van publicatie opnieuw gecontroleerd op de onlinefiche<\/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\">Resultaat 1: bijna 1 fiche op 3 is onvolledig<\/h2>\n  <div class=\"bignum\">31 %<small>van de FR-producten zonder volledige gegevens<\/small><\/div>\n  <p>391 707 in Frankrijk verkochte producten hebben geen calorie\u00ebn ingevuld, of niet hun drie macronutri\u00ebnten. Concreet: je scant, en de app toont 0&nbsp;kcal, of calorie\u00ebn zonder eiwitten of koolhydraten. Je hebt de indruk te tracken, je logt leegte.<\/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=\"R\u00e9partition des 1 265 726 produits fran\u00e7ais par fiabilit\u00e9 de fiche\" role=\"img\"><\/canvas><\/div>\n    <figcaption>Het lot van een scan in Frankrijk, op 1 265 726 producten.<\/figcaption>\n  <\/figure>\n  <p>Het is de meest sluipende fout, omdat ze niet op een fout lijkt: de fiche verschijnt, het product heeft een naam, een foto. Alleen het essenti\u00eble ontbreekt.<\/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\">Resultaat 2: 46 757 producten met inconsistente calorie\u00ebn<\/h2>\n  <p>Van de 857 655 volledige fiches tonen er 46 757 calorie\u00ebn die onverenigbaar zijn met hun eigen macro&rsquo;s, met minstens 10&nbsp;% en 30&nbsp;kcal per 100&nbsp;g. Elk punt in de grafiek hieronder is een echt product: op de x-as wat zijn fiche verklaart, op de y-as wat zijn macro&rsquo;s geven. Een eerlijke fiche valt op de diagonaal.<\/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=\"Calories d\u00e9clar\u00e9es contre calories recalcul\u00e9es, \u00e9chantillon de 1 370 produits\" role=\"img\"><\/canvas><\/div>\n    <figcaption>1 370 echte producten: verklaard vs herberekend uit de macro&rsquo;s.<\/figcaption>\n  <\/figure>\n  <p>De verdeling van de afwijkingen toont dat de database massaal correct is, en dan een lange staart heeft: de foute fiches zijn niet licht fout, ze zijn heel fout.<\/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=\"Distribution des \u00e9carts relatifs entre calories d\u00e9clar\u00e9es et recalcul\u00e9es\" role=\"img\"><\/canvas><\/div>\n    <figcaption>Verdeling van de afwijkingen, logaritmische schaal.<\/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=\"Inconsistente producten per afwijkingsdrempel\" role=\"img\"><\/canvas><\/div>\n    <figcaption>Inconsistente producten per afwijkingsdrempel, basis 857 655 fiches.<\/figcaption>\n  <\/figure>\n  <p>18 251 producten, ofwel twee materieel inconsistente op vijf, vergissen zich <em>van enkel tot dubbel of meer<\/em>. Op dat niveau is het geen onnauwkeurigheid meer, het is een gegeven dat je caloriebalans van de dag omkeert.<\/p>\n  <p>Onvolledige en inconsistente fiches samengeteld: <strong>meer dan \u00e9\u00e9n scan op drie in Frankrijk geeft een ontbrekend, onvolledig of inconsistent gegeven terug<\/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\">Producten die je in je kast hebt<\/h2>\n  <p>Elke fiche hieronder is op de dag van publicatie online opnieuw gecontroleerd. Links wat de OpenFoodFacts-fiche toont, rechts wat haar eigen macro&rsquo;s geven:<\/p>\n  <div class=\"prod-cards\">\n    <div class=\"prod-card\"><div class=\"who\"><b>Le Beurre Tendre<\/b><span>fiche van het product Elle&amp;Vire &middot; 535 scans<\/span><\/div><div class=\"vals\"><span><span class=\"fiche\">375<\/span><span class=\"unit\">fiche<\/span><\/span><span class=\"fleche\">&rarr;<\/span><span><span class=\"reel\">744<\/span><span class=\"unit\">macro&rsquo;s<\/span><\/span><\/div><\/div>\n    <div class=\"prod-card\"><div class=\"who\"><b>Yaos Yaourt \u00e0 la Grecque<\/b><span>fiche van het product Nestl\u00e9 &middot; 271 scans<\/span><\/div><div class=\"vals\"><span><span class=\"fiche\">50<\/span><span class=\"unit\">fiche<\/span><\/span><span class=\"fleche\">&rarr;<\/span><span><span class=\"reel\">98<\/span><span class=\"unit\">macro&rsquo;s<\/span><\/span><\/div><\/div>\n    <div class=\"prod-card\"><div class=\"who\"><b>Sweet &amp; Salty Nut chocolade<\/b><span>fiche van het product Nature Valley &middot; 338 scans<\/span><\/div><div class=\"vals\"><span><span class=\"fiche\">647<\/span><span class=\"unit\">fiche<\/span><\/span><span class=\"fleche\">&rarr;<\/span><span><span class=\"reel\">140<\/span><span class=\"unit\">macro&rsquo;s<\/span><\/span><\/div><\/div>\n    <div class=\"prod-card\"><div class=\"who\"><b>Ratatouille \u00e0 la Proven\u00e7ale<\/b><span>fiche van het product Cassegrain &middot; 298 scans<\/span><\/div><div class=\"vals\"><span><span class=\"fiche\">38<\/span><span class=\"unit\">fiche<\/span><\/span><span class=\"fleche\">&rarr;<\/span><span><span class=\"reel\">72<\/span><span class=\"unit\">macro&rsquo;s<\/span><\/span><\/div><\/div>\n  <\/div>\n  <p>Het schoolvoorbeeld: de lentilles cuisin\u00e9es \u00e0 l&rsquo;Auvergnate van Raynal &amp; Roquelaure bestaan onder <strong>twee verschillende fiches<\/strong>. De ene toont 48&nbsp;kcal\/100g, de andere 207. De echte waarde ligt rond 99. Afhankelijk van de barcode die je app opvangt, denk je twee keer minder of twee keer meer te eten dan de realiteit.<\/p>\n  <p>Een gebruiker die 30&nbsp;g van de boter hierboven smeert, telt 110&nbsp;kcal te weinig. Elke dag. In de overtuiging het goed te doen.<\/p>\n  <div class=\"cta-band rev\">\n    <div class=\"l\">Lean controleert de consistentie van de fiches en scant ook je bord op foto, zonder van een barcode af te hangen.<\/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 meest getroffen categorie\u00ebn<\/h2>\n  <p>De inconsistentie is niet willekeurig verdeeld, en de ironie van de ranking is wreed: de meest getroffen categorie van de hele database is die welke sporters het meest tracken. <strong>Meer dan \u00e9\u00e9n eiwitreep op vijf (20,8&nbsp;%) heeft een inconsistente fiche.<\/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=\"Cat\u00e9gories : volume de produits, taux et nombre de fiches incoh\u00e9rentes\" role=\"img\"><\/canvas><\/div>\n    <figcaption>Elke bel is een categorie; haar grootte, haar inconsistente fiches.<\/figcaption>\n  <\/figure>\n  <p>Complexe recepten en verrijkte producten concentreren de fouten: eiwitrepen, zoetwaren, snoep, kazen. Eenvoudige producten doen het beter.<\/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=\"Taux d'incoh\u00e9rence par cat\u00e9gorie\" role=\"img\"><\/canvas><\/div>\n    <figcaption>Aandeel inconsistente fiches per categorie (min. 1 000 producten).<\/figcaption>\n  <\/figure>\n  <p>Een eerlijke noot: snoep, zoetwaren en repen worden deels verklaard door zoetstoffen. Als een fiche haar polyolen niet verklaart, overschat de herberekening de afwijking. We hebben alles gecorrigeerd wat verklaard was; het residu weerspiegelt ook dat gat in de verklaring, dat je app op precies dezelfde manier misleidt.<\/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\">Wat dat verandert voor je tracking<\/h2>\n  <p>Eerst wat het niet betekent: je moet niet stoppen met scannen, en OpenFoodFacts blijft een opmerkelijk project dat leeft en zich continu corrigeert. De curve hieronder toont het: de fiches aangemaakt in 2020-2021 zijn de minst betrouwbare (tot 7,5&nbsp;% inconsistentie), en de kwaliteit is sinds 2023 duidelijk verbeterd.<\/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=\"Taux de fiches incoh\u00e9rentes selon l'ann\u00e9e de cr\u00e9ation de la fiche\" role=\"img\"><\/canvas><\/div>\n    <figcaption>Inconsistentiepercentage volgens het aanmaakjaar van de fiche.<\/figcaption>\n  <\/figure>\n  <p>Vier van de zes slechtste fiches van de dump waren op het moment van onze controle al online gecorrigeerd. Maar je app heeft misschien de foute versie gesynchroniseerd, en de honderdduizenden fiches uit de slechtste jaren zitten nog altijd in de database.<\/p>\n  <p>Twee reflexen om te onthouden:<\/p>\n  <p><strong>1. De scan is een snelheidstool, geen waarheidstool.<\/strong> Na een scan volstaat een blik op de macro&rsquo;s: als eiwitten, koolhydraten en vetten niet kloppen met de getoonde calorie\u00ebn, is de fiche fout. Dat is precies de test van deze studie, en hij duurt twee seconden.<\/p>\n  <p><strong>2. De onzichtbare fout zit niet op je bord, ze zit in je verbruik.<\/strong> Een fiche die 110&nbsp;kcal fout is, wordt in tien seconden gecorrigeerd zodra ze is opgemerkt. Een calorieverbruik dat 300&nbsp;kcal per dag fout is, zie je nooit: het zit begraven in de \u00abactiviteitsvermenigvuldiger\u00bb die je app je bij de inschrijving heeft laten kiezen. Daar concentreert Lean zijn precisie: <a href=\"https:\/\/lean-app.com\/nl\/depense-energetique-totale-v2\/\">TDEE = BMR + NEAT + EAT + TEF<\/a>, met een BMR berekend op je <a href=\"https:\/\/lean-app.com\/nl\/calcul-metabolisme-de-base\/\">echte vetpercentage<\/a> en een <a href=\"https:\/\/lean-app.com\/nl\/calculateur-neat\/\">NEAT op je echte stappen<\/a>, niet op een aangevinkt vakje.<\/p>\n  <div class=\"cta-band rev\">\n    <div class=\"l\">Word Lean, blijf Lean: de enige app die je verbruik berekent op metingen, niet op vakjes.<\/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\">Wetenschappelijke depots en citatie<\/h2>\n  <p>Deze studie is gedeponeerd in onafhankelijke open archieven, met een permanente identificator (DOI) en de volledige pdf&rsquo;s in het Frans en het Engels. Elk depot is controleerbaar zonder via deze site te gaan:<\/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; referentiedepot, pdf FR + EN<\/span><\/div><div class=\"vals\"><a href=\"https:\/\/doi.org\/10.5281\/zenodo.22284416\" target=\"_blank\" rel=\"noopener\">Depot openen &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\">Depot openen &rarr;<\/a><\/div><\/div>\n    <div class=\"prod-card\"><div class=\"who\"><b>OSF (Center for Open Science)<\/b><span>publiek project tczvj &middot; methodologie en bestanden<\/span><\/div><div class=\"vals\"><a href=\"https:\/\/osf.io\/tczvj\/\" target=\"_blank\" rel=\"noopener\">Project openen &rarr;<\/a><\/div><\/div>\n    <div class=\"prod-card\"><div class=\"who\"><b>data.gouv.fr<\/b><span>aangegeven hergebruik van de Open Food Facts-dataset<\/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\">Hergebruik bekijken &rarr;<\/a><\/div><\/div>\n  <\/div>\n  <p><strong>Om deze studie te citeren:<\/strong> Het Lean-team (2026). 857 655 producten geanalyseerd: interne coherentie van de caloriegegevens van 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\">Veelgestelde vragen<\/h2>\n  <div class=\"faq\">\n    <details><summary>Waarom OpenFoodFacts en niet USDA?<\/summary><div class=\"ans\">Voor producten met barcode die in Frankrijk worden verkocht, is de referentiebron van de trackers OpenFoodFacts. USDA dekt onbewerkte voedingsmiddelen en de Amerikaanse markt. Deze studie gaat over wat een scan in Frankrijk echt teruggeeft.<\/div><\/details>\n    <details><summary>Moet je stoppen met je voedsel scannen?<\/summary><div class=\"ans\">Nee. De scan blijft de snelste manier om te loggen. De goede praktijk: controleren dat de getoonde macro&rsquo;s consistent zijn met de calorie\u00ebn. Twee seconden die de slechtste fiches vermijden.<\/div><\/details>\n    <details><summary>Corrigeren de apps deze fouten?<\/summary><div class=\"ans\">De database leeft continu en corrigeert zich, dat is de kracht van het collaboratieve. Maar een app die een foute fiche heeft gesynchroniseerd, kan ze lang na de onlinecorrectie in de cache houden.<\/div><\/details>\n    <details><summary>Mogen de cijfers van deze studie worden hergebruikt?<\/summary><div class=\"ans\">Ja, vrij, met vermelding van \u00abLean-studie, augustus 2026\u00bb en een link naar deze pagina. De brongegevens behoren toe aan OpenFoodFacts (ODbL-licentie) en onze methodologie is hierboven volledig beschreven.<\/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\">Bronnen<\/span><\/div>\n  <ol>\n    <li>OpenFoodFacts, offici\u00eble dump van 23 augustus 2026, <a href=\"https:\/\/world.openfoodfacts.org\/data\" target=\"_blank\" rel=\"noopener\">world.openfoodfacts.org\/data<\/a>, ODbL-licentie.<\/li>\n    <li>Verordening (EU) nr. 1169\/2011 (INCO), bijlage XIV: energieconversiefactoren.<\/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 gepubliceerd op 24 augustus 2026. Regelmatig bijgewerkt met feedback van gebruikers en nieuwe relevante studies. Lean is beschikbaar op iOS en 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>We hebben 857 655 in Frankrijk verkochte producten geanalyseerd: wat je caloriescanner je niet vertelt - 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\/nl\/etude-base-donnees-calories\/\" \/>\n<meta property=\"og:locale\" content=\"nl_NL\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"We hebben 857 655 in Frankrijk verkochte producten geanalyseerd: wat je caloriescanner je niet vertelt - 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\/nl\/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\":\"nl-NL\",\"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\":\"nl-NL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/lean-app.com\/etude-base-donnees-calories\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"nl-NL\",\"@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\":\"nl-NL\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/lean-app.com\/#organization\",\"name\":\"Lean\",\"url\":\"https:\/\/lean-app.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"nl-NL\",\"@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":"We hebben 857 655 in Frankrijk verkochte producten geanalyseerd: wat je caloriescanner je niet vertelt - 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\/nl\/etude-base-donnees-calories\/","og_locale":"nl_NL","og_type":"article","og_title":"We hebben 857 655 in Frankrijk verkochte producten geanalyseerd: wat je caloriescanner je niet vertelt - 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\/nl\/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":"nl-NL","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":"We hebben 857 655 in Frankrijk verkochte producten geanalyseerd: wat je caloriescanner je niet vertelt - 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":"nl-NL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/lean-app.com\/etude-base-donnees-calories\/"]}]},{"@type":"ImageObject","inLanguage":"nl-NL","@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, probeer de app GRATIS en neem je lichaam VOOR ALTIJD in eigen handen.","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":"nl-NL"},{"@type":"Organization","@id":"https:\/\/lean-app.com\/#organization","name":"Lean","url":"https:\/\/lean-app.com\/","logo":{"@type":"ImageObject","inLanguage":"nl-NL","@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\/nl\/wp-json\/wp\/v2\/posts\/1947","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lean-app.com\/nl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/lean-app.com\/nl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/lean-app.com\/nl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/lean-app.com\/nl\/wp-json\/wp\/v2\/comments?post=1947"}],"version-history":[{"count":0,"href":"https:\/\/lean-app.com\/nl\/wp-json\/wp\/v2\/posts\/1947\/revisions"}],"wp:attachment":[{"href":"https:\/\/lean-app.com\/nl\/wp-json\/wp\/v2\/media?parent=1947"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/lean-app.com\/nl\/wp-json\/wp\/v2\/categories?post=1947"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/lean-app.com\/nl\/wp-json\/wp\/v2\/tags?post=1947"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}