@leadbay/mcp 0.44.0 → 0.44.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +14 -0
- package/dist/bin.js +4 -4
- package/dist/http-server.js +4 -4
- package/dist/installer-electron.js +1 -1
- package/dist/installer-gui.js +1 -1
- package/package.json +1 -1
package/dist/bin.js
CHANGED
|
@@ -27485,8 +27485,8 @@ var init_artifact_runtime_generated = __esm({
|
|
|
27485
27485
|
"../core/dist/artifact-runtime.generated.js"() {
|
|
27486
27486
|
"use strict";
|
|
27487
27487
|
ARTIFACT_KIT_VERSION = "0.6.0";
|
|
27488
|
-
ARTIFACT_RUNTIME = '"use strict";(()=>{var we=Object.defineProperty;var ke=(e,t,n)=>t in e?we(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var b=(e,t,n)=>ke(e,typeof t!="symbol"?t+"":t,n);var Y=`\n:root{\n--color-black:#191919;--color-white:#fff;\n--color-gray-1:#f9f9f9;--color-gray-2:#f0f0f0;--color-gray-3:#e0e0e0;--color-gray-4:#cecece;\n--color-gray-5:#c4c4c4;--color-gray-6:#8d8d8d;--color-gray-7:#787878;--color-gray-8:#646464;\n--color-gray-9:#202020;\n--color-linkedin:#0a66c2;\n--color-blue-background:oklch(0.947 0.029 251);--color-blue-foreground:oklch(0.564 0.181 251);\n--color-green-background:oklch(0.947 0.029 141);--color-green-foreground:oklch(0.564 0.181 141);\n--color-red-background:oklch(0.947 0.029 26);--color-red-foreground:oklch(0.564 0.191 26);\n--color-gold-background:oklch(0.972 0.049 91);--color-gold-foreground:oklch(0.667 0.177 91);\n/* Yellow is the web app\'s "Could not reach" prospecting action. Its\n foreground is light (0.864) by design: the web app uses it for icons and\n borders on the tinted background, never as text on white. */\n--color-yellow-background:oklch(0.972 0.054 91);--color-yellow-foreground:oklch(0.864 0.181 91);\n--color-yellow-border:color-mix(in oklch,var(--color-yellow-foreground),transparent 65%);\n--color-cherry-background:oklch(0.947 0.029 15);--color-cherry-foreground:oklch(0.44 0.146 15);\n/* Purple carries the product\'s "AI" affordance (Qualify / Requalify). The\n border is the foreground at 65% transparency, exactly as the style package\n derives every *-border token. */\n--color-purple-background:oklch(0.947 0.029 288);--color-purple-foreground:oklch(0.464 0.181 288);\n--color-purple-border:color-mix(in oklch,var(--color-purple-foreground),transparent 65%);\n/* Teal carries the qualifier\'s intent tags, as the product\'s taste-profile\n tags do. Border derived at 65% transparency, like every *-border token. */\n--color-teal-background:oklch(0.977 0.019 180);--color-teal-foreground:oklch(0.574 0.182 180);\n--color-teal-border:color-mix(in oklch,var(--color-teal-foreground),transparent 65%);\n--color-red-like:var(--color-cherry-foreground);\n--lb-font:"Nikkei Maru",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;\n/* Concentric: outer = inner + padding (0.625 + 0.875 = 1.5rem). The card\'s\n padding is what closes this equation, so the two move together \\u2014 see\n .lb-card, which pads 0.875rem for exactly this reason. */\n--lb-radius:1.5rem;--lb-radius-sm:0.625rem;--lb-gap:0.75rem;\n--lb-surface:var(--color-gray-1);--lb-border:var(--color-gray-3);\n--lb-fg:var(--color-black);--lb-muted:var(--color-gray-8);--lb-field:var(--color-white);\n/* Chips and shadows need their own aliases: a chip painted with a raw ramp\n value cannot theme, and a shadow tinted with --color-gray-9 is invisible in\n dark because gray-9 IS the dark surface. */\n--lb-chip-bg:var(--color-gray-2);\n--lb-control-border:var(--color-gray-6);\n--lb-shadow:0 0.5rem 1.5rem oklch(0 0 0/.06),0 0.125rem 0.5rem oklch(0 0 0/.04);\ncolor-scheme:light;\n/* macOS renders text heavier than intended. This belongs once on the root,\n never per component \\u2014 an artifact that injects this sheet gets it for free\n instead of each page re-declaring it on its own body. */\n-webkit-font-smoothing:antialiased;\n-moz-osx-font-smoothing:grayscale;\n}\n:root[data-theme=dark],:root[data-lb-theme=dark]{\n--lb-surface:var(--color-gray-9);--lb-border:var(--color-gray-8);\n--lb-fg:var(--color-white);--lb-muted:var(--color-gray-3);\n/* --lb-field must NOT equal --lb-surface: a control needs its own ground or it\n reads as text on the card (was 1.00:1). */\n--lb-field:#2c2c2c;\n--lb-chip-bg:#3b3b3b;\n--lb-control-border:var(--color-gray-6);\n--lb-shadow:0 0.5rem 1.5rem oklch(0 0 0/.5),0 0.125rem 0.5rem oklch(0 0 0/.35);\ncolor-scheme:dark;\n--color-blue-background:oklch(0.30 0.055 251);--color-blue-foreground:oklch(0.80 0.11 251);\n--color-green-background:oklch(0.30 0.055 141);--color-green-foreground:oklch(0.80 0.13 141);\n--color-red-background:oklch(0.30 0.060 26);--color-red-foreground:oklch(0.80 0.11 26);\n--color-gold-background:oklch(0.30 0.055 91);--color-gold-foreground:oklch(0.82 0.13 91);\n--color-yellow-background:oklch(0.30 0.055 91);--color-yellow-foreground:oklch(0.86 0.14 91);\n--color-cherry-background:oklch(0.30 0.055 15);--color-cherry-foreground:oklch(0.82 0.10 15);\n--color-purple-background:oklch(0.30 0.055 288);--color-purple-foreground:oklch(0.82 0.11 288);\n--color-teal-background:oklch(0.30 0.055 180);--color-teal-foreground:oklch(0.82 0.11 180);\n}\n@media(prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-lb-theme=light]){\n--lb-surface:var(--color-gray-9);--lb-border:var(--color-gray-8);\n--lb-fg:var(--color-white);--lb-muted:var(--color-gray-3);\n/* --lb-field must NOT equal --lb-surface: a control needs its own ground or it\n reads as text on the card (was 1.00:1). */\n--lb-field:#2c2c2c;\n--lb-chip-bg:#3b3b3b;\n--lb-control-border:var(--color-gray-6);\n--lb-shadow:0 0.5rem 1.5rem oklch(0 0 0/.5),0 0.125rem 0.5rem oklch(0 0 0/.35);\ncolor-scheme:dark;\n--color-blue-background:oklch(0.30 0.055 251);--color-blue-foreground:oklch(0.80 0.11 251);\n--color-green-background:oklch(0.30 0.055 141);--color-green-foreground:oklch(0.80 0.13 141);\n--color-red-background:oklch(0.30 0.060 26);--color-red-foreground:oklch(0.80 0.11 26);\n--color-gold-background:oklch(0.30 0.055 91);--color-gold-foreground:oklch(0.82 0.13 91);\n--color-yellow-background:oklch(0.30 0.055 91);--color-yellow-foreground:oklch(0.86 0.14 91);\n--color-cherry-background:oklch(0.30 0.055 15);--color-cherry-foreground:oklch(0.82 0.10 15);\n--color-purple-background:oklch(0.30 0.055 288);--color-purple-foreground:oklch(0.82 0.11 288);\n--color-teal-background:oklch(0.30 0.055 180);--color-teal-foreground:oklch(0.82 0.11 180);\n}}\n/* 0.875rem padding is not arbitrary: it closes the concentric equation with\n --lb-radius (1.5rem) and --lb-radius-sm (0.625rem). Changing it without\n moving --lb-radius leaves a control\'s arc running wider than the card\'s in\n the corner. */\n.lb-card{display:grid;gap:var(--lb-gap);padding:0.875rem;\nbackground-color:var(--lb-surface);border:1px solid var(--lb-border);\nborder-radius:var(--lb-radius);corner-shape:squircle;color:var(--lb-fg);\nfont-family:var(--lb-font);\nbox-shadow:var(--lb-shadow)}\n/* \\u2500\\u2500 Card layout \\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\n A lead card is a stack of SECTIONS, each a titled block (Fit, Intent tags,\n Data, Status, Outreach). One wrapper owns the rhythm \\u2014 16px between\n sections, 8px between the items inside one \\u2014 so a section can be added,\n removed or reordered without touching spacing, and no margin can collapse.\n Every artifact that builds cards gets the same geometry from here rather\n than hand-rolling it. */\n.lb-sections{display:flex;flex-direction:column;gap:1rem}\n.lb-section{display:grid;gap:0.5rem}\n/* A section title: black, uppercase, tracked. It names the block below it, so\n it must sit at SECTION level \\u2014 nested inside a row it stops being a peer of\n the other titles and the card loses its scan order. */\n.lb-sec-title{font-size:0.75rem;font-weight:700;letter-spacing:.08em;\ntext-transform:uppercase;color:var(--lb-fg);line-height:1.4;\ntext-wrap:balance}\n/* Header row: leading control (a bulk checkbox), the title, then trailing\n controls (taste) pushed to the far edge. */\n.lb-card-top{display:flex;align-items:center;gap:0.625rem;flex-wrap:wrap}\n.lb-card-top>.lb-group{flex:0 0 auto;margin-inline-start:auto}\n.lb-card-top>input[type=checkbox]{flex:0 0 auto;width:1rem;height:1rem;margin:0}\n/* The company name. Bold and underlined so it reads as the card\'s subject and\n as a link, without competing with the uppercase section titles. */\n/* text-wrap:balance keeps a two-line company name from breaking one-word-over;\n the underline takes its position and thickness from the font\'s own metrics\n rather than wherever the browser puts them, and skip-ink clears descenders. */\n.lb-lead-title{flex:1 1 9rem;min-width:0;font-size:0.9375rem;font-weight:700;\nline-height:1.3;color:var(--lb-fg);text-wrap:balance;text-decoration:underline;\ntext-underline-position:from-font;text-decoration-thickness:from-font;\ntext-underline-offset:2px;text-decoration-skip-ink:auto;overflow-wrap:break-word}\n.lb-lead-title a{color:inherit;text-decoration:inherit}\n/* Controls in a section stack, each spanning it, so every control on the card\n shares one leading edge and one width. Three different widths across a row\n read as three unrelated things. */\n.lb-section>.lb-select,.lb-section>.lb-input,\n.lb-stack>.lb-select,.lb-stack>.lb-input,.lb-stack>.lb-btn{width:100%;min-width:0}\n/* Footer: a leading action, a spacer, a trailing escape hatch. */\n.lb-card-foot{display:flex;align-items:center;gap:0.625rem;\npadding-block-start:0.875rem;border-block-start:1px solid var(--lb-border)}\n.lb-card-foot .lb-spacer{flex:1 1 auto}\n/* \\u2500\\u2500 Toolbar \\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\n The bar above a deck of cards: a tally, the controls that narrow what is\n shown, and the controls that act on a selection. Those are three different\n jobs, so they are three groups \\u2014 0.5rem within one, 1.5rem between \\u2014 rather\n than one flat row where "apply to selected" reads as another filter.\n Concentric: it pads 0.75rem around controls that round at 0.625rem, so it\n rounds at 1.375rem. */\n.lb-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:0.75rem 1.5rem;\npadding:0.75rem 1rem;background-color:var(--lb-surface);\nborder:1px solid var(--lb-border);border-radius:1.375rem;corner-shape:squircle;\nfont-family:var(--lb-font);color:var(--lb-fg)}\n.lb-toolbar .lb-group{gap:0.5rem}\n/* A labelled control stacks: caption above, control below, as a card section\n does. One label pattern across the whole artifact. */\n.lb-field{display:inline-flex;flex-direction:column;align-items:flex-start;\ngap:0.25rem;font-size:0.8125rem;line-height:1.4;color:var(--lb-muted);\nwhite-space:nowrap}\n/* A checkbox belongs BESIDE its words \\u2014 under a caption it reads as orphaned. */\n.lb-field-inline{flex-direction:row;align-items:center;gap:0.5rem}\n/* A control\'s caption is not body copy: it names the control, so it takes the\n same treatment as a card\'s section title. */\n.lb-field-label{font-size:0.75rem;font-weight:700;letter-spacing:.08em;\ntext-transform:uppercase;color:var(--lb-fg)}\n/* A labelled field sizes to its own content, so width:100% on the control\n inside only fills whatever the field already became. Two fields side by side\n still come out unequal \\u2014 they have no shared reference to be equal against.\n Give the FIELD the basis: flex:1 1 9rem makes every labelled field claim the\n same share of the row, so a select and a text input beside it match. */\n.lb-field{flex:1 1 9rem;min-width:9rem;max-width:16rem}\n.lb-field>.lb-select,.lb-field>.lb-input{width:100%;min-width:0}\n/* An inline field holds a checkbox, not a sized control: natural width, no floor. */\n.lb-field-inline{flex:0 0 auto;min-width:0;max-width:none}\n.lb-field-inline>*{min-width:0;width:auto;flex:0 0 auto}\n/* Readouts sit on the control baseline, not the caption\'s. */\n.lb-toolbar .lb-tally,.lb-toolbar .lb-status{align-self:center}\n.lb-tally{font-size:0.8125rem;line-height:1.4;color:var(--lb-muted);\nfont-variant-numeric:tabular-nums;white-space:nowrap}\n/* Connection state, never carried by colour alone: live is a filled dot, dead\n a hollow ring, so the two differ in shape as well as hue \\u2014 a red and a green\n circle are the same circle to a colour-blind reader, and identical under\n forced colours. */\n.lb-status{display:inline-flex;align-items:center;gap:0.5rem;\nfont-size:0.75rem;line-height:1.4;color:var(--lb-muted);white-space:nowrap}\n.lb-status-dot{width:0.5rem;height:0.5rem;border-radius:50%;flex:none;\nbackground-color:var(--color-gray-5);border:2px solid transparent}\n.lb-status[data-live=yes] .lb-status-dot{background-color:var(--color-green-foreground)}\n.lb-status[data-live=no] .lb-status-dot{background-color:transparent;\nborder-color:var(--color-red-foreground)}\n/* \\u2500\\u2500 Pager \\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\n Below a deck, never above it: the rep reads the rows, then decides whether\n to go on. The range ("21\\u201340 of 60") is the honest label \\u2014 "page 2" alone\n does not say how much is left, and a rep who cannot see the end cannot tell\n a short lens from a long one. Tabular, because the numbers change. */\n.lb-pager{display:flex;align-items:center;gap:0.75rem;flex-wrap:wrap}\n.lb-pager .lb-spacer{flex:1 1 auto}\n.lb-pager-range{font-size:0.8125rem;line-height:1.4;color:var(--lb-muted);\nfont-variant-numeric:tabular-nums;white-space:nowrap}\n/* \\u2500\\u2500 Metrics + chart \\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\n A manager dashboard reports before it lists: a row of figures, then the\n trend behind them, then the per-rep table. Tiles are for the few numbers\n that ARE the point \\u2014 a tile per field turns a dashboard into a wall. */\n.lb-tiles{display:grid;gap:0.75rem;\ngrid-template-columns:repeat(auto-fit,minmax(min(9rem,100%),1fr))}\n.lb-tile{display:grid;gap:0.25rem;padding:0.75rem 0.875rem;\nbackground-color:var(--lb-field);border:1px solid var(--lb-border);\nborder-radius:1.375rem;corner-shape:squircle}\n.lb-tile-label{font-size:0.75rem;font-weight:700;letter-spacing:.08em;\ntext-transform:uppercase;color:var(--lb-muted);line-height:1.4}\n.lb-tile-value{font-size:1.5rem;font-weight:700;line-height:1.15;\ncolor:var(--lb-fg);font-variant-numeric:tabular-nums}\n/* The chart draws from the theme tokens, so it reads in light and dark alike;\n a hardcoded stroke disappears on one of the two. Inline SVG rather than a\n CDN library: a sparse weekly series does not earn 200KB, and an artifact\n that silently fails to load its chart shows nothing at all. */\n.lb-chart{display:block;width:100%;height:auto}\n.lb-chart .lb-chart-grid{stroke:var(--lb-border);stroke-width:1}\n.lb-chart .lb-chart-line{fill:none;stroke:var(--color-blue-foreground);stroke-width:2;\nstroke-linejoin:round;stroke-linecap:round}\n.lb-chart .lb-chart-area{fill:var(--color-blue-background);opacity:.55}\n.lb-chart .lb-chart-dot{fill:var(--color-blue-foreground)}\n/* Axis labels are UI text and take the same 12px floor as everything else \\u2014\n a chart is not a licence to shrink type below what is readable. */\n.lb-chart text{fill:var(--lb-muted);font-family:var(--lb-font);font-size:0.75rem}\n/* An empty series is a real answer, not a failure: say so in place of the\n chart rather than drawing empty axes that look broken. */\n.lb-empty{display:grid;place-items:center;gap:0.25rem;padding:1.5rem 1rem;\nbackground-color:var(--lb-field);border:1px dashed var(--lb-border);\nborder-radius:1.375rem;corner-shape:squircle;text-align:center}\n.lb-empty-title{font-size:0.8125rem;font-weight:600;color:var(--lb-fg);line-height:1.4}\n.lb-empty-hint{font-size:0.78125rem;color:var(--lb-muted);line-height:1.45;max-width:44ch}\n/* A page flip replaces the whole deck, so the rows must read as pending or the\n rep cannot tell a slow page from a finished one. Dim and lock the deck\n rather than blanking it: keeping the old rows on screen preserves the\n scroll position and the sense of place. */\n.lb-deck[data-lb-state=loading]{opacity:.55;pointer-events:none}\n/* The head must be able to wrap. Both children default to flex:0 1 auto, so\n without this they shrink together and a long company name is crushed to three\n lines while the chips keep full width. flex-basis:11rem is a content breakpoint:\n below ~176px for the title, the chips drop to their own line instead. */\n.lb-card-head{display:flex;flex-wrap:wrap;justify-content:space-between;\nalign-items:baseline;gap:var(--lb-gap)}\n/* An email or URL has no break opportunity \\u2014 browsers do not break at "@" or\n ".", so without this a company address escapes the card and the chat host\n clips it with no way to recover the tail. */\n.lb-title{font-size:0.875rem;font-weight:600;line-height:1.3;color:var(--lb-fg);\noverflow-wrap:break-word;min-width:0;flex:1 1 11rem}\n/* pretty stops a lone word landing on the last line of a why-it-fits sentence\n or a fact \\u2014 the orphan that makes a card look unfinished. */\n.lb-sub{font-size:0.8125rem;line-height:1.45;color:var(--lb-muted);\ntext-wrap:pretty;overflow-wrap:break-word;max-width:68ch}\n/* An empty fact line is a 30px void that reads as a rendering bug. */\n.lb-sub:empty{display:none}\n/* The tightest group on the card: consecutive data lines (the contact, then\n the company switchboard) are one block, so they sit at HALF the section\'s\n own 8px. That 2x ratio is what makes them read as a unit rather than as\n separate facts \\u2014 the same rule .lb-section applies one level up against\n .lb-sections\' 16px. The scale halves at each level: 16 \\u2192 8 \\u2192 4. */\n.lb-facts{display:grid;gap:0.25rem}\n/* The contract\'s canonical skeleton already emits data-why; the sheet just did\n not honour it, so consumers hand-patched an inline font-style. */\n.lb-sub[data-why]{font-style:italic;color:var(--lb-fg)}\n/* Icon column: the glyph gets its own cell so a wrapping line hangs on one\n shared text edge instead of running back under the emoji. */\n.lb-fact{display:grid;grid-template-columns:1.15rem 1fr;gap:0.35rem;align-items:baseline}\n.lb-row{display:flex;align-items:center;gap:var(--lb-gap);flex-wrap:wrap}\n/* row-gap matters once the row wraps: without it the wrapped line sits flush\n against the one above. */\n.lb-row{row-gap:0.5rem}\n/* 8px, matching .lb-section \\u2014 a stack inside a section must not space its\n controls wider than the section spaces its own children. */\n.lb-stack{display:grid;gap:0.5rem}\n/* A select is border-box by UA default; a text input is content-box. Given the\n same width, padding and border, the input therefore renders ~2rem wider \\u2014 the\n padding lands outside its box and inside the select\'s. Neither is wrong on its\n own; they just cannot be sized together until they agree. Every control the\n kit styles is border-box, so a declared width is the width that shows. */\n.lb-btn,.lb-select,.lb-input{box-sizing:border-box}\n.lb-select,.lb-input{font:inherit;font-family:var(--lb-font);font-size:0.8125rem;color:var(--lb-fg);\nbackground-color:var(--lb-field);border:1px solid var(--lb-control-border);\nborder-radius:var(--lb-radius-sm);corner-shape:squircle;padding:0.4rem 0.55rem;min-height:2.125rem}\n/* Geometry, states and motion ported from the product\'s Button component\n (packages/ui/components/Button) so an artifact button and an app button are\n the same object. MUI spacing is 8px/unit, so its size=medium (py .875,\n px .875, borderRadius .875) is 7px/7px/7px and large (py 1.75, px 2,\n borderRadius 1.25) is 14px/16px/10px. A control sitting in a row beside a\n select reads as medium, so that is the default here; .lb-btn-lg opts into\n large. The app\'s default variant is secondary \\u2014 white ground, gray-5\n border, black text \\u2014 which is what an unadorned .lb-btn already was. */\n.lb-btn{font:inherit;font-family:var(--lb-font);font-size:0.8125rem;font-weight:600;\ncolor:var(--color-black);background-color:var(--color-white);\nborder:1px solid var(--color-gray-5);\nborder-radius:0.4375rem;corner-shape:squircle;padding:0.4375rem 0.4375rem;min-height:2.125rem;\ncursor:pointer;user-select:none;-webkit-user-select:none;text-wrap:nowrap;\nfont-variant-numeric:tabular-nums;\ntransition:background-color .16s ease,border .16s ease,color .16s ease,\nopacity .16s ease,transform .16s cubic-bezier(0.23,1,0.32,1)}\n/* The app hovers the GROUND to gray-2, not the border. */\n@media (hover:hover){\n.lb-btn:hover:not([disabled]):not([data-lb-state=loading]){\nbackground-color:var(--color-gray-2)}}\n/* Front-loaded press, so the tap leads the colour crossfade. */\n.lb-btn:active:not([disabled]):not([data-lb-state=loading]){transform:scale(0.97)}\n.lb-btn[disabled]{opacity:.4;cursor:default}\n/* A text button with a label + icon: the app lays the content out as a flex row\n with a 6px gap (its content style uses gap 0.75). */\n.lb-btn{display:inline-flex;align-items:center;justify-content:center;gap:0.375rem}\n.lb-btn>svg{display:block;flex-shrink:0;width:1.05rem;height:1.05rem}\n/* Opt-in large, for a button that stands alone rather than in a control row. */\n.lb-btn-lg{border-radius:0.625rem;padding:0.875rem 1rem}\n/* A SUBMIT is not a toggle. Like/Dislike are independent switches; "Set status"\n commits the value sitting in the select beside it. Rendered identically, the\n row reads as five peers and the rep cannot see which control ends the task.\n The accent border + tinted ground marks it as the commit without making it a\n loud filled button \\u2014 the state styles above still win when they apply. */\n/* INVERTED, not recoloured. A normal button is --lb-fg on --lb-field; the\n submit swaps them. That introduces no new hue, and it themes for free: light\n gives near-black on white, dark gives white on near-black \\u2014 the polarity flip\n reads as "this one commits" in both, without competing with the semantic\n state colours (success green / error red) that still override it. */\n/* This is the app\'s primary variant verbatim: black ground, white text, and a\n hover that mixes 32% gray-8 into the black rather than lightening opacity. */\n.lb-btn-submit{background-color:var(--lb-fg);color:var(--lb-field);\nborder-color:var(--lb-fg)}\n@media (hover:hover){\n.lb-btn-submit:hover:not([disabled]):not([data-lb-state=loading]){\nbackground-color:color-mix(in oklch,var(--lb-fg),var(--color-gray-8) 32%);\nborder-color:color-mix(in oklch,var(--lb-fg),var(--color-gray-8) 32%)}}\n/* The app\'s ai variant \\u2014 what QualifyButton/Requalify wears. Purple ground,\n purple-foreground text, border at 65% transparency of the foreground; hover\n mixes 7% black into the ground. Tokens mirror the product\'s style package. */\n.lb-btn-ai{background-color:var(--color-purple-background);\nborder-color:var(--color-purple-border);color:var(--color-purple-foreground)}\n@media (hover:hover){\n.lb-btn-ai:hover:not([disabled]):not([data-lb-state=loading]){\nbackground-color:color-mix(in oklch,var(--color-purple-background),black 7%)}}\n/* Toggles that act on the same axis belong in one visual unit, so the row reads\n as "taste | status | inspect" rather than five equal buttons. The gap inside\n a group is half the gap between groups \\u2014 the 2x rule, applied horizontally. */\n.lb-group{display:inline-flex;align-items:center;gap:0.375rem;flex-wrap:wrap}\n/* Square icon button. Only for actions whose glyph is unambiguous on its own \\u2014\n thumbs up/down qualify, "Set status" does not. It MUST carry an aria-label\n and a title: with no text the icon is the entire affordance, so an unlabelled\n one is unreadable to a screen reader and to anyone who does not know the\n glyph. Same 2.125rem box as a text button, so it keeps the row\'s baseline. */\n.lb-btn-icon{padding:0;width:2.125rem;justify-content:center;display:inline-flex;\nalign-items:center}\n.lb-btn-icon svg{width:1.05rem;height:1.05rem;flex-shrink:0}\n/* Pressed state. The taste chip carries the durable fact; this is the control\n reflecting it, and it must not rely on colour alone \\u2014 aria-pressed is the\n accessible half and the fill is the visible half. */\n/* A heart that stays hollow does not read as "liked" \\u2014 fill it from the same\n currentColor the stroke uses, so one rule covers both themes. */\n.lb-btn-icon[aria-pressed=true] svg{fill:currentColor}\n.lb-btn-icon[aria-pressed=true]{border-color:var(--color-red-like);\ncolor:var(--color-red-like);\nbackground-color:color-mix(in srgb,var(--color-red-like) 10%,var(--lb-field))}\n.lb-btn-icon[data-taste=disliked][aria-pressed=true]{border-color:var(--lb-muted);\ncolor:var(--lb-muted);\nbackground-color:color-mix(in srgb,var(--lb-muted) 10%,var(--lb-field))}\n/* A glyph-only control has no text to widen its hit area, so extend the target\n past the 34px box without inflating the row. */\n.lb-btn-icon{position:relative}\n.lb-btn-icon::before{content:"";position:absolute;inset:-5px}\n.lb-btn:focus-visible,.lb-select:focus-visible,.lb-input:focus-visible,\n.lb-link:focus-visible{\noutline:2px solid var(--color-blue-foreground);outline-offset:1px;\nborder-radius:var(--lb-radius-sm)}\n/* Forced colours replaces every background and custom outline with a system\n colour, collapsing the state styling above into one flat control. */\n@media(forced-colors:active){\n.lb-btn,.lb-select,.lb-input,.lb-chip{border:1px solid CanvasText}\n.lb-btn:focus-visible,.lb-select:focus-visible,.lb-input:focus-visible,\n.lb-link:focus-visible,.lb-link-out:focus-visible{outline:2px solid Highlight}\n.lb-link-out{opacity:1}}\n/* Each state carries a glyph as well as a hue: success and error were two\n pills with identical labels, indistinguishable to a red-green colour-blind\n reader and identical under forced colours. */\n.lb-btn[data-lb-state=loading]{opacity:.55;cursor:progress}\n.lb-btn[data-lb-state=loading]::after{content:"\\u2026";margin-inline-start:.35rem}\n/* An icon button has no room for a trailing glyph \\u2014 it would push the icon\n off-centre. Its states read through border and fill, which the forced-colors\n block below keeps distinguishable. */\n.lb-btn-icon::after{content:none!important}\n.lb-btn[data-lb-state=success]::after{content:"\\u2713";margin-inline-start:.35rem}\n.lb-btn[data-lb-state=error]::after{content:"\\u2715";margin-inline-start:.35rem}\n.lb-btn[data-lb-state=unavailable]::after{content:"\\u26A0";margin-inline-start:.35rem}\n/* With save-on-change there is no button to reflect the write, so the select\n itself must. Only error was styled before; loading and success were invisible\n on a select, leaving the rep unsure whether the pick had landed. */\n.lb-select[data-lb-state=loading]{opacity:.55;cursor:progress}\n.lb-select[data-lb-state=success]{border-color:var(--color-green-foreground)}\n.lb-msg[data-tone=error]::before{content:"\\u2715 "}\n.lb-msg[data-tone=ok]::before{content:"\\u2713 "}\n.lb-btn[data-lb-state=success]{background-color:var(--color-green-background);\nborder-color:var(--color-green-foreground);color:var(--color-green-foreground)}\n.lb-btn[data-lb-state=error],.lb-select[data-lb-state=error]{\nbackground-color:var(--color-red-background);border-color:var(--color-red-foreground);\ncolor:var(--color-red-foreground)}\n.lb-btn[data-lb-state=unavailable],.lb-btn[disabled]{opacity:.5;cursor:not-allowed}\n.lb-msg{font-size:0.8125rem;line-height:1.45;color:var(--lb-muted)}\n/* Screen-reader-only text: control labels, unit suffixes, "opens in a new tab". */\n.lb-vh{position:absolute;width:1px;height:1px;margin:-1px;padding:0;\noverflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}\n.lb-msg[data-tone=error]{color:var(--color-red-foreground)}\n.lb-msg[data-tone=ok]{color:var(--color-green-foreground)}\n.lb-chip{display:inline-flex;align-items:center;gap:.25rem;white-space:nowrap;\nfont-size:0.75rem;font-weight:600;line-height:1rem;padding:0.125rem 0.5rem;\nborder-radius:var(--lb-radius-sm);corner-shape:squircle;\nbackground-color:var(--lb-chip-bg);color:var(--lb-muted)}\n.lb-chip[data-status=WANTED]{background-color:var(--color-blue-background);color:var(--color-blue-foreground)}\n.lb-chip[data-status=WON]{background-color:var(--color-green-background);color:var(--color-green-foreground)}\n.lb-chip[data-status=LOST]{background-color:var(--color-red-background);color:var(--color-red-foreground)}\n.lb-chip[data-status=UNWANTED]{background-color:var(--lb-chip-bg);color:var(--lb-muted)}\n.lb-chip[data-taste=liked]{background-color:var(--color-cherry-background);color:var(--color-red-like)}\n.lb-chip[data-taste=disliked]{background-color:var(--lb-chip-bg);color:var(--lb-muted)}\n.lb-chips{display:flex;align-items:center;gap:0.5rem;flex-wrap:wrap}\n/* \\u2500\\u2500 Tag rows \\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\n Two kinds, deliberately different so they never read as the same axis.\n FIRMOGRAPHIC (.lb-tags-plain): what the company IS \\u2014 location, size, sector.\n Quiet grey, because it is context the rep skims.\n INTENT (.lb-tags-intent): what the qualifier FOUND \\u2014 a buying signal. Teal,\n matching the product\'s own taste-profile tags, because it is the reason the\n lead is on screen. Both wrap and both sit on the section\'s 8px. */\n.lb-tags-plain,.lb-tags-intent{display:flex;flex-wrap:wrap;gap:0.5rem}\n/* Both tags round at 0.375rem: they are the innermost surface, and a tag whose\n radius drifts from its neighbours reads as a different kind of object. Their\n own padding is small enough that concentric math against the card does not\n apply \\u2014 past a point the layers are separate surfaces, each chosen on its\n own. */\n.lb-tags-plain>*{display:inline-flex;align-items:center;\nbackground-color:var(--lb-surface);border:1px solid var(--lb-border);\ncolor:var(--lb-muted);border-radius:0.375rem;padding:0.125rem 0.375rem;\nfont-size:0.75rem;font-weight:500;line-height:1.5;white-space:nowrap}\n.lb-tags-intent>*{display:inline-flex;align-items:center;\nbackground-color:var(--color-teal-background);border:1px solid var(--color-teal-border);\ncolor:var(--color-teal-foreground);border-radius:0.375rem;padding:0.1875rem 0.4375rem;\nfont-size:0.75rem;line-height:1.4}\n/* The honest empty state: a blank tag row reads as a rendering bug, so say\n what is missing and what fixes it. */\n.lb-tags-empty{font-size:0.78125rem;line-height:1.45;color:var(--lb-muted);\nfont-style:italic}\n/* The chips row is empty until a taste or a status lands. Left in flow it is a\n zero-height element that still consumes the gap above the first section, so\n hide it while it holds nothing \\u2014 set the hidden attribute from the code that\n paints the chips, since it is that code which knows. */\n.lb-chips[hidden]{display:none}\n.lb-chip[hidden]{display:none}\n.lb-table{width:100%;border-collapse:collapse;font-family:var(--lb-font);color:var(--lb-fg)}\n.lb-table th,.lb-table td{text-align:start;padding:0.5rem 0.4rem;\nborder-bottom:1px solid var(--lb-border);vertical-align:middle;font-size:0.8125rem}\n.lb-table th{font-size:0.75rem;font-weight:600;color:var(--lb-muted);\ntext-transform:uppercase;letter-spacing:.04em}\n/* Counts line up only when the digits do; a leaderboard whose numbers jitter\n column-to-column cannot be scanned down. */\n.lb-table td[data-num],.lb-table th[data-num]{text-align:end;\nfont-variant-numeric:tabular-nums}\n/* A sortable header is a control: it must look clickable and say which way it\n is sorting, in text as well as by arrow \\u2014 aria-sort is the accessible half. */\n.lb-table th[aria-sort]{cursor:pointer;user-select:none;color:var(--lb-fg)}\n.lb-table th[aria-sort]:hover{text-decoration:underline}\n.lb-table th[aria-sort=ascending]::after{content:" \\\\2191"}\n.lb-table th[aria-sort=descending]::after{content:" \\\\2193"}\n.lb-table th[aria-sort=none]::after{content:" \\\\2195";opacity:.35}\n/* The row a manager is acting on. */\n.lb-table tbody tr[aria-selected=true]{background-color:var(--lb-chip-bg)}\n.lb-link{color:var(--color-blue-foreground);text-decoration:none}\n.lb-link:hover{text-decoration:underline}\n/* Quiet text link out of the artifact. Button-height so it shares the row\'s\n baseline; understated so it never competes with the actions beside it. The\n arrow is a bare diagonal stroke \\u2014 an escape-hatch marker, not an icon that\n asks to be read. */\n.lb-link-out{display:inline-flex;align-items:center;gap:.3rem;\nfont-size:0.75rem;line-height:1rem;min-height:2.125rem;\ncolor:var(--lb-fg);text-decoration:none;opacity:.65;transition:opacity .15s}\n.lb-link-out:hover{opacity:1;text-decoration:underline}\n.lb-link-out:focus-visible{outline:2px solid var(--color-blue-foreground);outline-offset:1px;\nborder-radius:var(--lb-radius-sm)}\n.lb-link-out svg{width:.85em;height:.85em;flex-shrink:0}\n/* Pushes whatever follows it to the right edge of an .lb-row, so a trailing\n link sits on the SAME baseline as the row\'s buttons instead of on its own\n line below them. */\n/* A spacer only aligns items on its OWN flex line. .lb-row wraps, so once the\n link falls to a second line the spacer stays behind and the link renders\n left-aligned \\u2014 the opposite of what the contract promises. The auto margin\n re-anchors it to the trailing edge of whichever line it lands on, and is a\n no-op while the row is unwrapped. */\n.lb-spacer{flex:1 1 auto;min-width:0}\n.lb-row>.lb-link-out{margin-inline-start:auto}\n.lb-spinner{display:inline-block;width:.7em;height:.7em;border:2px solid var(--lb-border);\nborder-top-color:var(--color-blue-foreground);border-radius:50%;animation:lb-spin .8s linear infinite}\n@keyframes lb-spin{to{transform:rotate(1turn)}}\n/* animation:none left a static ring \\u2014 under reduced motion "sending" and\n "cannot click" looked identical. An opacity pulse is the sanctioned\n substitute. The 150ms colour fade is fine and stays. */\n@media(prefers-reduced-motion:reduce){.lb-spinner{animation:lb-pulse 1.4s ease-in-out infinite}}\n@keyframes lb-pulse{50%{opacity:.35}}\n`,F="lb-styles";var ve="2026-01-26";function Z(e,t){return Object.assign(new Error(e),{name:"LbError",code:t})}function J(){return typeof window<"u"&&window.parent!=null&&window.parent!==window}function X(e,t={parent:window.parent,self:window}){let n=new Map,r=1,o=null,a=c=>t.parent.postMessage({jsonrpc:"2.0",...c},"*");function i(c,s){let d=r++;return new Promise((g,h)=>{n.set(d,{resolve:g,reject:h}),a({id:d,method:c,params:s})})}function l(c){if(c.source!==t.parent)return;let s=c.data;if(!s||typeof s!="object"||s.jsonrpc!=="2.0")return;if(typeof s.method=="string"){if(s.id===void 0)return;s.method==="ping"||s.method==="ui/resource-teardown"?a({id:s.id,result:{}}):a({id:s.id,error:{code:-32601,message:`Method not found: ${s.method}`}});return}let d=n.get(s.id);d&&(n.delete(s.id),s.error?d.reject(Z(String(s.error.message||"The host refused the call"),"host_error")):d.resolve(s.result))}function u(){return o||(o=(async()=>{t.self.addEventListener("message",l);let c=r,s=i("ui/initialize",{appInfo:{name:"Leadbay",version:e},appCapabilities:{},protocolVersion:ve}),d,g=new Promise((h,f)=>{d=setTimeout(()=>{n.delete(c),f(Z("Leadbay is not reachable from this page \\u2014 the host never answered the MCP Apps handshake.","unavailable"))},5e3)});try{await Promise.race([s,g])}finally{d&&clearTimeout(d)}a({method:"ui/notifications/initialized",params:{}}),xe(a),_e(i)})(),o.catch(()=>{o=null})),o}return async(c,s)=>(await u(),i("tools/call",{name:c,arguments:s}))}function xe(e){if(typeof document>"u"||typeof ResizeObserver>"u")return;let t=!1,n=0,r=0,o=()=>{t||(t=!0,requestAnimationFrame(()=>{t=!1;let i=document.documentElement,l=i.style.height;i.style.height="max-content";let u=Math.ceil(i.getBoundingClientRect().height);i.style.height=l;let c=Math.ceil(window.innerWidth);c===n&&u===r||(n=c,r=u,e({method:"ui/notifications/size-changed",params:{width:c,height:u}}))}))};o();let a=new ResizeObserver(o);a.observe(document.documentElement),a.observe(document.body)}function _e(e){typeof document>"u"||document.addEventListener("click",t=>{let n=t.target,r=n&&typeof n.closest=="function"?n.closest("a[href]"):null;if(!r)return;let o=r.href;/^https?:\\/\\//i.test(o)&&(t.preventDefault(),e("ui/open-link",{url:o}).catch(()=>{window.open(o,"_blank","noopener")}))},!0)}var G="0.6.0",C=class extends Error{constructor(n,r={}){super(n);b(this,"code");b(this,"raw");this.name="LbError",this.code=r.code,this.raw=r.raw}},te=null,O=3e4,ne="Leadbay",re=ne;function oe(){let e=globalThis.cowork;if(e&&typeof e.callMcpTool=="function")return(n,r)=>e.callMcpTool(n,r);let t=globalThis.claude;return t&&typeof t.use=="function"?async(n,r)=>{let o=await Se(t.use);if(!o||typeof o.callTool!="function")throw new C("Leadbay is not reachable from this page \\u2014 the artifact must declare the Leadbay connector in its capabilities, and the viewer must have it enabled.",{code:"unavailable"});let a=await o.callTool(re,n,r);return a&&"payload"in a&&a.payload!==void 0?a.payload:a}:J()?(N||(N=X(G)),N):null}var N=null,M=null;function Se(e){return M||(M=Promise.resolve(e("mcp")).catch(()=>null)),M}var ae="leadbay_report_artifact_error",Te=40,j=new Set,U=0,K=!0;function Ee(e){K=e}function wt(){j.clear(),U=0,K=!0,A=null,P="call"}function T(e){if(!K||U>=Te)return;let t=`${e.kind}|${e.surface}|${e.tool??""}|${e.code??""}`;if(j.has(t))return;j.add(t),U++;let n=oe();if(n)try{let r=n(ae,{kind:e.kind,surface:e.surface,kit_version:G,...e.tool?{tool:e.tool}:{},...e.code?{code:e.code}:{}});r&&typeof r.catch=="function"&&r.catch(()=>{})}catch{}}var P="call",A=null;function q(e,t,n){let r=P,o=A;P=e,A=n??null;try{return t()}finally{P=r,A=o}}function Ae(e,t,n){let r=ie(n);T({kind:r==="timeout"?"call_timeout":r==="unavailable"?"bridge_unavailable":"call_failed",surface:e,tool:t,code:r})}function ee(e){if(e&&typeof e=="object"&&"content"in e){let t=e.content;if(Array.isArray(t)&&t[0]&&typeof t[0].text=="string")return t[0].text}return null}function Ce(e,t,n="call"){if(!e||typeof e!="object")return e;let r=e;if(r.isError)throw new C(ee(e)??"tool call failed",{raw:e});if("structuredContent"in r&&r.structuredContent!=null)return r.structuredContent;let o=ee(e);if(o!=null)try{return JSON.parse(o)}catch{return T({kind:"parse_failed",surface:n,tool:t}),o}return e}function V(e){if(e instanceof Error)return e.message;if(e&&typeof e=="object"){let t=e.message;if(typeof t=="string"&&t)return t;try{return JSON.stringify(e)}catch{}}return String(e)}function ie(e){if(e instanceof C)return e.code;if(e&&typeof e=="object"){let t=e.code;if(typeof t=="string"&&t)return t}}function D(e){let t=ie(e);return{message:V(e),unavailable:t==="unavailable",code:t}}function Le(e={}){te=e.call??null,O=e.timeoutMs??3e4,re=e.server??ne,M=null,N=null,B.clear()}function Ie(){if(typeof document>"u"||!document.head)return null;let e=document.getElementById(F);if(e)return e;let t=document.createElement("style");return t.id=F,t.textContent=Y,document.head.appendChild(t),t}async function Re(e,t){if(!O||O<=0)return e;let n,r=new Promise((o,a)=>{n=setTimeout(()=>a(new C(`"${t}" timed out after ${O}ms`,{code:"timeout"})),O)});try{return await Promise.race([e,r])}finally{n&&clearTimeout(n)}}async function p(e,t={}){let n=e===ae,r=P;!n&&A&&A.tool===void 0&&(A.tool=e);let o=te??oe();if(!o)throw n||T({kind:"bridge_unavailable",surface:r,tool:e,code:"unavailable"}),new C(\'Leadbay bridge unavailable \\u2014 no window.cowork, no window.claude.use("mcp") and no MCP Apps host\',{code:"unavailable"});try{return Ce(await Re(Promise.resolve(o(e,t)),e),n?void 0:e,r)}catch(a){throw n||Ae(r,e,a),a}}var I=class{constructor(){b(this,"subs",new Set)}subscribe(t){return this.subs.add(t),t(this),()=>this.subs.delete(t)}emit(){for(let t of this.subs)t(this)}};function Oe(e){return Array.isArray(e)?e.map(t=>t&&typeof t=="object"?t:{value:t,label:String(t)}):[]}var S=class extends I{constructor(n={}){super();b(this,"kind");b(this,"value");b(this,"options",[]);b(this,"loading",!1);b(this,"error",null);b(this,"ready",!1);b(this,"cfg");b(this,"depUnsubs",[]);b(this,"seq",0);this.cfg=n,this.kind=n.kind,this.value=n.value??"";for(let r of n.dependsOn??[]){let o=r.value;this.depUnsubs.push(r.subscribe(()=>{r.value!==o&&(o=r.value,this.cfg.load&&this.load())}))}n.load&&(n.autoLoad??!0)&&this.load()}async load(){if(!this.cfg.load)return;let n=++this.seq;this.loading=!0,this.error=null,this.emit();try{let r={},o=await q("field",()=>this.cfg.load(),r);if(n!==this.seq)return;this.options=this.cfg.options?this.cfg.options(o):Oe(o),this.ready=!0,this.options.length===0&&T({kind:"options_empty",surface:"field",tool:r.tool});let a=this.value==null?"":String(this.value);this.options.length&&(a===""||!this.options.some(i=>String(i.value)===a))&&(this.value=this.options[0].value)}catch(r){if(n!==this.seq)return;this.options=[],this.error=D(r)}finally{n===this.seq&&(this.loading=!1,this.emit())}}setValue(n){this.value=n;let r=this.validate();this.error=r?{message:r,unavailable:!1}:null,this.emit()}validate(){return this.cfg.validate?this.cfg.validate(this.value):null}get valid(){return this.validate()==null}reset(){this.value=this.cfg.value??"",this.error=null,this.emit()}dispose(){for(let n of this.depUnsubs)n();this.depUnsubs=[]}};function Pe(e){if(!e||typeof e!="object")return null;let t=e;if(t.error!==!0)return null;let n=typeof t.message=="string"&&t.message?t.message:"tool call failed",r=typeof t.hint=="string"&&t.hint?` \\u2014 ${t.hint}`:"";return`${n}${r}`}var v=class extends I{constructor(n){super();b(this,"loading",!1);b(this,"error",null);b(this,"lastResult",null);b(this,"cfg");this.cfg=n}async run(){if(this.loading)return;for(let o of this.cfg.fields??[]){let a=o.validate();if(a!=null){this.error={message:a,unavailable:!1},this.emit(),T({kind:"action_blocked",surface:"action",tool:this.cfg.tool});return}}if(this.cfg.confirm){if(typeof globalThis.confirm!="function"){this.error={message:"This action needs confirmation, which this page cannot show.",unavailable:!1},this.emit(),T({kind:"action_blocked",surface:"action",tool:this.cfg.tool});return}if(!globalThis.confirm(this.cfg.confirm))return}this.loading=!0,this.error=null,this.emit();let n;try{let o=typeof this.cfg.args=="function"?this.cfg.args():this.cfg.args??{};n=await q("action",()=>p(this.cfg.tool,o))}catch(o){this.error=D(o),this.loading=!1,this.emit(),this.cfg.onError?.(this.error);return}let r=Pe(n)??this.cfg.checkResult?.(n)??null;if(r!=null){this.error={message:r,unavailable:!1},this.loading=!1,this.emit();let o=n&&typeof n=="object"?n.code:void 0;T({kind:"result_rejected",surface:"action",tool:this.cfg.tool,...typeof o=="string"&&o?{code:o}:{}}),this.cfg.onError?.(this.error);return}return this.lastResult=n,this.loading=!1,this.emit(),this.cfg.onSuccess?.(n),n}reset(){this.error=null,this.lastResult=null,this.emit()}},x=class extends I{constructor(n){super();b(this,"data",null);b(this,"loading",!1);b(this,"refreshing",!1);b(this,"error",null);b(this,"done",!1);b(this,"cfg");b(this,"timer",null);b(this,"seq",0);this.cfg=n,(n.autoLoad??!0)&&this.load()}async load(){this.clearTimer();let n=++this.seq;this.data==null?this.loading=!0:this.refreshing=!0,this.error=null,this.emit();try{let o=await q("resource",()=>this.cfg.load());if(n!==this.seq)return;this.data=o,this.done=this.cfg.until?this.cfg.until(o):!0,this.cfg.pollEvery&&!this.done&&(this.timer=setTimeout(()=>void this.load(),this.cfg.pollEvery))}catch(o){if(n!==this.seq)return;this.error=D(o)}finally{n===this.seq&&(this.loading=!1,this.refreshing=!1,this.emit())}}refresh(){return this.load()}stop(){this.clearTimer()}clearTimer(){this.timer&&(clearTimeout(this.timer),this.timer=null)}},R=class extends I{constructor(n){super();b(this,"items",[]);b(this,"page",0);b(this,"pageSize");b(this,"total",0);b(this,"loading",!1);b(this,"error",null);b(this,"cfg");b(this,"seq",0);this.cfg=n,this.pageSize=n.pageSize??20,(n.autoLoad??!0)&&this.loadPage(0)}async loadPage(n){let r=++this.seq;this.loading=!0,this.error=null,this.emit();try{let o=await q("list",()=>this.cfg.load({page:n,pageSize:this.pageSize}));if(r!==this.seq)return;this.items=o.items??[],this.total=o.total??this.items.length,this.page=n}catch(o){if(r!==this.seq)return;this.error=D(o)}finally{r===this.seq&&(this.loading=!1,this.emit())}}next(){return this.loadPage(this.page+1)}prev(){return this.loadPage(Math.max(0,this.page-1))}get hasMore(){return(this.page+1)*this.pageSize<this.total}};function Ne(e,t){let n=t.error?.unavailable?"unavailable":t.loading?"loading":t.error?"error":"ready";e.setAttribute("data-lb-state",n),t.error?e.setAttribute("data-lb-error",t.error.message):e.removeAttribute("data-lb-error")}function Me(e,t){let n=()=>t.setValue(e.value);e.addEventListener("change",n);let r=t.subscribe(()=>{Ne(e,t),e.disabled=t.loading,e.innerHTML="";for(let o of t.options){let a=document.createElement("option");a.value=String(o.value),a.textContent=o.label,e.appendChild(a)}e.value=t.value==null?"":String(t.value)});return()=>{e.removeEventListener("change",n),r()}}function ze(e,t){let n=e.type==="checkbox",r=e.tagName==="SELECT"?"change":"input",o=()=>t.setValue(n?e.checked:e.value);e.addEventListener(r,o);let a=t.subscribe(()=>{if(n)e.checked=!!t.value;else{let i=t.value==null?"":String(t.value);e.value!==i&&(e.value=i)}e.setAttribute("data-lb-state",t.error?"error":"ready"),t.error?e.setAttribute("data-lb-error",t.error.message):e.removeAttribute("data-lb-error")});return()=>{e.removeEventListener(r,o),a()}}function qe(e,t){let n=a=>{a.preventDefault(),t.run()};e.addEventListener("click",n);let r,o=t.subscribe(()=>{let a=t.error?.unavailable?"unavailable":t.loading?"loading":t.error?"error":t.lastResult!=null?"success":"ready";e.setAttribute("data-lb-state",a),"disabled"in e&&(e.disabled=t.loading),e.setAttribute("aria-busy",String(t.loading)),t.error?e.setAttribute("data-lb-error",t.error.message):e.removeAttribute("data-lb-error"),r&&clearTimeout(r),a==="success"&&(r=setTimeout(()=>{!t.loading&&!t.error&&e.setAttribute("data-lb-state","ready")},1600))});return()=>{e.removeEventListener("click",n),o(),r&&clearTimeout(r)}}var $=["STILL_CHASING","COULD_NOT_REACH_STILL_TRYING","INTEREST_VALIDATED_OR_MEETING_PLANED","NOT_INTERESTED_LOST"],H=[{value:"",label:"Default ranking"},{value:"SCORE:DESC",label:"Score \\u2193"},{value:"SCORE:ASC",label:"Score \\u2191"},{value:"NAME:ASC",label:"Name A\\u2192Z"},{value:"NAME:DESC",label:"Name Z\\u2192A"},{value:"SIZE:DESC",label:"Size \\u2193"},{value:"SIZE:ASC",label:"Size \\u2191"},{value:"SECTOR:ASC",label:"Sector A\\u2192Z"},{value:"STATUS:ASC",label:"Status A\\u2192Z"},{value:"CONTACT_COUNT:DESC",label:"Contacts \\u2193"},{value:"LAST_PROSPECTING_ACTION_AT:DESC",label:"Last action \\u2193"},{value:"LAST_PROSPECTING_ACTION_AT:ASC",label:"Last action \\u2191"},{value:"EPILOGUE_STATUS_SET_AT:DESC",label:"Outcome set \\u2193"},{value:"LIKED:DESC",label:"Liked first"},{value:"DISLIKED:DESC",label:"Disliked first"}];function De(e){let t=String(e??"").trim().toUpperCase(),n=H.some(r=>r.value===t);return new S({kind:"select",value:n?t:"",load:async()=>H.slice()})}var z=[{value:"WANTED",label:"Wanted"},{value:"WON",label:"Won"},{value:"LOST",label:"Lost"},{value:"UNWANTED",label:"Unwanted"}],Fe={value:"",label:"Pick a status"};function le(e){let t=String(e??"").trim().toUpperCase(),n=z.some(r=>r.value===t);return new S({kind:"select",value:n?t:"",validate:r=>String(r??"")===""?"Pick a status":null,load:async()=>n?z.slice():[Fe,...z]})}function se(e){let t=()=>{let n=typeof e.leadIds=="function"?e.leadIds():e.leadIds;return Array.isArray(n)?n:e.leadId?[e.leadId]:[]};return new v({tool:"leadbay_set_lead_status",fields:e.date?[e.status,e.date]:[e.status],confirm:e.confirm,args:()=>({lead_ids:t(),status:e.status.value,...e.date&&e.date.value?{status_date:e.date.value}:{},...e.ask?{_triggered_by:e.ask}:{}}),checkResult:n=>{let r=n?.failed;if(!Array.isArray(r)||r.length===0)return null;let o=t().length,a=r[0]?.message??"write rejected";return r.length===o?`Status not applied: ${a}`:`${r.length} of ${o} leads failed: ${a}`}})}function je(e){return new S({kind:"select",load:()=>p("leadbay_list_campaigns",{_triggered_by:e}),options:t=>(t?.campaigns??[]).map(r=>{let o=r?.campaign??r;return o?.id?{value:o.id,label:o.name??o.ai_generated_name??String(o.id)}:null}).filter(r=>r!=null)})}function ce(e){return new v({tool:"leadbay_report_outreach",fields:e.note?[e.note]:[],args:()=>({lead_id:e.leadId,...e.status?{epilogue_status:e.status.value}:{},note:e.note?e.note.value:"",verification:{source:"user_confirmed",ref:e.ref??"logged from artifact"},_triggered_by:e.ask})})}function Ue(e){return new v({tool:"leadbay_add_note",fields:[e.note],args:()=>({leadId:e.leadId,note:e.note.value})})}function de(e){return new v({tool:"leadbay_like_lead",args:{lead_id:e}})}function ue(e){return new v({tool:"leadbay_dislike_lead",args:{lead_id:e}})}function he(e){let t=e??{},n=t.ai_agent_lead_score;if(typeof n=="number"&&n>0)return"Requalify";let r=t.qualification_summary?.answered;return typeof r=="number"&&r>0?"Requalify":"Qualify"}function ge(e){let t=()=>{let o=typeof e.leadIds=="function"?e.leadIds():e.leadIds;return Array.isArray(o)?o:e.leadId?[e.leadId]:[]},n=0,r=new v({tool:"leadbay_bulk_qualify_leads",confirm:e.confirm,args:()=>{let o=t();return n=o.length,{leadIds:o,wait_for_completion:!1,...e.ask?{_triggered_by:e.ask}:{}}},checkResult:o=>{let a=o??{},i=Array.isArray(a.failed)?a.failed:[],l=n;if(i.length>0){let u=i[0]?.error??"launch rejected";return i.length>=l?`Qualification did not start: ${u}`:`${i.length} of ${l} leads did not start: ${u}`}if(a.quota_exceeded){let u=a.launched_count??0;return u>0?`Quota reached \\u2014 ${u} of ${l} launched, the rest were not started.`:"Quota reached \\u2014 no leads were queued."}return null}});return Object.defineProperty(r,"label",{enumerable:!0,get:()=>(typeof e.scored=="function"?e.scored():e.scored)?"Requalify":"Qualify"}),r}function $e(e,t,n=15e3){return new x({pollEvery:n,load:()=>p("leadbay_qualify_status",{...e?.notification_id?{notification_id:e.notification_id}:{},...e?.lead_ids?.length?{lead_ids:e.lead_ids}:{},...typeof e?.lens_id=="number"?{lens_id:e.lens_id}:{},...t?{_triggered_by:t}:{}}),until:r=>{let o=r??{};return Array.isArray(o.still_running)?o.still_running.length===0:o.status!=null&&o.status!=="running"}})}function He(e,t){return new x({autoLoad:!1,load:()=>p("leadbay_account_history",{leadId:e,_triggered_by:t})})}function Be(e,t){return new x({autoLoad:!1,load:()=>p("leadbay_research_lead_by_id",{leadId:e,_triggered_by:t})})}var B=new Map;function be(e={}){let t=e.lang??"",n=B.get(t);return n||(n=(async()=>{try{let r=await p("leadbay_list_sectors",{...e.lang?{lang:e.lang}:{}}),o=Array.isArray(r)?r:Array.isArray(r?.sectors)?r.sectors:[],a={};for(let i of o){let l=i??{};l.id!=null&&typeof l.label=="string"&&l.label&&(a[String(l.id)]=l.label)}return a}catch{return{}}})(),B.set(t,n)),n}function fe(e,t={}){let n=e??{},r=i=>typeof i=="string"&&i.trim()&&i.trim()!=="null"?i.trim():void 0,o=n.sector_id!=null?t[String(n.sector_id)]:void 0,a=Array.isArray(n.phone_numbers)?n.phone_numbers:[];return{summary:r(n.short_description)??r(n.description)??o,sector:o,phone:a.map(r).find(Boolean),email:r(n.email)}}function Ge(e){let t=()=>{let a=e.kind;return typeof a=="string"?a:typeof a=="function"?a():String(a?.value??"followups")||"followups"},n=()=>{let a=e.campaignId,i=typeof a=="string"?a:a?.value;return i?String(i):void 0},r=()=>typeof e.order=="string"?e.order:String(e.order?.value??""),o=new R({pageSize:e.pageSize??20,load:async({page:a,pageSize:i})=>{let l=t(),u;if(l==="campaign"){let d=n();if(!d)return{items:[],total:0};u=await p("leadbay_campaign_call_sheet",{campaign_id:d,page:a,count:i,_triggered_by:e.ask})}else l==="discover"?u=await p("leadbay_pull_leads",{page:a,count:i,...e.lensId?{lensId:e.lensId}:{},...r()?{order:r()}:{},_triggered_by:e.ask}):u=await p("leadbay_pull_followups",{page:a,count:i,...e.city?{city:e.city}:{},...r()?{order:r()}:{},_triggered_by:e.ask});let c=u??{},s=c.leads??c.items??[];return{items:s,total:c.pagination?.total??c.total_leads??s.length}}});return Object.assign(o,{leadUrl:a=>{let i=a??{},l=encodeURIComponent(String(i.id??"")),u=t();if(u==="campaign"){let s=n();if(s)return`https://leadbay.app/app/campaign?campaign=${encodeURIComponent(s)}&lead=${l}`}return`https://leadbay.app/app/${u==="discover"||i.in_monitor===!1?"discover":"monitor"}?lead=${l}`}})}function Ke(e){let t=e?.location?.pos;if(!Array.isArray(t)||t.length<2)return null;let[n,r]=t;return typeof n!="number"||typeof r!="number"||!Number.isFinite(n)||!Number.isFinite(r)||n===0&&r===0||n<-90||n>90||r<-180||r>180?null:[n,r]}function W(e,t){let n=Math.PI/180,r=(t[0]-e[0])*n,o=(t[1]-e[1])*n,a=Math.sin(r/2)**2+Math.cos(e[0]*n)*Math.cos(t[0]*n)*Math.sin(o/2)**2;return 6371*2*Math.atan2(Math.sqrt(a),Math.sqrt(1-a))}var me=11;function Ve(e){let t=e.filter(a=>Array.isArray(a?.pos)&&a.pos.length===2);if(t.length===0)return null;let n=t.slice(0,me),r=n.map(a=>a.pos.join(",")),o=new URLSearchParams({api:"1",travelmode:"driving"});return r.length===1?o.set("destination",r[0]):(o.set("origin",r[0]),o.set("destination",r[r.length-1]),r.length>2&&o.set("waypoints",r.slice(1,-1).join("|"))),{url:`https://www.google.com/maps/dir/?${o.toString()}`,used:n.length,truncated:t.length-n.length}}function We(e){let t=0;for(let n=1;n<e.length;n++)t+=W(e[n-1].pos,e[n].pos);return t}function Qe(e,t){let n=e.slice();if(n.length<=2)return n;let r=[],o=t??n[0].pos;for(;n.length;){let a=0,i=1/0;for(let u=0;u<n.length;u++){let c=W(o,n[u].pos);c<i&&(i=c,a=u)}let[l]=n.splice(a,1);r.push(l),o=l.pos}return r}function Ye(e){let t=le(e.currentStatus),n=new S({kind:"select",value:$[0],load:async()=>$.map(i=>({value:i,label:pe[i]??i}))}),r=new S({validate:i=>String(i??"").trim()?null:"Add a note before logging"}),o=new x({autoLoad:!1,load:async()=>{let i=await p("leadbay_research_lead_by_id",{leadId:e.leadId,_triggered_by:e.ask}),l=Array.isArray(i?.contacts?.reachable)?i.contacts.reachable:[],u=Array.isArray(i?.contacts?.candidates)?i.contacts.candidates:[],c=new Set,s=[];for(let g of[...l,...u]){let h=g?.id??g?.contact_id;h&&c.has(h)||(h&&c.add(h),s.push(g))}let d=i?.engagement?.recommended_contact?.contact_id;return s.map(g=>Je(g,d))}}),a=new x({load:async()=>fe(e.lead,await be())});return{leadId:e.leadId,contacts:o,context:a,status:t,saveStatus:se({leadId:e.leadId,status:t,ask:e.ask}),epilogue:n,note:r,logOutreach:ce({leadId:e.leadId,ask:e.ask,status:n,note:r}),like:de(e.leadId),dislike:ue(e.leadId),qualify:ge({leadId:e.leadId,ask:e.ask,scored:he(e.lead)==="Requalify"})}}function Ze(e){let t=r=>typeof r=="function"?r():r!==!1,n=new S({value:"ok",validate:()=>t(e.email)||t(e.phone)?null:"Pick email, phone, or both."});return new v({tool:"leadbay_enrich_contacts",fields:[n],confirm:e.confirm===""?void 0:e.confirm??"Reveal this contact? It uses enrichment quota.",args:()=>({leadId:e.leadId,contactId:e.contactId,email:t(e.email),phone:t(e.phone),...e.ask?{_triggered_by:e.ask}:{}}),checkResult:r=>{let o=r??{};return o.error?o.message??"Enrichment failed":null},onSuccess:()=>e.onDone?.()})}var pe={STILL_CHASING:"Still chasing",COULD_NOT_REACH_STILL_TRYING:"Could not reach \\u2014 still trying",INTEREST_VALIDATED_OR_MEETING_PLANED:"Interested / meeting planned",NOT_INTERESTED_LOST:"Not interested \\u2014 lost"};function Je(e,t){let n=e??{},r=i=>typeof i=="string"&&i.trim()&&i!=="null"?i.trim():void 0,o=[r(n.first_name),r(n.last_name)].filter(Boolean).join(" ")||r(n.name)||"Unnamed contact",a=r(n.id)??r(n.contact_id);return{contactId:a,name:o,title:r(n.job_title)??r(n.title),email:r(n.email),phone:r(n.phone)??r(n.phone_number)??r((n.phone_numbers??[])[0]),linkedin:r(n.linkedin_page),recommended:n.recommended===!0||t!=null&&a===t,enriched:n.enrichment_done===!0}}function Xe(e){let t=null;return new x({...e.autoLoad!==void 0?{autoLoad:e.autoLoad}:{},pollEvery:e.pollEvery??4e3,until:n=>!!n?.all_done,load:async()=>{if(!t){let n=await p("leadbay_enrich_titles",{...e.leadIds?{leadIds:e.leadIds}:{},titles:e.titles,...e.email!==void 0?{email:e.email}:{},...e.phone!==void 0?{phone:e.phone}:{},...e.confirm!==void 0?{confirm:e.confirm}:{},_triggered_by:e.ask}),r=Array.isArray(n?.lead_ids)?n.lead_ids:[],o=n?.notification_id??null;if(t=o||r.length>0?{notification_id:o,lead_ids:r}:null,!t)return{...n,all_done:!0,no_job:!0}}return p("leadbay_bulk_enrich_status",{...t.notification_id?{notification_id:t.notification_id}:{},...t.lead_ids.length>0?{lead_ids:t.lead_ids}:{},...e.titles?{titles:e.titles}:{},...e.email!==void 0?{email:e.email}:{},...e.phone!==void 0?{phone:e.phone}:{},_triggered_by:e.ask})}})}function et(e){let t=()=>typeof e.order=="string"?e.order:String(e.order?.value??"");return new R({pageSize:e.pageSize??20,load:async({page:n,pageSize:r})=>{let o=await p("leadbay_pull_leads",{page:n,count:r,...e.lensId?{lensId:e.lensId}:{},...t()?{order:t()}:{},_triggered_by:e.ask}),a=o.leads??[];return{items:a,total:o.pagination?.total??a.length}}})}function tt(e){let t=e.source??"followups",n=()=>typeof e.order=="string"?e.order:String(e.order?.value??"");return new R({pageSize:e.pageSize??20,load:async({page:r,pageSize:o})=>{let i=t==="campaign"?await p("leadbay_campaign_call_sheet",{campaign_id:e.campaignId,page:r,count:o,_triggered_by:e.ask}):await p("leadbay_pull_followups",{page:r,count:o,...e.city?{city:e.city}:{},...n()?{order:n()}:{},_triggered_by:e.ask}),l=i.leads??i.items??[];return{items:l,total:i.total_leads??i.pagination?.total??l.length}}})}async function nt(e){let t=await p("leadbay_pull_followups",{count:e.sample??200,filtered:!1,...e.personal===void 0?{}:{personal:e.personal},_triggered_by:e.ask}),n=new Map;for(let o of t.leads??[]){let a=o?.sector_id;if(a==null||a==="")continue;let i=String(a);n.set(i,(n.get(i)??0)+1)}let r=e.sectors??{};return[...n.entries()].map(([o,a])=>{let i=r[o];return{id:o,label:i??`Sector ${o}`,sampled:a,resolved:i!=null}}).sort((o,a)=>a.sampled-o.sampled||o.id.localeCompare(a.id))}async function Q(e){let t=await p("leadbay_pull_followups",{count:1,set_filter:{criteria:e.criteria},...e.city?{city:e.city}:{},...e.cityId?{city_id:e.cityId}:{},...e.personal===void 0?{}:{personal:e.personal},_triggered_by:e.ask}),n=t.active_filters?.criteria??[],r=d=>typeof d?.type=="string"?d.type:null,o=new Set;for(let d of e.criteria){let g=r(d);g&&o.add(g)}(e.city||e.cityId)&&o.add("location_ids");let a=new Set(n.map(r).filter(d=>d!=null)),i=[...o].every(d=>a.has(d)),l=[...a].every(d=>o.has(d)),u=new Set(["location_ids"]),c=(d,g)=>d.filter(h=>r(h)===g).map(h=>JSON.stringify(Object.keys(h).filter(f=>f!=="type").sort().map(f=>[f,h[f]]))).sort().join("|"),s=[...o].every(d=>u.has(d)||c(e.criteria,d)===c(n,d));return{total:k(t.pagination?.total),applied:n,trusted:i&&l&&s}}async function rt(e){let t=[];return e.sectorIds?.length&&t.push({type:"sector_ids",sectors:e.sectorIds,is_excluded:!1}),Q({criteria:t,personal:e.personal,ask:e.ask,city:e.city,cityId:e.cityId})}async function ot(e){let t=[],n=e.buckets.length;for(let r of e.buckets){let o;try{let a=await Q({criteria:r.criterion?[r.criterion]:[],personal:e.personal,ask:e.ask});o={...r,total:a.total,trusted:a.trusted}}catch(a){o={...r,total:0,trusted:!1,error:V(a)}}t.push(o),e.onProgress?.(t.length,n,o)}return t}async function at(e){try{let t=await Q({criteria:[],personal:e.personal,ask:e.ask});return{id:"__all__",label:"Whole book",total:t.total,trusted:t.trusted}}catch(t){return{id:"__all__",label:"Whole book",total:0,trusted:!1,error:V(t)}}}async function it(e){let t=await p("leadbay_pull_followups",{count:e.sample??200,filtered:!1,...e.personal===void 0?{}:{personal:e.personal},_triggered_by:e.ask}),n=new Map;for(let a of t.leads??[]){let i=a?.[e.field];if(i==null||i===""||i==="null")continue;let l=String(i);n.set(l,(n.get(l)??0)+1)}let r=e.labels??{},o=[...n.entries()].map(([a,i])=>({id:a,label:r[a]??`${e.field} ${a}`,sampled:i,...e.criterion?{criterion:e.criterion(a)}:{}})).sort((a,i)=>i.sampled-a.sampled||a.id.localeCompare(i.id));return e.limit!=null?o.slice(0,e.limit):o}function ye(e){let t=e??{},n=l=>typeof l=="string"&&l&&l!=="null"?l:null,r=Array.isArray(t.phone_numbers)?t.phone_numbers:[],o=t.has_phone===!0||r.some(l=>n(l)!=null),a=n(t.email)!=null;return o||a?"reachable":k(t.contacts_count)+k(t.org_contacts_count)>0?"contacts_only":"empty"}async function lt(e){let t=e.sample??200,n=await p("leadbay_pull_followups",{count:t,filtered:!1,...e.personal===void 0?{}:{personal:e.personal},_triggered_by:e.ask}),r=Array.isArray(n.leads)?n.leads:[],o={reachable:0,contacts_only:0,empty:0};for(let i of r)o[ye(i)]++;let a=[["reachable","Callable now"],["contacts_only","Contacts, no channel"],["empty","No contacts"]];return{sampled:r.length,bookTotal:k(n.pagination?.total),rows:a.map(([i,l])=>({id:i,label:l,total:o[i],trusted:!0,sampled:o[i]}))}}function st(e){return new x({load:()=>p("leadbay_team_activity",{weeks:e.weeks??4,_triggered_by:e.ask})})}var ct="http://www.w3.org/2000/svg",E=(e,t)=>{let n=document.createElementNS(ct,e);for(let[r,o]of Object.entries(t))n.setAttribute(r,String(o));return n};function k(e){return typeof e=="number"&&isFinite(e)?e:0}function dt(e,t={}){let n=Array.isArray(e)?e:[];if(n.length===0){let m=document.createElement("div");m.className="lb-empty";let w=document.createElement("div");if(w.className="lb-empty-title",w.textContent=t.emptyTitle??"Nothing in this window",m.appendChild(w),t.emptyHint){let L=document.createElement("div");L.className="lb-empty-hint",L.textContent=t.emptyHint,m.appendChild(L)}return m}let r=t.width??640,o=t.height??160,a=40,i=8,l=12,u=26,c=r-a-i,s=o-l-u,d=Math.max(1,...n.map(m=>k(m.count))),g=m=>n.length===1?a+c/2:a+m/(n.length-1)*c,h=m=>l+s-k(m)/d*s,f=E("svg",{class:"lb-chart",viewBox:`0 0 ${r} ${o}`,preserveAspectRatio:"none",role:"img","aria-label":t.label??`Trend across ${n.length} points, peak ${d}`});for(let m of[0,d]){f.appendChild(E("line",{class:"lb-chart-grid",x1:a,x2:r-i,y1:h(m),y2:h(m)}));let w=E("text",{x:a-6,y:h(m)+4,"text-anchor":"end"});w.textContent=String(m),f.appendChild(w)}let y=n.map((m,w)=>`${g(w)},${h(m.count)}`);f.appendChild(E("path",{class:"lb-chart-area",d:`M${g(0)},${h(0)} L${y.join(" L")} L${g(n.length-1)},${h(0)} Z`})),f.appendChild(E("path",{class:"lb-chart-line",d:`M${y.join(" L")}`})),n.forEach((m,w)=>{f.appendChild(E("circle",{class:"lb-chart-dot",cx:g(w),cy:h(m.count),r:3}))});let _=n.length===1?[[0,"middle"]]:[[0,"start"],[n.length-1,"end"]];for(let[m,w]of _){let L=E("text",{x:g(m),y:o-8,"text-anchor":w});L.textContent=String(n[m].date??"").slice(0,10),f.appendChild(L)}return f}function ut(e){let t=document.createElement("div");t.className="lb-tiles";for(let n of e){let r=document.createElement("div");r.className="lb-tile";let o=document.createElement("span");o.className="lb-tile-label",o.textContent=n.label;let a=document.createElement("span");a.className="lb-tile-value",a.textContent=String(n.value),r.append(o,a),t.appendChild(r)}return t}function ht(e){let{rows:t,columns:n}=e;if(!t||t.length===0){let u=document.createElement("div");u.className="lb-empty";let c=document.createElement("div");if(c.className="lb-empty-title",c.textContent=e.emptyTitle??"Nothing to show",u.appendChild(c),e.emptyHint){let s=document.createElement("div");s.className="lb-empty-hint",s.textContent=e.emptyHint,u.appendChild(s)}return u}let r=e.sortKey??n[0].key,o=e.sortDir??"descending",a=document.createElement("table");a.className="lb-table";let i=()=>{a.textContent="";let u=document.createElement("thead"),c=document.createElement("tr");for(let g of n){let h=document.createElement("th");h.textContent=g.label,g.num&&h.setAttribute("data-num",""),h.setAttribute("aria-sort",g.key===r?o:"none"),h.setAttribute("tabindex","0"),h.setAttribute("role","button");let f=()=>{r===g.key?o=o==="ascending"?"descending":"ascending":(r=g.key,o=g.num?"descending":"ascending"),i(),e.onSort?.(r,o)};h.addEventListener("click",f),h.addEventListener("keydown",y=>{(y.key==="Enter"||y.key===" ")&&(y.preventDefault(),f())}),c.appendChild(h)}u.appendChild(c),a.appendChild(u);let s=t.slice().sort((g,h)=>{let f=g[r],y=h[r];if(typeof f=="string"||typeof y=="string"){let _=String(f??"").localeCompare(String(y??""));return o==="ascending"?_:-_}return o==="ascending"?k(f)-k(y):k(y)-k(f)}),d=document.createElement("tbody");for(let g of s){let h=document.createElement("tr");h.setAttribute("aria-selected","false");for(let f of n){let y=document.createElement("td");f.num&&y.setAttribute("data-num","");let _=f.cell?.(g);_==null?y.textContent=f.num?String(k(g[f.key])):String(g[f.key]??"\\u2014"):typeof _=="string"?y.textContent=_:y.appendChild(_),h.appendChild(y)}d.appendChild(h)}a.appendChild(d)};i();let l=document.createElement("div");return l.style.overflowX="auto",l.appendChild(a),l}var gt={VERSION:G,configure:Le,styles:Ie,call:p,report:T,setTelemetry:Ee,field:e=>new S(e),action:e=>new v(e),resource:e=>new x(e),list:e=>new R(e),bindSelect:Me,bindValue:ze,bindAction:qe,sparkline:dt,tiles:ut,leaderboard:ht,campaigns:je,segmentCount:rt,portfolioSectors:nt,coverage:ot,coverageBuckets:it,coverageTotal:at,reachCoverage:lt,leadReach:ye,outreach:ce,note:Ue,like:de,dislike:ue,qualify:ge,qualifyLabel:he,qualifyStatus:$e,leadStatus:le,setStatus:se,relanceRow:Ye,enrichContact:Ze,sectorLabels:be,leadContext:fe,leadPos:Ke,distanceKm:W,routeUrl:Ve,routeDistanceKm:We,orderByProximity:Qe,GOOGLE_MAPS_STOP_LIMIT:me,EPILOGUE_LABELS:pe,sortOrder:De,leadHistory:He,leadProfile:Be,enrichment:Xe,callList:tt,leadList:et,leadSource:Ge,teamActivity:st,EPILOGUE_STATUSES:$,LEAD_STATUSES:z,SORT_ORDERS:H};typeof globalThis<"u"&&(globalThis.LeadbayArtifacts=gt);})();';
|
|
27489
|
-
ARTIFACT_USAGE_GUIDE = '# Leadbay Artifact Kit \u2014 headless domain components\n\nYou are building a single-file HTML **artifact** the user runs inside cowork. This\nkit gives you **headless view-models** that own a control\'s whole data lifecycle \u2014\nload/populate from a Leadbay call, hold value/state, poll, validate, and\nencapsulate the API call + business rules. **You own 100% of markup/layout/style.**\nThe library renders nothing. Inline the runtime once as a `<script>`; it exposes\none global `window.LeadbayArtifacts` (call it `lb`). Vanilla, no React, no build.\n\nPass every tool you use as the artifact\'s `mcp_tools` so the host permits it.\n\n## Two layers\n\n**Primitives** (generic):\n- `lb.field({ load, options, value, validate, dependsOn })` \u2014 a value + optionally\n API-populated options. `.value/.setValue/.options/.loading/.error/.valid/.subscribe`.\n- `lb.action({ tool, args, fields, confirm, onSuccess, onError })` \u2014 a write/submit.\n `.run()/.loading/.error/.lastResult/.subscribe`.\n- `lb.resource({ load, pollEvery?, until?, autoLoad? })` \u2014 one read that may change:\n load-on-click or poll-until-`until`. `.data/.loading/.refreshing/.error/.done/.load()/.refresh()/.stop()/.subscribe`.\n- `lb.list({ load, pageSize })` \u2014 paginated rows. `.items/.page/.total/.loading/.loadPage(n)/.next()/.prev()/.hasMore/.subscribe`.\n\n`.error` is `{ message, unavailable } | null`. `subscribe(cb)` fires immediately\nthen on every change \u2014 render your own DOM from it.\n\n**Domain components** (pre-wired \u2014 bake in the tool name, arg shape, and footguns):\n\n| Call | Returns | For |\n|---|---|---|\n| `lb.campaigns(ask)` | field | a campaign `<select>`, options from `leadbay_list_campaigns` |\n| `lb.segmentCount({sectorIds, city, ask})` | `Promise<{total, applied, trusted}>` | how many Monitor leads match one sector/location \u2014 `count: 1` + `pagination.total`, so a segment costs one cheap call |\n| `lb.portfolioSectors({sample, sectors, ask})` | `Promise<PortfolioSector[]>` | which sectors the user ACTUALLY holds \u2014 samples one page of followups, tallies `sector_id`, resolves names against an embedded taxonomy |\n| `lb.coverage({buckets, ask, onProgress?})` | `Promise<CoverageRow[]>` | sweep a WHOLE dimension (sector, size, recency, liked, custom field) \u2014 sequential, complete criteria per call, `trusted` per bucket |\n| `lb.coverageBuckets({field, labels?, criterion?, limit?, ask})` | `Promise<CoverageBucket[]>` | derive a dimension\'s values from the book by tallying a lead field \u2014 never hardcode the list |\n| `lb.coverageTotal({ask, personal?})` | `Promise<CoverageRow>` | the unfiltered whole-book denominator |\n| `lb.reachCoverage({sample?, personal?, ask})` | `Promise<ReachCoverage>` | callable / contacts-only / empty \u2014 the segment that says what to ENRICH. Sampled (not a filter), so rows are an estimate against `bookTotal` |\n| `lb.leadReach(lead)` | `"reachable"` \\| `"contacts_only"` \\| `"empty"` | one lead\'s reachability \u2014 `contacts_count > 0` is NOT a channel |\n| `lb.outreach({leadId, ask, status?, note?})` | action | log a call \u2192 `report_outreach` (verification + `_triggered_by` baked in). **NOT from a page\'s button** \u2014 it waits 60s on a confirmation prompt a page cannot show; see *Writing from a page* below |\n| `lb.note({leadId, note})` | action | add a note \u2192 `add_note` |\n| `lb.like(leadId)` / `lb.dislike(leadId)` | action | taste signal |\n| `lb.qualify({leadId or leadIds, ask, scored?})` | action | the MANDATORY Qualify/Requalify button \u2192 `bulk_qualify_leads` (camelCase `leadIds`, queue-not-wait, `failed[]` + quota checked) |\n| `lb.qualifyLabel(lead)` | `"Qualify"` \\| `"Requalify"` | which word the button takes, from the lead\'s own score |\n| `lb.qualifyStatus(launch, ask?)` | resource (polling) | watches a launch to its verdict \u2192 `leadbay_qualify_status` |\n| `lb.relanceRow({leadId, ask, currentStatus?})` | row bundle | ONE follow-up table row: lazy `contacts` (with email/phone), `status` + `saveStatus`, `epilogue` + `note` + `logOutreach` |\n| `lb.enrichContact({leadId, contactId, email?, phone?, ask?, onDone?})` | action | buy ONE contact\'s email / phone / both \u2192 `enrich_contacts`. Confirms the spend; the channel may land on a DIFFERENT contact, so `onDone` re-reads |\n| `lb.sectorLabels()` | `Promise<{id: label}>` | the sector taxonomy, fetched ONCE per page and cached \u2014 so no artifact inlines ~1,091 rows or prints a raw id |\n| `lb.leadContext(lead, labels)` | `LeadContext` | one lead\'s company line: `summary` (short_description \u2192 description \u2192 sector), `sector`, and the COMPANY `phone` / `email` |\n| `lb.EPILOGUE_LABELS` | `Record<string,string>` | the four epilogue values in the rep\'s words, for the select |\n| `lb.leadStatus(current?)` | field | a status `<select>` (Wanted/Won/Lost/Unwanted) |\n| `lb.setStatus({leadId or leadIds, status, date?, ask})` | action | write the org CRM status \u2192 `set_lead_status` |\n| `lb.leadHistory(leadId, ask)` | resource (lazy) | notes + activities + engagement \u2192 `account_history` |\n| `lb.leadProfile(leadId, ask)` | resource (lazy) | full lead profile \u2192 `research_lead_by_id` |\n| `lb.sortOrder(current?)` | field | a sort `<select>` mirroring the app\'s TableSort |\n| `lb.leadList({lensId?, order?, ask})` | list | a sortable Discover batch \u2192 `pull_leads` |\n| `lb.callList({source:\'followups\'\\|\'campaign\', campaignId?, city?, ask})` | list | a cold-call list (Monitor or a campaign) |\n| `lb.leadSource({kind, campaignId?, lensId?, order?, ask})` | list + `.leadUrl(lead)` | ONE list over any source \u2014 Monitor / Discover lens / campaign \u2014 with the per-source deep link and the campaign\'s no-sort rule built in |\n| `lb.leadPos(lead)` | `[lat,lng]` \\| `null` | a lead\'s coordinates, rejecting the `0,0` sentinel and out-of-range values |\n| `lb.distanceKm(a, b)` | number | great-circle km \u2014 never use flat geometry, it mis-orders east-west legs |\n| `lb.orderByProximity(stops, start?)` | stops | nearest-neighbour ordering, so the default route is not the API\'s arbitrary one |\n| `lb.routeUrl(stops)` | `{url, used, truncated}` \\| `null` | a Google Maps driving link; `truncated` counts the stops past its 11-stop cap |\n| `lb.routeDistanceKm(stops)` | number | total straight-line km in driving order \u2014 label it "as the crow flies" |\n| `lb.enrichment({leadIds, titles, ask, pollEvery?})` | resource (polling) | launch + watch contact enrichment |\n| `lb.teamActivity({weeks, ask})` | resource | manager leaderboard + activity trend \u2192 `leadbay_team_activity` |\n\n`lb.EPILOGUE_STATUSES` = the 4 disposition values\n(`STILL_CHASING`, `COULD_NOT_REACH_STILL_TRYING`, `INTEREST_VALIDATED_OR_MEETING_PLANED`, `NOT_INTERESTED_LOST`).\n`lb.LEAD_STATUSES` = the 4 org CRM statuses as `{value,label}` (`WANTED`, `WON`, `LOST`, `UNWANTED`).\n`lb.SORT_ORDERS` = the sort options as `{value,label}`; values are the backend `FIELD:ASC|DESC` enum.\n\n**Sorting is a SERVER concern.** `lb.leadList` and `lb.callList` take an `order`\n(a `lb.sortOrder()` field or a literal) and send it upstream; the backend sorts\nthe whole lens / Monitor and returns the requested page of that. Never re-sort\nrows in the browser \u2014 you would be reordering one page of a larger set, showing\nleads that do not belong at that position. The empty value means "no order\nparam", i.e. the tab\'s own ranking, which is the right default. Changing the\nsort should reset to page 0. Campaign call sheets cannot sort:\n`leadbay_campaign_call_sheet` has no `order` param, and `lb.callList` drops it\nfor that source rather than sending something the tool would reject.\n\n**Two different systems.** Epilogue = how one outreach attempt went (drives\nfollow-up ranking). Lead status = the commercial outcome, org-wide \u2014 the same\nfield the website\'s status selector writes. A won deal is a LEAD STATUS;\n"she didn\'t pick up" is an EPILOGUE. Setting one never sets the other, so when\nthe user reports both in one breath, fire both actions.\n\n### Writing from a page: a note, and the prospecting actions\n\nEvery board that lets a rep record what happened \u2014 call sheet, lead desk,\ntriage card, route planner \u2014 writes the way the web app does, through two\ncalls, and never through `lb.outreach`:\n\n```js\n// The note: the web app\'s note field.\nlb.bindAction(els.log, lb.note({ leadId: lead.id, note })); // note = an lb.field gated on non-empty\n\n// The four prospecting actions: toggles over TODAY\'s list, as in the web app.\nconst today = (lead) => new Set((lead.epilogue_today_statuses ?? []).map((e) => e.type.replace(/^EPILOGUE_/, "")));\nasync function toggle(lead, value) { // value = one of lb.EPILOGUE_STATUSES\n const selected = !today(lead).has(value);\n await lb.call("leadbay_set_prospecting_action", { lead_id: lead.id, action: value, selected, _triggered_by: ASK });\n}\n```\n\n- **Why not `lb.outreach`.** It goes to `report_outreach`, which asks a human\n to type a confirmation for every `user_confirmed` call. A page has nowhere to\n show that prompt: the button waited 60 seconds, the write landed anyway, and\n the page said Leadbay "took too long". Reps retried and logged one visit\n twice. The prompt cannot be skipped for pages \u2014 the server cannot tell a\n page from an agent that claims to be one \u2014 so a page takes the path that\n never asks. `lb.outreach` stays the AGENT\'s tool for an outreach the user\n tells it about.\n- **The actions are toggles, several on at once.** The web app\'s Prospection\n cell is a multi-select over `epilogue_today_statuses`; each tap turns one on\n or off. Read "selected" from that list, **never from `epilogue_status`**:\n unticking removes the type from today\'s list and leaves `epilogue_status`\n where it was, so a board that pre-selects from it brings a removed action\n back. `epilogue_status` is only the last value ever set \u2014 show it as a\n "Last: Still chasing \xB7 24 Sep" line when nothing is on today. The field is\n absent on a lead nobody has worked: an empty set, not an error.\n- **Buttons, in the web app\'s colours.** Four `role="checkbox"` buttons with\n `aria-checked` (a select costs a rep two taps): Still chasing blue, Meeting\n planned green, Could not reach yellow, Not interested red \u2014 the\n `--color-<hue>-background` / `-foreground` pairs, all four in the skin. The\n foreground goes on a dot and the selected border, never on the label:\n yellow\'s is too light to read as text, and the web app uses it for icons.\n- **One control per axis.** The toggles own the prospecting action; the note\n form owns the note and offers no action of its own. Two controls writing one\n field race each other, and the later write silently wins.\n\n**Rendering helpers** \u2014 the only three things the library draws, and only\nbecause hand-rolling them goes wrong the same way every time: an SVG whose\npoints escape the viewBox, a series that draws empty axes when it is empty, a\nleaderboard whose digits do not line up. Each returns a DETACHED element you\nplace; none injects itself.\n\n| Call | Returns | For |\n|---|---|---|\n| `lb.sparkline(points, {label, emptyTitle, emptyHint})` | `<svg class="lb-chart">` or an `lb-empty` block | a trend from `[{date, count}]`, themed so it reads in light and dark |\n| `lb.tiles([{label, value}])` | `<div class="lb-tiles">` | headline figures \u2014 only the few that ARE the point |\n| `lb.leaderboard({rows, columns, sortKey, sortDir, cell})` | a scroll-wrapped `lb-table` | a sortable table; `aria-sort` + keyboard headers, `num` columns tabular and end-aligned |\n\n`sparkline` returns the empty block INSTEAD of a chart when the series is\nempty \u2014 an empty window is a real answer, and empty axes read as broken.\n`leaderboard` does the same for no rows. Sorting there is client-side by\ndesign: a roll-up arrives whole, unlike a lead list the backend pages.\n\n**Binding sugar** (optional; binds a view-model to YOUR native element, no style):\n`lb.bindSelect(selectEl, field)` (populates options + value), `lb.bindValue(inputEl, field)`,\n`lb.bindAction(buttonEl, action)`. They set `data-lb-state`\n(`ready|loading|error|success|unavailable`) + `data-lb-error` on your element as\nstyling hooks. For lists/resources, use `.subscribe()` and render yourself.\n\n`ask` is the user\'s request this artifact serves \u2014 it becomes `_triggered_by`.\n\n## The skin (optional) \u2014 `lb.styles()`\n\nCall it once and you get a small `lb-*` stylesheet, so every artifact you build\nshares one visual language instead of re-inventing padding and colours. It is\n**opt-in**: skip it and you get exactly the unstyled HTML you wrote. It injects\nno markup and never touches your `class` attributes.\n\n```js\nlb.styles(); // idempotent \u2014 safe to call per row\n```\n\n| Class | For |\n|---|---|\n| `lb-card` / `lb-card-head` / `lb-title` / `lb-sub` | a lead card + its header |\n| `lb-sections` / `lb-section` / `lb-sec-title` | the card\'s section stack (16px between, 8px within) and a section\'s uppercase title |\n| `lb-card-top` / `lb-lead-title` / `lb-card-foot` | header row (leading control \xB7 title \xB7 trailing controls), the bold underlined company name, and the footer\'s leading-action/spacer/trailing-link row |\n| `lb-tags-plain` / `lb-tags-intent` / `lb-tags-empty` | firmographic tags (grey: what the company IS) and intent tags (teal: what the qualifier FOUND), plus the honest empty state for either |\n| `lb-toolbar` / `lb-field` / `lb-field-label` / `lb-field-inline` | the bar above a deck: three groups (tally \xB7 narrow \xB7 act), and a labelled control whose caption stacks above it \u2014 `lb-field-inline` keeps a checkbox beside its words |\n| `lb-tally` / `lb-status` / `lb-status-dot` | the row count (tabular, so it does not jitter as filters change) and a connection indicator whose live/dead states differ in SHAPE, not only colour |\n| `lb-pager` / `lb-pager-range` | the pager below a deck \u2014 prev/next plus an honest "21\u201340 of 60" range; pair it with `data-lb-state="loading"` on the deck so a page flip dims the old rows instead of blanking them |\n| `lb-tiles` / `lb-tile` / `lb-tile-label` / `lb-tile-value` | a row of figures for a dashboard\'s headline numbers \u2014 only for the few that ARE the point |\n| `lb-chart` (+ `lb-chart-line` / `-area` / `-dot` / `-grid`) | an inline-SVG trend that takes its colours from the theme, so it reads in both; no CDN |\n| `lb-empty` / `lb-empty-title` / `lb-empty-hint` | the honest empty state \u2014 what it means and the way out, in place of a blank chart or table |\n| `lb-table th[aria-sort]` / `td[data-num]` | a sortable header (arrow + `aria-sort`) and a tabular numeric cell, so counts line up down a column |\n| `lb-row` / `lb-stack` / `lb-spacer` | control row / vertical spacing / flex filler that right-aligns what follows |\n| `lb-link-out` | quiet external link (icon inherits currentColor) \u2014 "Open in Leadbay" |\n| `lb-select` / `lb-input` / `lb-btn` | form controls (state-aware, see below) |\n| `lb-btn-submit` / `lb-btn-ai` / `lb-btn-lg` | the app\'s `primary` / `ai` variants, and its `large` size |\n| `lb-msg` (`data-tone="error\\|ok"`) | inline feedback |\n| `lb-chip` (`data-status="WON\\|LOST"`) | a status pill |\n| `lb-table` | leads table |\n| `lb-spinner` | inline busy indicator \u2014 decorative, mark it `aria-hidden` |\n| `lb-vh` | visually-hidden text \u2014 labels heard but not seen |\n\nControls react to the `data-lb-state` the bind helpers already set \u2014 a bound\n`lb-btn` dims while loading, goes green on success, red on error, all with no\nextra CSS from you.\n\nThe palette is the **product design system**, ported from\n`frontend/packages/style/color.css` \u2014 same `--color-gray-1\u20269` ramp, same\nsemantic `--color-{green,red,blue,gold}-{background,foreground}` pairs, same\n`1.5rem` / `0.625rem` radii (concentric: outer = inner + padding) and\n`corner-shape: squircle`, matching the app\'s components.\nAn artifact therefore looks like Leadbay, not like a generic page.\n\nUse the tokens rather than hardcoded colours \u2014 the same rule the style package\nenforces. Re-theme by overriding them; don\'t fight specificity:\n\n```css\n:root { --lb-surface: var(--color-gray-2); --lb-radius: 0.5rem; }\n```\n\nDark mode works two ways: `data-theme="dark"` on `<html>` (the frontend\'s own\nhook) **and** `prefers-color-scheme`, because an artifact renders inside a host\nwhose theme attribute it cannot set. Never hardcode a light background over the\nskin.\n\nThe product face is `Nikkei Maru`; the stack names it first and falls back to\nthe system UI font. Do **not** add an `@font-face` \u2014 artifacts are inline-only\nand a remote font URL will silently fail.\n\n## What every lead card MUST carry\n\nA card is the artifact form of the `pull_leads` table, and it inherits that\ntable\'s rules. A card with a name and a button is not enough: the rep cannot\ntell *why* this lead is on screen. Five lines, in this order.\n\n```html\n<div class="lb-card">\n <div class="lb-card-head">\n <span class="lb-title"></span> <!-- 1. company -->\n <span class="lb-chips"> <!-- 2. state -->\n <span class="lb-chip" data-taste hidden></span>\n <span class="lb-chip" data-status hidden></span>\n </span>\n </div>\n <div class="lb-facts"> <!-- one group, tight 4px gap -->\n <div class="lb-sub"></div> <!-- 3. firmographics -->\n <div class="lb-sub" data-who></div> <!-- 4. the person -->\n <div class="lb-sub" data-how></div> <!-- 5. company channels -->\n </div>\n <div class="lb-sub" data-why></div> <!-- 6. why it fits -->\n <div class="lb-row"><!-- actions --></div>\n <div class="lb-msg" role="status" aria-live="polite"></div>\n</div>\n```\n\n1. **Company** \u2014 `name`, linked to `website` (prefix `https://` on a bare host).\n Never render the numeric `score`; use the `\u25B0\u2756\u25B1` bar if you want the signal.\n\n Keep `.lb-msg` OUT of `.lb-row`. The result of a write \u2014 "Could not reach the\n host" \u2014 is the most important thing on the card at that moment; parked between\n two buttons it reads as a control, and as a wide flex item it forces the\n trailing link onto a line of its own. Give it its own row after the actions.\n\n Also give every card an **Open in Leadbay** link to the lead\'s panel in the\n product. Put it at the **trailing end of the card\'s last action row** \u2014\n same row as the buttons, pushed right by an `lb-spacer`, not on a line of\n its own. Style it `lb-link-out`: quiet text plus a plain arrow-up-right,\n never a filled button. It is an escape hatch, not a call to action.\n\n Group the controls by what they act on, so the row does not read as a set of\n peers: wrap each axis in an `lb-group`. Status is NOT one of those axes \u2014 it\n saves on change and carries no button at all (see "Save on change is the\n default for status" below). Reserve `lb-btn-submit` for a write that really\n does need a second step, such as the bulk apply across checked rows.\n\n Taste is the one pair worth reducing to icons: thumbs up/down are unambiguous,\n they repeat on every card, and dropping the words buys the width a narrow chat\n host needs. Use `lb-btn-icon` \u2014 and note the three attributes it REQUIRES,\n because with no text the glyph is the whole affordance:\n\n - `aria-label` naming the lead ("Like Acme Corp"), since the control repeats\n N times down the list;\n - `title` so a sighted user who does not know the glyph gets a tooltip;\n - `aria-pressed` reflecting the current taste \u2014 a toggle must say whether it\n is on, and `[aria-pressed=true]` is what the skin styles.\n\n Do **not** reduce "Set status" to an icon: no glyph says "commit the value in\n the select beside me". Icons work for a fixed, well-known action; they fail\n for one whose meaning comes from a neighbouring control. The status select\n sidesteps the question entirely by carrying no button at all \u2014 it saves on\n change \u2014 but the rule stands for any write whose meaning comes from the\n control beside it.\n\n ```html\n <div class="lb-row">\n <span class="lb-group"> <!-- taste: two toggles -->\n <button class="lb-btn lb-btn-icon" aria-label="Like Acme Corp"\n title="Like" aria-pressed="false">\n <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"\n stroke-linecap="round" stroke-linejoin="round" aria-hidden="true">\n <path d="M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z"/>\n </svg>\n </button>\n <button class="lb-btn lb-btn-icon" data-taste="disliked"\n aria-label="Dislike Acme Corp" title="Dislike" aria-pressed="false">\n <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"\n stroke-linecap="round" stroke-linejoin="round" aria-hidden="true">\n <path d="M17 14V2"/>\n <path d="M9 18.12 10 14H4.17a2 2 0 0 1-1.92-2.56l2.33-8A2 2 0 0 1 6.5 2H20a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.76a2 2 0 0 0-1.79 1.11L12 22a3.13 3.13 0 0 1-3-3.88Z"/>\n </svg>\n </button>\n </span>\n <select class="lb-select" aria-label="Lead status for Acme Corp"></select>\n <span class="lb-spacer"></span> <!-- pushes the link to the end -->\n <a class="lb-link-out" data-k="open" target="_blank" rel="noopener">\n Open in Leadbay\n <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"\n stroke-linecap="round" stroke-linejoin="round" aria-hidden="true">\n <line x1="7" y1="17" x2="17" y2="7"/><polyline points="7 7 17 7 17 17"/>\n </svg>\n </a>\n </div>\n ```\n\n Keep the arrow a bare diagonal stroke \u2014 the text already says where the link\n goes, so the glyph only has to mark "leaves this page". Mark the `<svg>`\n `aria-hidden="true"`: it is decorative, and the link text is the accessible\n name.\n **Pick the view the lead actually lives in** \u2014 the URL is\n `/app/<view>?lead=<uuid>`, and the three views are `discover`, `monitor`,\n `campaign`. Landing a Monitor lead on Discover drops the rep into a list\n that does not contain it:\n\n ```js\n function leadUrl(lead, campaignId) {\n const id = encodeURIComponent(lead.id);\n // A campaign card carries TWO params \u2014 the campaign selects the list, the\n // lead opens the panel inside it. Campaign wins even when in_monitor is\n // also true, because that is the list the rep is looking at.\n if (campaignId) {\n return `https://leadbay.app/app/campaign?campaign=${encodeURIComponent(campaignId)}&lead=${id}`;\n }\n const view = lead.in_monitor ? "monitor" : "discover";\n return `https://leadbay.app/app/${view}?lead=${id}`;\n }\n openEl.href = leadUrl(lead, campaignId);\n ```\n\n `in_monitor` / `in_discover` are booleans on the `pull_followups` payload \u2014\n every follow-up carries `in_monitor: true`, so a call sheet must link to\n `monitor`. `pull_leads` omits both flags entirely; its leads are the Discover\n batch by definition, so `discover` is the default. A campaign card\n (`lb.callList({source:"campaign", campaignId})`) needs `?campaign=<id>&lead=<id>`\n \u2014 the param names are `CAMPAIGN_QUERY_PARAM` and `LEAD_QUERY_PARAM`, and the\n app\'s own `useLeadPanel` preserves whatever params are already set, so the\n two coexist by design. Omitting `campaign=` opens an empty campaign view.\n\n Inline the glyph as SVG rather than an emoji or `\u2197` \u2014 it inherits\n `currentColor` and scales with the text, so it stays legible in both themes.\n `?lead=<uuid>` is the real deep-link (`LEAD_QUERY_PARAM` in the web app, read\n on load; the panel is an overlay, so the view choice only decides what sits\n behind it). This is the ONE place a card may use `lead.id`: as a link target,\n never as visible text.\n2. **State chips** \u2014 taste (`data-taste`) and CRM status (`data-status`) are\n INDEPENDENT axes; render both, hide the empty one. Never collapse to one chip.\n3. **Firmographics** \u2014 sector of activity first, then city, then size, then the\n contact. `sector_id` is a RAW ID (`"5136"`), not a label: resolve it via\n `leadbay_list_sectors` (1346 rows \u2014 fetch once, cache, never inline the lot)\n or omit it. Never print the raw id.\n\n **Always show whether the lead is reachable \u2014 and never merge the person\n with the company\'s switchboard.** These are two separate lines:\n\n ```js\n // WHO \u2014 recommended_contact. Name, and job_title ONLY when present; on list\n // payloads it is usually null, and inventing one is worse than omitting it.\n const rc = lead.recommended_contact;\n const who = rc ? [rc.first_name, rc.last_name].filter(Boolean).join(" ") : null;\n const whoLine = who ? who + (rc.job_title ? " \xB7 " + rc.job_title : "") : "No contact yet \u2014 enrich to find one";\n\n // HOW \u2014 company-level channels. `phone_numbers` and `email` belong to the\n // COMPANY, not to `recommended_contact`. Rendering "Jean \xB7 \u260E 0123\u2026" claims a\n // direct line that does not exist; it is the switchboard.\n // The API returns the literal STRING "null" for a missing value \u2014 in\n // phone_numbers as well as email (a real lead ships phone_numbers:["null"]).\n // Guard BOTH or the card prints "\u260E null" as if it were a number.\n const real = (v) => (v && v !== "null" ? v : null);\n const phone = real((lead.phone_numbers || [])[0]);\n const email = real(lead.email);\n const howLine = [phone && "\u260E " + phone, email && "\u2709 " + email].filter(Boolean)\n .join(" \xB7 ") || "No phone or email \u2014 enrich to look for them";\n ```\n\n ```html\n <div class="lb-sub">Sector \xB7 City \xB7 Size</div>\n <div class="lb-sub"><span aria-hidden="true">\u{1F464}</span> Jean-Fran\xE7ois Froemer \xB7 G\xE9rant</div>\n <div class="lb-sub"><span class="lb-vh">Company switchboard: </span><span aria-hidden="true">\u{1F3E2} \u260E</span> 01 23 45 67 89 (company line)</div>\n ```\n\n Label the channel line as the **company\'s**, so a rep reading fast cannot\n mistake it for a direct line. A per-contact email or phone exists only after\n enrichment \u2014 `research_lead_by_id` exposes it as `contacts.reachable[]`, and\n `_meta.has_reachable_contact` is the authoritative flag. The list payloads\n carry neither, so a card built from `pull_leads` / `pull_followups` can only\n ever show company channels. Say "enrich to reveal" rather than implying the\n contact is callable.\n\n Two things that look like reachability and are not: a `linkedin_page` alone\n (the rep cannot message a URL without leaving the artifact \u2014 same rule\n `research_lead_by_id` applies), and `contacts_count > 0` (it counts known\n people, not people you can contact; a lead can show 2518 contacts and zero\n channels). `pull_followups` carries `has_phone` as a ready-made boolean;\n `pull_leads` omits it, so derive from `phone_numbers` there.\n4. **Why it fits** \u2014 one sentence, \u226420 words. Walk this chain and stop at the\n first hit:\n\n 1. `short_description`\n 2. `description` (longer; only on `research_lead_by_id` /\n `research_lead_by_name_fuzzy` \u2014 the trim payloads omit it)\n 3. top 2 `tags[].display_name`\n 4. `qualification_summary.best_response_excerpt`, trimmed to one sentence\n 5. `keywords`, first 3, joined with ` \xB7 `\n 6. the resolved sector label \u2014 better than nothing, and if step 3 already\n printed the sector on the firmographics line, skip to step 7\n 7. the literal *"No description yet \u2014 qualify to add one"* ("qualify" is the\n product\'s own verb; "run qualification to generate one" is a nominalisation)\n\n Never leave this line blank: a silent gap reads as a rendering bug, whereas\n the fallback tells the rep the data is missing and what fixes it.\n\n **The two list payloads are complementary, so the chain must span both.**\n `pull_leads` returns `short_description` on every lead but no `sector_id`;\n `pull_followups` returns `sector_id` but no `short_description` at all. A\n card fed by one will fall through to a different step than the same card fed\n by the other \u2014 that is expected, not a bug. Never call\n `research_lead_by_id` per row just to fill this line: it is one request per\n lead. Fetch it lazily when the rep expands a card.\n\n**Never show** on a card: `id`, `sector_id`, `location.pos`, `location.country`\n(unless city and state are both missing), `is_hq`, `*_in_progress`,\n`highlighted_fields`, `custom_fields`, `stale_at`, `deal_insights`,\n`need_attention*`, any count that is 0, any value that is the string `"null"`.\n\n**Minimum actions.** A card that only displays is a table row that costs more \u2014\nif you are not wiring an action, render the markdown table instead. Wire at\nleast one write, and prefer the set the rep actually needs:\n\n| Card is for | Wire |\n|---|---|\n| triage a discovery batch | `lb.like` / `lb.dislike` + `lb.setStatus` |\n| working a call list | `lb.note` (gated on a note) + the prospecting toggles + `lb.leadHistory` \u2014 see *Writing from a page* |\n| pipeline review | `lb.setStatus` + `lb.note` |\n\nAlways render the `.error` branch of every view-model \u2014 a control that cannot\nreach the host must say so, not sit silent.\n\n **Accessibility is the markup\'s job, not the skin\'s.** `data-lb-state` is a\n STYLING hook; it sets no ARIA. A card renders N times in a list, so every\n repeated control needs a name that says *which* lead it acts on:\n\n ```html\n <select class="lb-select" aria-label="Lead status for Acme Corp"></select>\n <button class="lb-btn" aria-label="Like Acme Corp">Like</button>\n <a class="lb-link-out" aria-label="Open Acme Corp in Leadbay" \u2026>\n <span class="lb-msg" role="status" aria-live="polite"></span>\n ```\n\n Without the `role="status"` node the rep hears nothing when a write fails \u2014\n `bindAction` puts the message in a `data-lb-error` attribute that nothing\n renders. Mark the `\u25B0\u2756\u25B1` bar `aria-hidden="true"` and follow it with\n `<span class="lb-vh">Fit: strong</span>`; the glyphs otherwise read aloud as\n "black parallelogram black parallelogram\u2026" before the company name. Use\n `lb-vh` for any label that should be heard but not seen.\n\n## Recipe: the pull-leads triage board (THE default board)\n\n> **Served finished \u2014 do not build this by hand.** For today\'s Discover batch (`leadbay_pull_leads`), call\n> `leadbay_get_artifact_runtime` with `template: "triage_board"` and publish the\n> returned `html` as it is, with its `capabilities`, `icon` and\n> `description`. That page is the approved board every user gets, byte for\n> byte; this recipe documents what it does and why, so the page can be changed\n> knowingly. Changes to the board are made in the template source\n> (`packages/components/src/templates/`), never in a re-implementation.\n\nFor the other batch tools below, the template does not fit yet \u2014 it loads\nthe Discover batch, not theirs \u2014 so those boards are still built from this\nrecipe.\n\nWhen the rep accepts an interactive board after ANY tool that returns a batch\nof leads \u2014 `leadbay_pull_leads`, `leadbay_find_new_leads`,\n`leadbay_pull_followups`, `leadbay_campaign_call_sheet` \u2014 build THIS. It is a\nfixed recipe, not a starting point: the same board every time means a rep who\nlearned it once knows it everywhere. Deviate only when the rep asks for\nsomething specific.\n\nBuild it from the data ALREADY IN HAND \u2014 never re-call the tool that produced\nthe batch just to populate the board.\n\n**The board pins the light theme.** Set it before `lb.styles()`, as the first\nthing the artifact does:\n\n```js\ndocument.documentElement.setAttribute("data-lb-theme", "light");\nlb.styles();\n```\n\nEvery dark rule in the skin is guarded by `:not([data-lb-theme=light])`, so the\none attribute disables all of them \u2014 no token overrides, no specificity fight,\nand `lb.styles()` still declares `color-scheme:light` so native select popups\nfollow. A rep works a board beside the product\'s own light UI and reads the\ncards as the same surface; a board that flips with the HOST\'s theme puts a dark\ncard next to a light app for the same lead. This is the board\'s default, not\nthe skin\'s: `lb.styles()` keeps honouring `prefers-color-scheme` everywhere\nelse, and an artifact that WANTS the host theme simply omits the attribute.\n\nTwo things change with the source, and nothing else does:\n\n- **The deep link\'s view.** `pull_leads` omits `in_monitor`/`in_discover`, so\n its leads are the Discover batch by definition; `pull_followups` carries\n `in_monitor: true` on every row, so a call board links to `monitor`; a\n campaign sheet needs `?campaign=<id>&lead=<id>`. See the leadUrl helper above.\n- **Which write leads the card.** A discovery batch is triaged (taste + status);\n a follow-up list is worked (`lb.note` + the prospecting toggles). Order the\n Outreach and Status sections to match, but ship both either way.\n\n**Per card** \u2014 a header, then a stack of titled SECTIONS, then the write\nfeedback. The skin ships the whole geometry (`lb-sections` = 16px between\nsections, `lb-section` = 8px within), so build the structure and add no\nspacing CSS of your own:\n\n```html\n<article class="lb-card">\n <div class="lb-card-top"> <!-- checkbox \xB7 title \xB7 taste -->\n <input type="checkbox" aria-label="Select Acme Corp for bulk apply">\n <div class="lb-lead-title"><a href="https://acme.com">Acme Corp</a></div>\n <span class="lb-group"><!-- like / dislike, lb-btn-icon --></span>\n </div>\n <div class="lb-chips" hidden><!-- data-taste + data-status, see contract --></div>\n\n <div class="lb-sections">\n <div class="lb-section"> <!-- untitled: what it is -->\n <div class="lb-tags-plain"><span>Honfleur, Normandie</span><span>50\u201399</span></div>\n <div class="lb-sub">Why it fits, one sentence.</div>\n </div>\n <div class="lb-section"><div class="lb-sec-title">Fit</div>\u2026</div>\n <div class="lb-section">\n <div class="lb-sec-title">Intent tags</div>\n <div class="lb-tags-intent"><span>Vente terrain</span>\u2026</div>\n <!-- no tags? <div class="lb-tags-empty">None \u2014 the qualifier found no\n buying signal</div>, never an empty row -->\n </div>\n <div class="lb-section"><div class="lb-sec-title">Data</div>\u2026</div>\n <div class="lb-section">\n <div class="lb-sec-title">Status</div>\n <select class="lb-select" aria-label="Lead status for Acme Corp"></select>\n </div>\n <div class="lb-section">\n <div class="lb-sec-title">Outreach</div>\n <div class="lb-stack"> <!-- one control per line -->\n <div class="lb-actions" role="group"><!-- the 4 prospecting toggles, see *Writing from a page* --></div>\n <input class="lb-input" aria-label="Outreach note for Acme Corp">\n <button class="lb-btn lb-btn-submit">Log outreach</button> <!-- the note: lb.note, never lb.outreach -->\n </div>\n </div>\n <details class="lb-section"><!-- lazy full profile, see below --></details>\n <div class="lb-card-foot">\n <button class="lb-btn lb-btn-ai" data-k="qualify">Requalify</button>\n <!-- MANDATORY. Text from lb.qualifyLabel(lead): "Qualify" when the lead\n has no AI score yet, "Requalify" when it has one to replace. -->\n <span class="lb-spacer"></span>\n <a class="lb-link-out">Open in Leadbay</a>\n </div>\n </div>\n\n <div class="lb-msg" role="status" aria-live="polite"></div>\n</article>\n```\n\nWire them with `lb.like` / `lb.dislike`, `lb.leadStatus()` +\n`lb.setStatus({leadId, status, ask})`, `lb.note({leadId, note})` \u2014 the note\nfield gated by a `validate` so an empty note cannot log \u2014 and the four\nprospecting toggles from *Writing from a page*,\nplus `lb.qualify` in `lb-card-foot` \u2014 the Qualify/Requalify button every card\nMUST carry, labelled by `lb.qualifyLabel(lead)`.\n\nFive rules the structure encodes, each of which a hand-built card gets wrong:\n\n- **One section per titled block.** Two titles in one `lb-section` share its\n 8px gap instead of the 16px between sections, so the second title reads as\n part of the first block. Fit and Intent tags are the pair this catches.\n- **A section title sits at section level**, as a direct child. Nested inside a\n row (beside a verdict, say) it stops being a peer of the other titles and the\n card loses its scan order.\n- **No date input.** Status saves on change and the backend stamps the date as\n "now"; a picker is only for backdating, which this board does not do.\n- **Controls stack and span their section.** A select sizes to its longest\n option and a text input to a UA default, so side by side they come out\n different widths despite identical padding and height.\n- **Every card ships Qualify/Requalify.** Mandatory, and not conditional on\n the lead looking under-qualified: the rep reads "why it fits" and the intent\n tags, decides the qualifier got this one wrong, and re-runs it \u2014 a card that\n omits the button makes the verdict look final. It is also the one control\n that ACTS on the line the rep is doubting, which is why it sits in\n `lb-card-foot` next to Open in Leadbay rather than among the taste and\n status writes. Wire it with `lb.qualify` and label it with\n `lb.qualifyLabel(lead)`; both are below.\n\nOnly the bulk apply keeps a submit button, because it fans out across checked\nrows and takes a `confirm`.\n\n**Toolbar** \u2014 a tally, four filters (CRM status \xB7 taste \xB7 qualifier verdict \xB7\nsector), select-all + one `lb.setStatus({leadIds})` bulk write, and\n`lb.sortOrder()` bound to the list\'s `order`. Filters are CLIENT-side over the\nloaded page; sort is SERVER-side, so changing it must `loadPage(0)` (see the\nsorting rule above). The skin ships its geometry too:\n\n```html\n<div class="lb-toolbar">\n <span class="lb-tally">5 leads</span>\n\n <span class="lb-group"> <!-- narrow: sort + filters -->\n <label class="lb-field">\n <span class="lb-field-label">Sort</span>\n <select class="lb-select" aria-label="Sort order"></select>\n </label>\n <label class="lb-field">\n <span class="lb-field-label">Status</span>\n <select class="lb-select" aria-label="Filter by CRM status"></select>\n </label>\n <!-- taste, verdict \u2026 -->\n </span>\n\n <span class="lb-spacer"></span>\n\n <span class="lb-group"> <!-- act on the selection -->\n <label class="lb-field lb-field-inline">\n <input type="checkbox"><span class="lb-field-label">Select all</span>\n </label>\n <select class="lb-select" aria-label="Status for selected leads"></select>\n <button class="lb-btn lb-btn-submit">Apply to selected</button>\n </span>\n\n <span class="lb-status" data-live="yes"> <!-- shape, not just colour -->\n <span class="lb-status-dot"></span>live\n </span>\n\n <div class="lb-msg" role="status" aria-live="polite" style="flex:1 0 100%"></div>\n</div>\n```\n\nThree groups, because the bar does three things \u2014 report, narrow, act. Flat, the\nbulk commit reads as one more filter. Sort belongs in the narrow group but costs\na round trip the others do not, so mark that boundary (a divider, or its own\n`lb-group`) rather than letting four selects look interchangeable.\n\n**Pagination** \u2014 `lb.leadList` is already a paginated model: `.page`,\n`.pageSize`, `.total`, `.hasMore`, `.next()`, `.prev()`, `.loadPage(n)`. A\nboard that renders only page 0 silently hides the rest of the lens, so render\nthe pager whenever `total` exceeds one page:\n\n```html\n<div class="lb-pager">\n <button class="lb-btn" data-k="prev">Previous</button>\n <button class="lb-btn" data-k="next">Next</button>\n <span class="lb-spacer"></span>\n <span class="lb-pager-range">21\u201340 of 60</span>\n</div>\n```\n\n```js\nconst list = lb.leadList({ order: sort, ask: ASK, pageSize: 20 });\nlist.subscribe((l) => {\n deck.setAttribute("data-lb-state", l.loading ? "loading" : "ready");\n if (l.error) { renderError(l.error); return; } // .code says what to do\n if (!l.loading) renderCards(l.items); // keep old rows while loading\n const from = l.page * l.pageSize + 1;\n range.textContent = `${from}\u2013${Math.min(from + l.items.length - 1, l.total)} of ${l.total}`;\n prev.disabled = l.page === 0 || l.loading;\n next.disabled = !l.hasMore || l.loading;\n});\nprev.onclick = () => list.prev();\nnext.onclick = () => list.next();\n```\n\nFour things this gets right that a hand-rolled pager usually does not:\n\n- **A range, not a page number.** "21\u201340 of 60" says how much is left; "page 2"\n does not, and a rep cannot tell a short lens from a long one.\n- **Disable at the ends, and while loading.** `hasMore` is\n `(page + 1) * pageSize < total`, so it is false on the last page even when\n that page is full \u2014 a Next that fetches nothing reads as a broken button.\n- **Keep the old rows while the next page loads.** Blanking the deck loses the\n scroll position; `lb-deck[data-lb-state=loading]` dims and locks it instead.\n `loadPage` already drops a stale response if the rep flips pages quickly.\n- **Selection and page are independent.** A checked lead on page 1 stays in the\n bulk set after a flip, so either carry the selection across pages or clear it\n on the flip \u2014 silently dropping it means a bulk apply writes fewer leads than\n the rep ticked. Say which you chose in the UI.\n\nChanging the sort resets to page 0 (`loadPage(0)`), since the backend sorts the\nwhole lens and page 2 of the old order is not page 2 of the new one.\n\n**Rich profile data is LAZY.** The card renders from the list payload alone. A\n`lb.leadProfile(leadId, ask)` resource \u2014 sector label, `location.full`, real\n`linkedin_page`, the qualification Q&A \u2014 loads only when the rep EXPANDS that\ncard, one call for one lead they chose to open:\n\n```js\nconst profile = lb.leadProfile(lead.id, ASK); // autoLoad:false\nprofile.subscribe((p) => renderDetail(els.detail, p));\nels.expand.onclick = () => profile.load(); // one call, on demand\n```\n\nNever prefetch it for the batch: a 20-lead board would fire 20 requests to fill\nlines the rep may never read. The list payload already carries everything the\ncollapsed card shows.\n\n**Use `lb.qualify` \u2014 never hand-roll this action.** It is MANDATORY on every\nlead card, on every board, in every recipe. A card that renders a lead and no\nqualify control is incomplete: the rep can read the qualifier\'s verdict but\ncannot contest it without leaving the artifact.\n\n```js\nconst q = lb.qualify({ leadId: lead.id, ask: ASK, scored: lb.qualifyLabel(lead) === "Requalify" });\nels.qualify.textContent = lb.qualifyLabel(lead); // "Qualify" or "Requalify"\nlb.bindAction(els.qualify, q);\nq.subscribe((a) => {\n // QUEUED, not finished. Say so and leave the old tags alone \u2014 a card that\n // repaints as though a verdict arrived is lying about work that has not run.\n els.msg.textContent = a.loading ? "Queueing\u2026"\n : a.error ? a.error.message\n : a.lastResult ? "Qualifying \u2014 the verdict lands shortly." : "";\n els.msg.dataset.tone = a.error ? "error" : a.lastResult ? "ok" : "";\n if (a.lastResult) watch(a.lastResult); // optional, see below\n});\n```\n\n**Which word the button takes is not a style choice.** `lb.qualifyLabel(lead)`\nreads the lead\'s own data: a lead with an `ai_agent_lead_score`, or a\n`qualification_summary.answered > 0`, has a verdict to replace and gets\n**Requalify**; one without has never been run and gets **Qualify**. Labelling\nan unscored lead "Requalify" implies a previous run that never happened, and\nthe rep reads the empty tag row as a failure of the button they just pressed.\n\n**To show the verdict actually landing**, hand the launch result to\n`lb.qualifyStatus` \u2014 otherwise the card can only ever say "queued":\n\n```js\nfunction watch(launch) {\n const job = lb.qualifyStatus(launch, ASK); // polls every 15s\n job.subscribe((j) => {\n if (j.error) { els.msg.textContent = j.error.message; return; }\n if (j.done) profile.load(); // re-read the new tags\n });\n}\n```\n\nDeclare BOTH tools in the artifact\'s `mcp_tools`:\n`leadbay_bulk_qualify_leads` and `leadbay_qualify_status`.\n\nGive the button `class="lb-btn lb-btn-ai"` \u2014 purple is the product\'s AI\naffordance, and the app\'s own QualifyButton is `variant="ai"`.\n\n## Recipe: the ROUTE PLANNER (leads on a map, worked in person)\n\n> **Served finished \u2014 do not build this by hand.** For any route planner, call\n> `leadbay_get_artifact_runtime` with `template: "route_planner"` and publish the\n> returned `html` as it is, with its `capabilities`, `icon` and\n> `description`. That page is the approved board every user gets, byte for\n> byte; this recipe documents what it does and why, so the page can be changed\n> knowingly. Changes to the board are made in the template source\n> (`packages/components/src/templates/`), never in a re-implementation.\n\nIts one permitted edit is the JSON in `<script id="lb-board-config">`: set\n`"city"` to where the rep is going ("Lyon"), or leave it `""` for all\nfollow-ups. Never a country.\n\nWhen the rep is going somewhere \u2014 "I\'m in Lyon Thursday", "plan my tourn\xE9e",\n"who can I see on the way" \u2014 build THIS rather than the desk. Same writes,\ndifferent question: not *who do I call* but *what order do I drive*.\n\n**Half map, half panel.** The map is the left half and the lead list the\nright; clicking a marker opens that lead in the panel with its actions. A\nmap alone cannot be worked and a list alone is not a route.\n\nUse the kit\'s geo helpers \u2014 do NOT hand-roll them. `lb.leadPos`,\n`lb.distanceKm`, `lb.orderByProximity`, `lb.routeUrl` and\n`lb.routeDistanceKm` each encode one of the five rules below, and a page that\nreimplements them locally gets no benefit when a rule is fixed in the kit.\nThey landed after kit 0.6.0, so a page pinned to an older runtime has to be\nmoved forward rather than given private copies.\n\n```js\nconst stops = leads.map((l) => ({ lead: l, pos: lb.leadPos(l) })).filter((s) => s.pos);\nconst ordered = lb.orderByProximity(stops); // nearest-neighbour default\nconst link = lb.routeUrl(ordered); // null when nothing is placeable\nif (link?.truncated) note(`${link.truncated} stops past Google\'s limit are not in this link`);\n```\n\nFive rules, each one something a hand-built map gets wrong:\n\n- **Ungeocoded leads are NORMAL \u2014 list them, never drop them.** An imported\n book is mostly without coordinates. `lb.leadPos` returns null for those,\n and they belong in the panel under a "no location" heading. A map that\n silently shows 12 of 40 leads tells the rep their book is small.\n- **`0,0` is not a lead.** It is the API\'s missing-position sentinel, in the\n Gulf of Guinea. `lb.leadPos` rejects it; a raw `location.pos` read does not.\n- **Distance is `lb.distanceKm`, never Pythagoras.** At French latitudes a\n degree of longitude is ~73km against ~111km for latitude, so flat maths\n overstates east-west legs by half and mis-orders the day.\n- **Google Maps drops stops past 11.** `lb.routeUrl` reports `truncated`;\n say the number, because the alternative is a rep driving a route whose last\n calls silently vanished.\n- **The pin must carry the state.** Colour it by CRM status and ring the ones\n already worked today, so a glance at the map answers "where have I been".\n Status changes from the panel repaint the pin immediately \u2014 that feedback\n is the whole reason the two halves sit side by side.\n\n### The panel is FIXED \u2014 same sections, same order, every time\n\nA rep who learned the planner once must find the same controls in the same\nplace on every board any agent builds. "Clicking a marker opens that lead with\nits actions" is not a spec \u2014 it leaves the sections, their order and their\ncontrols to whoever builds the board, and a rep cannot build a habit on that.\nEmit the head and these four sections, in this order, and add nothing between\nthem:\n\n**The panel has TWO modes.** With no lead selected it shows the overview \u2014\n*Today\'s route* (numbered stops, per-leg km, move up / move down / remove, the\n"as the crow flies" total, and the Google Maps link) then the full lead list.\nSelecting a marker replaces both with the lead detail below; closing it\nreturns to the overview.\n\n```html\n<aside class="panel">\n <!-- HEAD \u2014 everything the rep needs before they get out of the car -->\n <div class="section">\n <div class="panel-head">\n <h2>{company}</h2>\n <button class="icon-btn" aria-label="Close {company}">\u2715</button>\n </div>\n <div class="chips"> <!-- status chip + "worked today" chip -->\n <div class="facts">\n <span class="address">{location.full, else city/state, else "No address on file"}</span>\n <span>{size}</span>\n <span>Contact: {name \xB7 job_title} \u2014 else "No contact yet \u2014 enrich to find one"</span>\n <span>Company line: \u260E {phone} \xB7 \u2709 {email} \u2014 else "No company phone or email \u2014 enrich to look for them"</span>\n </div>\n <div class="actions"> <!-- only when the lead has coordinates -->\n <button>Locate on map</button>\n <button>Add to route</button> <!-- toggles to "Remove from route" -->\n </div>\n <div class="links">\n <a>Google Maps \u2197</a> <!-- only when placeable -->\n <a>Open in Leadbay \u2197</a>\n </div>\n </div>\n\n <div class="section"> <!-- 1. STATUS \u2014 lb.setStatus, saves on change -->\n <h3 class="section-title">Status</h3>\n <select class="lb-select">\u2026</select>\n </div>\n\n <div class="section"> <!-- 2. PROSPECTING ACTION \u2014 toggles, leadbay_set_prospecting_action -->\n <h3 class="section-title">Prospecting action</h3>\n <div class="choices">\u2026</div> <!-- the 4 lb.EPILOGUE_STATUSES, each on/off, several at once -->\n <div class="summary">\u2026</div> <!-- "Last: Still chasing \xB7 24 Sep" when none is on today -->\n </div>\n\n <form class="section"> <!-- 3. LOG OUTREACH \u2014 channel + note, NO status, via lb.note -->\n <h3 class="section-title">Log outreach</h3>\n </form>\n\n <div class="section"> <!-- 4. NEARBY FOLLOW-UPS \u2014 lb.distanceKm, nearest first -->\n <h3 class="section-title">Nearby follow-ups</h3>\n </div>\n</aside>\n```\n\nThe head is not decoration. A rep standing outside the building needs the\naddress, who to ask for, and a number to call if the door is locked \u2014 and the\ntwo channel lines are separate because `phone_numbers` / `email` on a lead are\nthe COMPANY switchboard, not the contact\'s direct line. Say so, as\n"Company line:", or the rep dials it expecting the person.\n\nWhy this order and not another: **status first** because it is one click and\nthe rep usually knows it before they park; **prospecting action second**\nbecause on a doorstep "nobody in" is the whole report and typing a note is not\nworth it; **log outreach third** because it is the long form, for the visit\nthat actually went somewhere; **nearby last** because it is the question you\nask once the current stop is done.\n\nThe rules the sections carry:\n\n- **Status and prospecting action are DIFFERENT AXES.** Status is the\n commercial outcome the org sees (`lb.setStatus`); the prospecting action is\n how this visit went and drives when the lead resurfaces\n (`leadbay_set_prospecting_action`).\n Setting one never sets the other \u2014 a rep who books a meeting sets both.\n- **The prospecting action is four buttons, not a dropdown.** One tap on a\n phone, in a car park. A select costs two.\n- **They are TOGGLES over today\'s list, exactly as in the web app.** The web\n app\'s Prospection cell is a multi-select over `epilogue_today_statuses`:\n several actions can be on for one day, and each tap turns one on or off.\n Mirror it, so a rep sees the same state in both places:\n\n ```js\n const today = new Set((lead.epilogue_today_statuses ?? []).map((e) => e.type.replace(/^EPILOGUE_/, "")));\n const selected = !today.has(value); // the tap flips it\n await lb.call("leadbay_set_prospecting_action", { lead_id: lead.id, action: value, selected, _triggered_by: ASK });\n ```\n\n Read "selected" from `epilogue_today_statuses`, **never from\n `epilogue_status`**. Unticking removes the type from today\'s list and leaves\n `epilogue_status` where it was, so a board that pre-selects from it brings a\n removed action back on the next open. `epilogue_status` is only the last\n value ever set: show it as a "Last: Still chasing \xB7 24 Sep" line when nothing\n is on today, as the web app does. The field is absent on a lead nobody has\n worked \u2014 that is an empty set, not an error. Use `role="checkbox"` and\n `aria-checked`, not `aria-pressed`.\n- **In the web app\'s colours.** Still chasing blue, Meeting planned green,\n Could not reach yellow, Not interested red \u2014 the `--color-<hue>-background`\n / `-foreground` pairs, all four in the skin. The foreground goes on a dot\n and the selected border, never on the label: yellow\'s is too light to read\n as text on white, and the web app only uses it for icons.\n- **Log outreach writes a NOTE. It must not offer the epilogue too.** The\n first build of this panel put the same four `lb.EPILOGUE_STATUSES` in a\n select inside the form, so a rep who tapped a button and then submitted the\n form issued two writes of one field and the second silently won. Worse, the\n form\'s "No outcome yet" omitted `epilogue_status` entirely, leaving the\n button\'s status standing under a note that said otherwise, with nothing on\n screen showing the mismatch. One control per axis: the buttons own the\n epilogue, the form owns the note. Say so under the submit \u2014 "Sets no status\n \u2014 use Prospecting action above for that."\n- **A page never calls `lb.outreach`** (see *Writing from a page*). Write the\n note with `lb.note` and the action with `leadbay_set_prospecting_action` \u2014\n the web app\'s own two paths.\n `lb.outreach` goes to `report_outreach`, which asks a human to type a\n confirmation for every `user_confirmed` call, and a page has nowhere to\n show that prompt: the button waited 60 seconds, the write landed anyway, and\n the page showed "took too long". Reps retried and logged one visit twice.\n The prompt cannot be skipped for pages, because the server cannot tell a\n page from an agent that claims to be one \u2014 so the page takes the path that\n never asks.\n- **Every write repaints the pin before the panel says "saved".** The map is\n the record the rep reads; a panel that confirms while the pin still shows\n the old status is lying about what they can see.\n\n`lb.relanceRow` may be added for contacts and enrichment, as a FIFTH section\nafter Nearby \u2014 never inserted among the four.\n\n### Colours come from the skin, not from a second palette\n\n`lb.styles()` already defines the product\'s greys, so a page that also\ndeclares its own ends up with two near-identical neutrals on one screen \u2014 a\nblue-tinted `#f4f5f7` page behind a `#f0f0f0` toolbar, borders at `#e2e5ea`\nbeside the kit\'s `#e0e0e0`. Close enough that nobody can name the problem,\nwrong enough to look unfinished. Alias the skin instead:\n\n```css\n:root {\n --bg: var(--color-gray-2); /* the page behind map and panel */\n --panel: var(--color-white); /* the panel and any card on it */\n --line: var(--color-gray-3); /* every border */\n --ink: var(--lb-fg);\n --muted: var(--lb-muted);\n}\n```\n\nStatus pins take the semantic tokens the chips already use \u2014\n`--color-blue-foreground` for Wanted, green for Won, red for Lost \u2014 so a pin\nand its chip are the same colour by construction rather than by two people\npicking the same blue.\n\nKeep exactly three colours of your own, because the kit has none for them \u2014\n`--land`, `--land-border` and `--water` are drawing a country, not UI chrome.\n\n**Then pin the board to light, or aliasing makes it worse than the palette\ndid.** A page with its own hardcoded greys is accidentally immune to dark\nmode; the moment it aliases the skin it inherits the skin\'s dark block, which\nfires on `prefers-color-scheme: dark`. The board a rep opens on a dark-mode\nlaptop then paints `--lb-fg` white over a light `--color-gray-2` ground \u2014\nwhite text on a white page, borders jumped from `#e0e0e0` to mid grey. Same\nrule as the triage board: these boards are light for everyone.\n\n```css\n/* Tripled on purpose. lb.styles() APPENDS the skin to <head> at runtime, i.e.\n after this sheet, so a plain :root here loses to the skin\'s\n :root[data-theme=dark] on source order. :root:root:root outranks it on\n specificity instead, which source order cannot undo. */\n:root:root:root {\n --lb-surface: var(--color-gray-1); --lb-border: var(--color-gray-3);\n --lb-fg: var(--color-black); --lb-muted: var(--color-gray-8);\n --lb-field: var(--color-white); --lb-chip-bg: var(--color-gray-2);\n color-scheme: light;\n /* \u2026and the semantic pairs the pins and chips read, at their light values. */\n}\n```\n\nA single `data-lb-theme="light"` on `<html>` does the same job and is simpler\n\u2014 use it when the page owns its `<html>` element. An artifact that is a\nfragment the host wraps does not, which is why the pin is a stylesheet rule.\n\n### There is no tile layer. The basemap ships as files\n\nThe first instinct on any Leaflet map is the one every tutorial opens with:\n\n```js\nL.tileLayer("https://tile.openstreetmap.org/{z}/{x}/{y}.png").addTo(map) // \u2190 blocked\n```\n\n**It does not work in an artifact, and it fails silently.** The artifact\nviewer\'s content security policy admits the page\'s own files, Google Fonts\nand a few script CDNs \u2014 nothing else. Every tile provider is off that list:\nOpenStreetMap, Carto, Stadia, MapTiler, all of them. The browser refuses the\nrequest before it leaves the machine, no error surfaces in the UI, and the rep\ngets an empty grey rectangle with pins floating on it. Probed with a real\nLeaflet map against two providers: `0 loaded`, every tile failed.\n\nThis is a property of WHERE the page runs, not of the code. The same two lines\nwork in the Leadbay frontend and in a local `.html` file. They only fail in a\npublished artifact \u2014 which is the only thing this recipe builds.\n\nSo the basemap is a **published file** for the workspace\'s country, fetched\nand drawn as one `L.geoJSON` layer behind the pins. A workspace serves\nexactly one country \u2014 `_meta.region` on every Leadbay result says which \u2014 and\nthere is one outline per region:\n\n| `_meta.region` | File | What | Source |\n|---|---|---|---|\n| `fr` | `france-departements.json` | the 96 d\xE9partements, ~570 KB | france-geojson |\n| `us` | `us-states.json` | 50 states + DC + Puerto Rico, ~300 KB | US Census Bureau, 1:20M cartographic boundaries |\n\nBoth are simplified and rounded to five decimals, which is sub-metre. For\nFrance, take that ~570 KB build rather than the sixteen-decimal version of the\nsame outlines, which costs the same bytes for an eighth of the geometry and\nomits the islands (R\xE9, Ol\xE9ron, Belle-\xCEle, the Corsican islets) entirely.\n\n**Stop there.** Roads and town labels were built, shipped and then removed:\n~475 KB of Natural Earth roads and 800 `geo.api.gouv.fr` town labels, tiered\nby zoom. They worked, they cost a layer-ordering bug, and a rep looking at\nthem still could not see a drive time, a local street or whether a river ran\nbetween two stops. They are a partial substitute for a thing an artifact\ncannot have, and the plain outline reads better. If someone asks for "more\ndetail on the map", the honest answer is that the panel\'s *Open in Google\nMaps* link is where navigation lives, and this map is for seeing WHICH leads\nsit near each other \u2014 which the outline already does.\n\nDo not try to solve it with a bigger file either. A full OSM extract for\nFrance is 4.7 GB and a single region ~500 MB, against a 16 MB ceiling per\nartifact file.\n\n### The board opens on the workspace\'s country, and stays where the rep put it\n\n```js\nconst map = L.map("map", { zoomSnap: 0.25 }) // quarter zoom steps, see below\nconst FRANCE_BOUNDS = L.latLngBounds([41.3, -5.2], [51.1, 9.6]) // Corsen\u2192Italy, Bonifacio\u2192Dunkerque\nconst US_BOUNDS = L.latLngBounds([24.5, -124.8], [49.4, -66.9]) // the lower 48: Key West\u2192Maine\nconst REGIONS = {\n fr: { file: "france-departements.json", bounds: FRANCE_BOUNDS, center: [46.6, 2.5] },\n us: { file: "us-states.json", bounds: US_BOUNDS, center: [37.0, -95.8] },\n}\n\n// Hold a neutral view until the first answer says which country this is.\nlet region = null\nmap.setView([40, -30], 2)\n\n// The whole country, just fitting the pane, centred on its main landmass. The\n// zoom comes from the bounds, so it adapts to the pane.\nconst showHome = (o) => region && map.setView(region.center, map.getBoundsZoom(region.bounds), o)\n\nfunction adoptRegion(result, leads) { // call with the FIRST answer, before rendering\n if (region) return\n const meta = String(result?._meta?.region ?? "").toLowerCase()\n const country = String(leads.find((l) => l?.location?.country)?.location.country ?? "").toLowerCase()\n region = REGIONS[meta] ?? REGIONS[country] ?? REGIONS.fr\n loadBasemap(region.file)\n reframe({ animate: false })\n}\n\n// Re-frame on resize while the map is still on that view (see below).\nlet homeView = true, framing = false\nconst reframe = (o) => { framing = true; homeView = true; showHome(o); framing = false }\nmap.on("movestart", () => { if (!framing) homeView = false })\nnew ResizeObserver(() => {\n map.invalidateSize({ pan: false }) // pan:false \u2014 a resize is not the rep moving\n if (homeView) reframe({ animate: false })\n}).observe(document.getElementById("map"))\n```\n\n- **The country comes from `_meta.region`, never an assumption.** A US rep\'s\n board that opens on France puts their pins over the Atlantic. Read the\n region from the first answer (the leads\' `location.country` is the\n fallback), then load that outline and frame it. Until it arrives, hold a\n neutral view: guessing France flashes the wrong country at every US rep.\n The copy follows the region too \u2014 the city placeholder, and the\n ambiguous-city hint (a d\xE9partement for France, a state for the US).\n\n- **`fitBounds`, never `setView([46.6, 2.4], 6)`.** The map pane is half the\n window \u2014 a tall narrow box \u2014 so one fixed zoom frames the country differently\n on a laptop and a wide monitor. Bounds adapt to the pane; a zoom number\n guesses at it.\n- **Just fitting, not zoomed in.** Open at exactly `getBoundsZoom(region.bounds)`\n \u2014 every corner of the country in view: France with Corsica, and for the US\n the lower 48, with Alaska and Hawaii left off-screen rather than shrinking\n the country to a strip. Tried one, one and a\n half and two steps closer on the live planner; each cropped the country and\n pushed a region\'s leads off the edge. The whole country is the view a rep\n plans a trip from; *Fit to leads* is one click away.\n- **Re-frame on resize until the rep moves.** The host sizes the artifact\n frame a beat AFTER the page runs, so the first `getBoundsZoom` can be taken\n from a near-empty box: the country opens tiny, and `invalidateSize()` alone\n never re-zooms. This is why nudging the zoom seemed to change nothing. While\n the map is still on the home view, every resize re-frames it; the first\n `movestart` that is not the page\'s own framing ends that. Pass\n `invalidateSize({ pan: false })` so the resize is not counted as a move.\n- **One `showHome()` for every return to the country** \u2014 the opening view, a\n reset, *Fit to leads* with nothing geocoded \u2014 so they cannot drift apart.\n- **`zoomSnap: 0.25`, or the country opens small.** Leaflet zooms in whole steps by\n default, so `fitBounds` settles on the largest WHOLE zoom that still fits \u2014\n in the half-width pane that is one level short, and the country sits small\n in a wide margin, off to one side. Quarter steps let it fill the pane,\n centred. Keep the zoom buttons at whole steps (`zoomDelta` stays 1).\n- **Do NOT fit to the leads on load.** The obvious move is to frame the pins as\n soon as they arrive. It means the board opens on whichever region the rep\'s\n book happens to cluster in, with no sense of the country around it \u2014 and if\n it re-fires on every city change it yanks the view while they are reading.\n Give them a **Fit to leads** button in the toolbar instead, beside *All\n areas*, and let the opening view be France every time (the lower 48, on a US\n workspace). With no geocoded leads the button falls back to France rather\n than doing nothing (the US, on a US workspace).\n\n\n### The lead list: static dividers, one moving thing\n\nBoth lists in the panel \u2014 *Follow-ups on the map* and *Nearby follow-ups* \u2014\nuse the same row. Copy it; it is three rules, and each one is a thing the\nobvious version gets wrong.\n\n```css\n.rows { display: flex; flex-direction: column; gap: 2px; }\n.row-btn {\n position: relative; padding: 9px 10px; margin-inline: -6px;\n border: 0; border-radius: 10px; background: transparent;\n transition: background-color .12s ease;\n}\n.row-btn + .row-btn::before { /* between rows only \u2014 never first or last */\n content: ""; position: absolute; inset-inline: 10px; top: -1px; height: 1px;\n background: var(--line);\n}\n.row-btn:hover, .row-btn:focus-visible { background: color-mix(in srgb, var(--ink) 4%, transparent); }\n.row-btn:active { background: color-mix(in srgb, var(--ink) 8%, transparent); }\n@media (prefers-reduced-motion: reduce) { .row-btn { transition: none; } }\n```\n\n- **The divider never reacts to hover, and never animates.** The tempting\n version fades the line above and below the hovered row so the highlight has\n clean edges. Do not: two rules then fight over one line \u2014 the hovered row\n hides the divider below it while the next row hides the one above it \u2014 so\n the line flickers as the pointer crosses between rows, and scanning the list\n makes lines ripple in and out around the cursor. The animation ends up\n louder than the row it is highlighting. **Only the background moves.**\n- **Space the rows instead of hiding the line.** `gap: 2px` with the hairline\n centred in the gap means the rounded hover block floats in its own space and\n never shares an edge with a divider. There is nothing to hide, so nothing\n has to animate. This is the whole trick.\n- **The divider is inset to the text (`inset-inline: 10px`), not the row.** A\n line that runs wider than the content it separates stops reading as a\n divider and starts reading as a rule across the panel. Pair it with\n `margin-inline: -6px` on the row so the hover block bleeds slightly past\n the text \u2014 inside the panel\'s own 16px padding, which leaves room for the\n focus ring.\n\nUse `.row-btn + .row-btn::before`, not `::after` with a `:last-child`\nexception: a selector that only ever matches BETWEEN rows cannot put a line\nunder the last one, so there is no special case to forget.\n\nStraight-line totals from `lb.routeDistanceKm` are "as the crow flies" \u2014 label\nthem that way rather than implying a drive time.\n\n## Recipe: the LEAD DESK (the default board for working leads)\n\nWhen the rep accepts the board after `leadbay_pull_followups` or\n`leadbay_campaign_call_sheet`, build THIS. It is the relance table below plus\na source picker, and it is the canonical answer to "give me somewhere to work\nthese leads".\n\n```js\nconst source = lb.field({ value: "followups" }); // or "discover" | "campaign"\nconst campaign = lb.campaigns(ASK); // only for the campaign source\nconst sort = lb.sortOrder();\n\nconst list = lb.leadSource({\n kind: source, campaignId: campaign, order: sort, ask: ASK, pageSize: 15,\n});\nlist.subscribe((l) => renderRows(l.items));\n```\n\n`lb.leadSource` owns the two things that differ by source, and only those:\n\n- **The deep link\'s view.** `list.leadUrl(lead)` answers per row \u2014 a Monitor\n lead opened on Discover drops the rep into a list that does not contain it,\n and a campaign row needs `?campaign=<id>&lead=<id>` or it opens an empty\n campaign view.\n- **Sorting.** `leadbay_campaign_call_sheet` has NO `order` param, so the\n order is DROPPED for that source rather than sent and rejected. Hide the\n sort control there too: offering it promises something the tool cannot do.\n\nChanging the source or the sort resets to page 0 \u2014 page 2 of the old list is\nnot page 2 of the new one. Every row is a `lb.relanceRow`, which now carries\ntaste and qualify alongside contacts, status and outreach, so the row is\ncomplete whichever source it came from.\n\n## Recipe: relance table (the follow-up board)\n\n"Give me a table where I can see who to call, reach them, and record what\nhappened." One row per lead, everything in one place. `lb.relanceRow` bundles\nthe row so you wire it once instead of five times:\n\n```js\nconst list = lb.callList({ source: "followups", ask: ASK });\nlist.subscribe((l) => renderRows(l.items));\n\nfunction wireRow(lead, els) {\n const row = lb.relanceRow({\n leadId: lead.id,\n ask: ASK,\n currentStatus: lead.state?.status, // the select opens on it\n });\n\n // CHANNELS \u2014 lazy. The row renders from the list; this fires on the gesture.\n row.contacts.subscribe((c) => renderContacts(els.contacts, c));\n els.reveal.onclick = () => row.contacts.load();\n\n // STATUS \u2014 saves on change, no button.\n lb.bindSelect(els.status, row.status);\n els.status.onchange = () => row.saveStatus.run();\n\n // OUTREACH \u2014 epilogue + note, note required.\n lb.bindSelect(els.epilogue, row.epilogue);\n lb.bindValue(els.note, row.note);\n lb.bindAction(els.log, row.logOutreach);\n}\n```\n\n**Every row\'s lead cell carries its context \u2014 this is not optional.** The row\nresolves it for you when you pass the lead:\n\n```js\nconst row = lb.relanceRow({ leadId: lead.id, ask: ASK, lead });\nrow.context.subscribe((c) => {\n if (!c.data) return;\n els.summary.textContent = c.data.summary ?? ""; // what they do\n if (c.data.phone) els.coPhone.href = "tel:" + c.data.phone;\n if (c.data.email) els.coEmail.href = "mailto:" + c.data.email;\n});\n```\n\nThree rules the component enforces so a row cannot get them wrong:\n\n- **Never print `sector_id`.** It is a raw id (`"5134"`); `lb.sectorLabels()`\n resolves it, fetching the ~1,091-row taxonomy once per page and caching it.\n Unresolvable means the line is OMITTED, never shown raw.\n- **Show the company\'s phone and email when they exist.** A rep who can dial\n the switchboard today should not have to open Leadbay to find out.\n- **Label them as the COMPANY\'s.** `phone_numbers` and `email` on a lead are\n the switchboard, not `recommended_contact`\'s direct line. Rendering\n "Jean \xB7 \u260E 01 23\u2026" claims a line that does not exist.\n\n**A contact\'s LinkedIn is a route, show it.** `lb.relanceRow` flattens\n`linkedin_page` onto each contact, so a contact with no email or phone may\nstill be reachable \u2014 render it beside the other channels. It is deliberately\nNOT counted as reachability by `lb.leadReach`: the two rules answer different\nquestions ("can I contact this person now" vs "how much of the book is\ncallable"), and a URL cannot be dialled.\n\n**Email and phone are NOT on the list payload.** `pull_followups` and\n`campaign_call_sheet` carry `recommended_contact` as a NAME and nothing else;\nthe channels live on `research_lead_by_id` as `contacts.reachable[]`. So a\ntable that renders `\u260E` straight from the list renders nothing, and one that\nprefetches fires a request per row to fill cells the rep may never read.\n`row.contacts` is a lazy Resource for exactly that reason: render the row\ninstantly, load the channels when the rep opens it. Show a **Reveal contact**\ncontrol rather than an empty cell, so the rep knows the data exists.\n\n**Two write systems, both on the row.** `row.saveStatus` writes the org-wide\nCRM outcome (Wanted/Won/Lost/Unwanted); `row.logOutreach` records how THIS\nattempt went (still chasing / could not reach / interested / lost) and drives\nfollow-up ranking. Setting one never sets the other, so when the rep says\n"she\'s interested, meeting booked" both fire. Use `lb.EPILOGUE_LABELS` for the\nselect \u2014 the raw enum values are shouted constants and a rep should not have\nto translate `INTEREST_VALIDATED_OR_MEETING_PLANED` before answering.\n\n**The note is required and the component enforces it.** `report_outreach`\nwithout a note records that something happened and not what; the next rep\nreads an empty follow-up and calls blind.\n\n**A contact with no channel gets an enrich offer, not a dead end.** That is\nthe whole point of showing candidates: they are one purchase away from being\ncallable.\n\n```js\n// wherever a channel is MISSING \u2014 never gate on `enriched`, see below\nif (!c.phone || !c.email) {\n lb.bindAction(els.enrich, lb.enrichContact({\n leadId: lead.id,\n contactId: c.contactId,\n email: () => emailBox.checked, // both default true, as the tool does\n phone: () => phoneBox.checked,\n ask: ASK,\n onDone: () => row.contacts.load(), // \u2190 see below\n }));\n}\n```\n\n`lb.enrichContact` SPENDS QUOTA, so it confirms by default and names the\nspend.\n\n**`window.confirm` does not work in a published artifact.** The iframe is\nsandboxed and the call returns false without showing a dialog, so an action\ncarrying a `confirm` returns early with no error and no message \u2014 a control\nthat silently does nothing. `Action` now reports that case as an error rather\nthan swallowing it, but the fix for a real page is to supply your OWN\nconfirmation: pass `confirm: ""` and arm the button in-page (first click\narms and relabels, second click spends, with a timeout that disarms). Apply\nthe same to the triage board\'s bulk apply, which has the same footgun. Offer\nemail and phone as separate choices rather than always buying both \u2014 the tool\ndefaults both to true and rejects a call with both false, which the component\ncatches before the confirm so nobody approves a spend that cannot happen.\n\n**Never gate the offer on `enriched`.** `enrichment_done` flips true once ANY\nchannel resolves, so a contact enriched for email earlier reads done while\nstill having no phone \u2014 and an org contact can read done carrying nothing at\nall. Hiding the button there hides it on exactly the contacts that need it.\nGate on the CHANNEL being missing, and default each checkbox to the missing\none so a rep cannot re-buy what is already on file.\n\n**The call launches an async job; it does not return a channel.** The real\nresponse is `{triggered: true, email_requested, phone_requested, hint}` \u2014 no\n`ok`, no contact. The reveal lands minutes later, so a UI that expects the\nemail in this result shows the rep nothing.\n\n**Re-read the contacts afterwards; do not patch the row.** For a\n`source:"paid"` candidate the channel lands on a NEW `source:"org"` contact\nwith a DIFFERENT id \u2014 the candidate row itself only flips `enrichment_done`.\nThat is what `onDone` is for.\n\n**Layout.** It is a table, so `lb-table` with `data-num` on any count, and the\nper-row controls stacked in their cell (`lb-stack`) so a select and an input\nshare one width. Keep `lb-msg` out of the control row \u2014 a failed write is the\nmost important thing on that row at that moment.\n\n## Recipe: cold-call sheet (one row per lead)\n\n```js\nconst lb = window.LeadbayArtifacts; lb.configure();\nconst ASK = "<the user\'s request>";\n\nconst list = lb.callList({ source: "campaign", campaignId: CID, ask: ASK });\nlist.subscribe((l) => renderRows(l.items, l.loading)); // your render\n\n// per lead row (call when you build a row):\nfunction wireRow(lead, els) {\n // Note + prospecting toggles, never lb.outreach \u2014 see *Writing from a page*.\n const note = lb.field({ validate: (v) => (v && v.trim() ? null : "Add a note") });\n lb.bindValue(els.note, note);\n lb.bindAction(els.log, lb.note({ leadId: lead.id, note }));\n for (const btn of els.actions) btn.onclick = () => toggle(lead, btn.dataset.value);\n lb.bindAction(els.like, lb.like(lead.id));\n\n // MANDATORY here too \u2014 a rep on the phone is exactly who discovers the\n // qualifier was wrong. The label comes from the lead, never hardcoded.\n els.qualify.textContent = lb.qualifyLabel(lead);\n lb.bindAction(els.qualify, lb.qualify({ leadId: lead.id, ask: ASK }));\n\n const history = lb.leadHistory(lead.id, ASK); // lazy\n history.subscribe((h) => renderHistory(els.history, h));\n els.expand.onclick = () => history.load(); // load on click\n}\n```\n\n## Recipe: lead-status dropdown (Wanted / Won / Lost)\n\nThe org-wide CRM status, as a `<select>` that writes on change \u2014 no Apply\nbutton. You write the markup; `lb.leadStatus` fills the options and holds the\nvalue, `lb.setStatus` does the write.\n\n```html\n<div class="lb-card">\n <div class="lb-card-head">\n <span class="lb-title">Acme Corp</span>\n <span class="lb-chips">\n <span id="taste" class="lb-chip" data-taste="liked">Liked</span>\n <span id="crm" class="lb-chip" data-status="WANTED">Wanted</span>\n </span>\n </div>\n <div class="lb-row">\n <select id="st" class="lb-select" aria-label="Lead status for Acme Corp"></select>\n </div>\n <span id="msg" class="lb-msg" role="status" aria-live="polite"></span>\n</div>\n```\n\n**Two badges, never one.** Taste (`liked`/`disliked`, from `lb.like`/`lb.dislike`)\nand CRM status (`WANTED`/`WON`/`LOST`/`UNWANTED`, from `lb.setStatus`) are\nindependent axes \u2014 a lead can be liked *and* lost. Collapsing them into a single\nchip destroys information: the rep can no longer see that a lead they liked went\nnowhere. Render `data-taste` and `data-status` as separate chips inside\n`lb-chips`, and hide the one that has no value rather than reusing it.\n\n```js\nlb.styles(); // once per artifact \u2014 see below\n\nconst status = lb.leadStatus(lead.org_lead_status); // seed with the CURRENT value\nconst save = lb.setStatus({ leadId: lead.id, status, ask: ASK });\n\nconst sel = document.getElementById("st");\nlb.bindSelect(sel, status); // populates the 4 options\nsel.addEventListener("change", () => save.run()); // change \u2192 write, no button\n\nsave.subscribe((a) => { // render your own feedback\n sel.setAttribute("data-lb-state", // the select IS the surface\n a.loading ? "loading" : a.error ? "error" : a.lastResult ? "success" : "ready");\n msg.textContent = a.loading ? "Saving\u2026"\n : a.error ? a.error.message // includes partial failures\n : a.lastResult ? `Set to ${a.lastResult.status}` : "";\n msg.dataset.tone = a.error ? "error" : a.lastResult ? "ok" : "";\n});\n```\n\nLoading / success / error styling comes free: `bindAction` and `bindSelect` set\n`data-lb-state` (`ready|loading|error|success|unavailable`) and the skin already\ntargets those attributes. No extra wiring.\n\n**Save on change is the default for status.** The rep picks a value and it\nwrites \u2014 one interaction, no second button, matching the web app\'s own status\nselector. Drop `bindAction` and run the action from the change event:\n\n```js\nconst sel = document.getElementById("st");\nsel.addEventListener("change", () => save.run());\nsave.subscribe((a) => { // the select IS the feedback surface\n sel.setAttribute("data-lb-state",\n a.loading ? "loading" : a.error ? "error" : a.lastResult ? "success" : "ready");\n msg.textContent = a.loading ? "Saving\u2026" : a.error ? a.error.message\n : a.lastResult ? "Saved" : "";\n msg.dataset.tone = a.error ? "error" : a.lastResult ? "ok" : "";\n});\n```\n\nWithout a submit button the select becomes the only affordance, so it MUST show\nthe write: mirror `data-lb-state` onto it (the skin already styles loading /\nsuccess / error on `.lb-select`) and put the outcome in the `role="status"`\nline. A silent select leaves the rep unsure whether anything happened.\n\nKeep a submit button ONLY where a mis-click is expensive and the value is not\nself-evident \u2014 a bulk apply across checked rows, for instance, which already\ntakes a `confirm`. For one lead, the extra step buys nothing: the value is\nvisible in the select, and the rep can simply pick again.\n\n**Bulk apply** across checked rows \u2014 pass `leadIds` and a `confirm`, since one\nclick rewrites a field every rep in the org sees:\n\n```js\nconst bulk = lb.setStatus({\n leadIds: () => checkedIds, // \u2190 read at run() time, not at build time\n status, ask: ASK,\n confirm: "Set this status on every selected lead?",\n});\n```\n\n`leadIds` is read when the action runs, so a live selection works \u2014 but pass the\narray itself if your selection is fixed. A partial write (some leads rejected)\nsurfaces as `.error`, never as a green button: `setStatus` checks the `failed[]`\nthe tool returns.\n\nThe backend stamps the status date as "now" on every write, which is what a rep\nclicking a dropdown means. Don\'t add a date picker unless the user asks to\nbackdate \u2014 then pass an optional `date` field holding `YYYY-MM-DD`:\n`lb.setStatus({ leadId, status, date, ask })`.\n\n## Recipe: segment coverage (any dimension)\n\n"How many leads do we have in sector X" is one cheap call: the Monitor filter\nplus `count: 1`, read off `pagination.total`. `lb.segmentCount` wraps a single\nsector/city count; **`lb.coverage` sweeps a whole dimension**.\n\n### One skeleton, many dimensions\n\nSector is not special. Every `FilterCriterion` type the Monitor accepts is a\ncoverage dimension, and one board renders any of them \u2014 the bars, the\ndenominator and the trusted check are all dimension-agnostic:\n\n| Dimension | Criterion | Answers |\n|---|---|---|\n| sector | `{type:"sector_ids", sectors:[id]}` | where the book concentrates |\n| size | `{type:"size", min, max}` | am I an SMB or an enterprise shop |\n| recency | `{type:"last_action_date", \u2026}` | how much has gone cold |\n| liked | `{type:"liked"}` | what the team actually wants |\n| custom field | `{type:"custom_field", key, value}` | the org\'s own taxonomy |\n\n```js\nconst buckets = await lb.coverageBuckets({ // derive, never hardcode\n field: "sector_id",\n labels: SECTORS, // id \u2192 name, embedded\n criterion: (id) => ({ type: "sector_ids", sectors: [id], is_excluded: false }),\n limit: 12,\n ask: ASK,\n});\n\nconst book = await lb.coverageTotal({ ask: ASK }); // unfiltered denominator\nconst rows = await lb.coverage({\n buckets,\n ask: ASK,\n onProgress: (done, total) => (tally.textContent = `measuring ${done}/${total}\u2026`),\n});\n\nfor (const r of rows) {\n if (!r.trusted) renderUnmeasured(r); // never chart it\n else renderBar(r.label, r.total, r.total / book.total);\n}\n```\n\nThree things `lb.coverage` owns, each of which a hand-rolled sweep gets wrong:\n\n- **Sequential, not a parallel burst.** A filtered count is 1\u20132s, but a\n `last_action_date` criterion was observed at **54s** on a 3.6k segment.\n Twelve of those at once is a hung page; `onProgress` is there so the sweep\n is visible instead.\n- **The complete criteria set per call.** The stored filter is ONE\n server-side slot and cumulative, so a delta leaves the previous bucket\'s\n criterion in force and every bar becomes a subset of the one before it.\n- **Per-bucket verification.** One rejected criterion must not poison a\n neighbour\'s number, and a bucket that throws becomes an unmeasured row\n rather than aborting the other eleven.\n\n### Reachability \u2014 the segment that says what to BUY\n\nEvery dimension above slices a book the rep may not be able to call. This one\nsays whether they can call it at all, and it is usually the first board worth\nbuilding on an imported book:\n\n```js\nconst r = await lb.reachCoverage({ ask: ASK }); // one call\nrenderBars(r.rows);\nnote.textContent = `sampled ${r.sampled} of ${r.bookTotal}`;\n```\n\nThree buckets, and the middle one is the answer:\n\n| Bucket | Means | Next move |\n|---|---|---|\n| Callable now | a company phone or email exists | work it |\n| **Contacts, no channel** | people known, nothing dialable | **enrich \u2014 this is the spend** |\n| No contacts | neither | discovery first |\n\n**`contacts_count > 0` is NOT reachability**, and `lb.leadReach` exists so no\nboard gets this wrong. It counts known PEOPLE, not people you can dial \u2014 a\nlead can show 2,518 contacts and zero channels. Charting `contacts_count`\ntells a rep they have a pipeline when they have a phone book with no numbers.\nA `linkedin_page` is not reachability either. And the API returns the literal\nstring `"null"` in `phone_numbers` and `email`, which counts as a channel\nunless guarded \u2014 the one error that would make this board actively harmful,\nby overstating the callable book.\n\n**This one is SAMPLED, unlike every other dimension.** Reachability is not a\n`FilterCriterion`, so there is no cheap `pagination.total` for it: the counts\ncome from classifying real leads on one page. `bookTotal` is the real\ndenominator (it rides along on the same call, so this costs ONE request), and\n`sampled` says over how many. Label it as an estimate \u2014 "\u224862% of 7,078,\nsampled over 200" \u2014 never as an exact count.\n\n### What you cannot count this way\n\nA dimension is countable only if the Monitor can FILTER by it. Anything\nneeding per-lead values \u2014 a score histogram, a density map \u2014 has no\naggregation endpoint and means paging the whole book (732 pages for 3,656\nleads). Sample the tails instead (`order: "SCORE:ASC"` / `"SCORE:DESC"`, a few\nhundred each) and **label the chart as a sample with its n**, or do not draw\nit.\n\n### Never hardcode the sector list\n\nA board that offers sectors must offer the ones the user HOLDS. Typing a few\nids into the markup gets this wrong in both directions \u2014 one real portfolio\'s\nhand-written list offered a sector holding 3 leads while omitting the\nthird-largest at 555.\n\nThere is no group-by on the Monitor, but every lead carries `sector_id`, so one\npage of followups names the sectors that matter:\n\n```js\n// SECTORS is { id: label }, embedded at BUILD time from leadbay_list_sectors.\n// The visible taxonomy is ~1,346 entries and does not change between runs, so\n// fetching it per page load buys nothing.\nconst held = await lb.portfolioSectors({ sectors: SECTORS, ask: ASK });\nfor (const s of held) {\n const opt = document.createElement(\'option\');\n opt.value = s.id;\n opt.textContent = s.label; // falls back to `Sector <id>` when unresolved\n sel.appendChild(opt);\n}\n```\n\n`sampled` is a SAMPLE count, for ordering the list. It is not the user\'s total\n\u2014 call `lb.segmentCount` for the exact figure once a sector is picked.\n\n**The taxonomy\'s `number_of_leads` is the WHOLE MARKET, not this user\'s book.**\nSupermarch\xE9s reads 11,460 nationally against 3,656 in one real portfolio, and\nSup\xE9rettes 5,710 against 143. Wiring a dropdown to that field ranks sectors the\nuser barely holds above ones they live in. Use it as a denominator if you are\nexplicitly showing market coverage, and label it as such \u2014 never present it as\nthe user\'s number.\n\n```js\nconst supermarkets = await lb.segmentCount({ sectorIds: ["5134"], ask: ASK });\n// \u2192 { total: 3656, applied: [...], trusted: true }\n```\n\n**Two traps, both observed against the live API \u2014 a hand-rolled version hits\nboth:**\n\n1. **The filter is server-side and STATEFUL.** `set_filter` overwrites ONE\n stored FilterItem per user, so consecutive calls are not independent: the\n next one inherits what the last one stored. Always send the complete\n criteria set, never a delta, and never assume a fresh call starts clean.\n2. **A rejected criterion fails SILENTLY.** Send a malformed criterion and the\n call returns **200 with the PREVIOUS filter still applied** \u2014 a plausible\n number answering a different question. `segmentCount` compares the echoed\n `active_filters` against what it sent and returns `trusted: false` on a\n mismatch. Never chart an untrusted count; say the segment could not be\n measured instead.\n\n The echo must match the request in BOTH directions. Every criterion asked\n for has to come back \u2014 a `city` / `cityId` as a `location_ids` criterion,\n since the composite resolves the free text through `/geo/search` into a type\n you never sent \u2014 and **nothing may come back that was not asked for**. The\n stored filter is cumulative, so narrowing a segment (sector+city \u2192 sector\n alone) leaves the dropped criterion in force: the count stays fenced to a\n city nobody asked about while every requested type is dutifully present. An\n unrequested criterion narrows a count exactly as a dropped one widens it.\n That rule also covers the unfiltered call on its own terms \u2014 with nothing\n wanted, "nothing extra" is "the echo is empty", which is what makes a\n whole-book denominator trustworthy.\n\n Sector VALUES are compared too, since a stale sector filter is still a sector\n filter. Locations are checked for presence only: the server picks the\n `admin_area_id` from free text, so the caller has nothing to compare against.\n\n**What you cannot build this way.** A score histogram needs every lead\'s\n`ai_agent_lead_score`, and there is no aggregation endpoint \u2014 bucketing 3,656\nleads means 732 pages. Sample the tails instead (`order: "SCORE:ASC"` and\n`"SCORE:DESC"`, a few hundred each) and **label the chart as a sample with its\nn**, or do not draw it. The same applies to a density map: coordinates are on\nevery lead, but aggregating thousands of points client-side is a batch job, not\na dashboard. Both want a backend stats endpoint.\n\n**Budget the calls.** A filtered count is normally 1\u20132 s, but adding a\n`last_action_date` criterion was observed at **54 s** on a 3.6k segment. Fire\nsegments in sequence with a visible progress cue, not a parallel burst, and\nnever block the first paint on them.\n\n## Recipe: manager dashboard\n\n`lb.teamActivity` returns `{range, reps, trend}`. A manager reads before they\nact, so the page is three bands in that order: the figures, the trend behind\nthem, then the per-rep table.\n\n```html\n<div class="lb-tiles"> <!-- only figures that ARE the point -->\n <div class="lb-tile"><span class="lb-tile-label">Activities</span>\n <span class="lb-tile-value">0</span></div>\n <!-- meetings / notes / contacts added \u2026 -->\n</div>\n\n<svg class="lb-chart" viewBox="0 0 640 160" role="img"\n aria-label="Weekly activity, 24 Jun to 16 Sep">\u2026</svg>\n\n<table class="lb-table">\n <thead><tr>\n <th aria-sort="none">Rep</th>\n <th data-num aria-sort="descending">Activities</th>\n <th data-num aria-sort="none">Meetings</th>\n </tr></thead>\n <tbody><tr aria-selected="false">\u2026</tr></tbody>\n</table>\n```\n\n```js\nconst team = lb.teamActivity({ weeks: 4, ask: ASK });\nteam.subscribe((t) => {\n if (t.error) { renderError(t.error); return; } // .code says what to do\n if (!t.data) return; // first load\n const { reps, trend, range } = t.data;\n const sum = (k) => reps.reduce((a, r) => a + (r[k] || 0), 0);\n\n stage.replaceChildren(\n lb.tiles([\n { label: "Activities", value: sum("total_activities") },\n { label: "Meetings", value: sum("meetings_or_interest") },\n { label: "Notes", value: sum("notes") },\n ]),\n lb.sparkline(trend, { // [] \u2192 the empty block\n label: `Activity from ${range.from} to ${range.to}`,\n emptyTitle: "No activity in this window",\n emptyHint: `Nothing logged between ${range.from} and ${range.to}. Widen the window.`,\n }),\n lb.leaderboard({\n rows: reps,\n sortKey: "total_activities",\n columns: [\n // reps[] carries email and nothing else \u2014 a mailto is the honest\n // affordance, since no MCP tool messages a rep.\n { key: "name", label: "Rep", cell: (r) => {\n const a = document.createElement("a");\n a.href = `mailto:${r.email}`; a.textContent = r.name || r.email;\n return a;\n } },\n { key: "total_activities", label: "Activities", num: true },\n { key: "meetings_or_interest", label: "Meetings", num: true },\n { key: "lost", label: "Lost", num: true },\n ],\n emptyTitle: "No reps in this window",\n emptyHint: "The backend scopes non-admins to themselves.",\n }),\n );\n});\nrefreshBtn.onclick = () => team.refresh();\n```\n\nFive things this gets right that a hand-built dashboard usually does not:\n\n- **An empty window is a real answer.** A quiet team returns `total_activities:\n 0` for every rep and `trend: []` \u2014 the common case on a new account. Draw\n `lb-empty` with what it means ("no activity logged in this window") and a way\n out (widen the range), never empty axes, which read as a broken chart.\n- **Chart from the tokens, not a CDN.** `lb-chart` styles an inline SVG from\n the theme, so it reads in light and dark. A hardcoded stroke disappears in\n one of the two, and a CDN chart that fails to load shows nothing at all \u2014 a\n sparse weekly series does not earn the dependency.\n- **Sorting is CLIENT-side here**, unlike a lead list: `reps` is the whole team\n in one response, so re-sorting reorders data you already hold. Reflect it in\n `aria-sort` on the header, not only with an arrow.\n- **Tabular numerals on every count** (`data-num`), or the columns will not\n line up and the leaderboard cannot be scanned down.\n- **Name the window.** `range.from`/`range.to` are resolved server-side and may\n not match what was asked for; printing them is what makes the figures\n auditable.\n\n**Writing to a rep is not in this payload.** `reps[]` carries `user_id`, `name`\nand `email` \u2014 enough to open a mail client with `mailto:`, and nothing more.\nThere is no MCP tool that messages a rep, so do not render a "message" button\nthat silently does nothing; a `mailto:` link is the honest affordance until\none exists.\n\n## Recipe: live enrichment\n\n```js\nconst job = lb.enrichment({ leadIds: [LEAD], titles: ["CEO", "VP Sales"], ask: ASK });\njob.subscribe((j) => {\n const p = j.data && j.data.overall_progress; // {done,total,done_ratio}\n renderBar(p);\n if (j.done) renderContacts(j.data.leads); // enriched contacts\n});\nrefreshBtn.onclick = () => job.refresh();\n```\n\n## Write-call rules\n\nThe domain factories handle these for you. A page\'s buttons never call\n`leadbay_report_outreach` \u2014 see *Writing from a page*; the rule below is for\nan agent logging an outreach itself. If you hand-roll an action:\n`leadbay_report_outreach` args MUST include `verification:{source:"user_confirmed", ref}`\nAND `_triggered_by`; `leadbay_add_leads_to_campaign` needs `_triggered_by`;\n`add_note`/`like_lead`/`dislike_lead` take only their own args. `epilogue_status` is\none of `lb.EPILOGUE_STATUSES`. Snoozing (pushback) is advanced-gated \u2014 not\ncallable from a default artifact. Org lead status IS on the default surface:\nuse `lb.setStatus`, which owns the arg shape AND the partial-write check \u2014\n`leadbay_set_lead_status` writes each lead separately, so it can resolve 200\nwith a non-empty `failed[]`. Hand-rolling that action will report a green\nbutton over a write that never landed.\n\n## Degradation + live updates\n\nIf the host bridge is absent, a view-model\'s `.error` is set with `.error.unavailable\n=== true` (bind helpers set `data-lb-state="unavailable"`) \u2014 nothing throws. Every\ncall also has a **30s timeout** (configurable via `lb.configure({ timeoutMs })`): a\nhost call that never settles becomes `.error` with `code:"timeout"`, so a control is\nnever stuck loading forever \u2014 always render the `.error` branch so the user can retry.\nAuto-poll (`pollEvery`) depends on the cowork host serving FRESH reads; `.refresh()`\nis the guaranteed manual path \u2014 always wire a Refresh control for polling resources.\n\n\n## Runtime diagnostics (automatic \u2014 you do not wire this)\n\nThe runtime reports its own failures to the Leadbay team so a broken artifact\ndoes not stay invisible: a picker that loads zero options, a button blocked by\nvalidation, a call that timed out, failed, came back as an error envelope, or\nanswered with unparseable text. It sends these itself, over the same bridge,\ndeduped and capped \u2014 **you do not need to add anything**, and you should not\ncall `leadbay_report_artifact_error` yourself.\n\nOnly bounded values travel: the failure kind, which view-model surfaced it, the\ntool name, an error code, and the kit version. Never a message, never user text,\nnever anything the user typed. A user who has turned telemetry off with\n`leadbay_set_telemetry` sends nothing at all.\n\nTwo knobs, both optional. `lb.setTelemetry(false)` opts a page out entirely.\n`lb.report({kind, surface, tool?, code?})` reports a failure the library cannot\nsee \u2014 a render that threw, or a control you wired by hand rather than through a\nview-model. Everything else is automatic.\n\nThis is NOT the way to report a problem the USER raised. If the rep tells you\nthe artifact is wrong and asks you to pass it on, that is\n`leadbay_report_friction`, which carries their own words and needs their\nconsent.';
|
|
27488
|
+
ARTIFACT_RUNTIME = '"use strict";(()=>{var ke=Object.defineProperty;var ve=(e,t,n)=>t in e?ke(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var b=(e,t,n)=>ve(e,typeof t!="symbol"?t+"":t,n);var Y=`\n:root{\n--color-black:#191919;--color-white:#fff;\n--color-gray-1:#f9f9f9;--color-gray-2:#f0f0f0;--color-gray-3:#e0e0e0;--color-gray-4:#cecece;\n--color-gray-5:#c4c4c4;--color-gray-6:#8d8d8d;--color-gray-7:#787878;--color-gray-8:#646464;\n--color-gray-9:#202020;\n--color-linkedin:#0a66c2;\n--color-blue-background:oklch(0.947 0.029 251);--color-blue-foreground:oklch(0.564 0.181 251);\n--color-green-background:oklch(0.947 0.029 141);--color-green-foreground:oklch(0.564 0.181 141);\n--color-red-background:oklch(0.947 0.029 26);--color-red-foreground:oklch(0.564 0.191 26);\n--color-gold-background:oklch(0.972 0.049 91);--color-gold-foreground:oklch(0.667 0.177 91);\n/* Yellow is the web app\'s "Could not reach" prospecting action. Its\n foreground is light (0.864) by design: the web app uses it for icons and\n borders on the tinted background, never as text on white. */\n--color-yellow-background:oklch(0.972 0.054 91);--color-yellow-foreground:oklch(0.864 0.181 91);\n--color-yellow-border:color-mix(in oklch,var(--color-yellow-foreground),transparent 65%);\n--color-cherry-background:oklch(0.947 0.029 15);--color-cherry-foreground:oklch(0.44 0.146 15);\n/* Purple carries the product\'s "AI" affordance (Qualify / Requalify). The\n border is the foreground at 65% transparency, exactly as the style package\n derives every *-border token. */\n--color-purple-background:oklch(0.947 0.029 288);--color-purple-foreground:oklch(0.464 0.181 288);\n--color-purple-border:color-mix(in oklch,var(--color-purple-foreground),transparent 65%);\n/* Teal carries the qualifier\'s intent tags, as the product\'s taste-profile\n tags do. Border derived at 65% transparency, like every *-border token. */\n--color-teal-background:oklch(0.977 0.019 180);--color-teal-foreground:oklch(0.574 0.182 180);\n--color-teal-border:color-mix(in oklch,var(--color-teal-foreground),transparent 65%);\n--color-red-like:var(--color-cherry-foreground);\n--lb-font:"Nikkei Maru",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;\n/* Concentric: outer = inner + padding (0.625 + 0.875 = 1.5rem). The card\'s\n padding is what closes this equation, so the two move together \\u2014 see\n .lb-card, which pads 0.875rem for exactly this reason. */\n--lb-radius:1.5rem;--lb-radius-sm:0.625rem;--lb-gap:0.75rem;\n--lb-surface:var(--color-gray-1);--lb-border:var(--color-gray-3);\n--lb-fg:var(--color-black);--lb-muted:var(--color-gray-8);--lb-field:var(--color-white);\n/* Chips and shadows need their own aliases: a chip painted with a raw ramp\n value cannot theme, and a shadow tinted with --color-gray-9 is invisible in\n dark because gray-9 IS the dark surface. */\n--lb-chip-bg:var(--color-gray-2);\n/* The page ground behind the cards. A raw ramp value here cannot theme: in\n dark mode --lb-fg turns white and a #f0f0f0 ground kept the page title\n white on light grey (seen in ChatGPT, which marks the frame dark). */\n--lb-page-bg:var(--color-gray-2);\n--lb-control-border:var(--color-gray-6);\n--lb-shadow:0 0.5rem 1.5rem oklch(0 0 0/.06),0 0.125rem 0.5rem oklch(0 0 0/.04);\ncolor-scheme:light;\n/* macOS renders text heavier than intended. This belongs once on the root,\n never per component \\u2014 an artifact that injects this sheet gets it for free\n instead of each page re-declaring it on its own body. */\n-webkit-font-smoothing:antialiased;\n-moz-osx-font-smoothing:grayscale;\n}\n:root[data-theme=dark],:root[data-lb-theme=dark]{\n--lb-surface:var(--color-gray-9);--lb-border:var(--color-gray-8);\n--lb-fg:var(--color-white);--lb-muted:var(--color-gray-3);\n/* --lb-field must NOT equal --lb-surface: a control needs its own ground or it\n reads as text on the card (was 1.00:1). */\n--lb-field:#2c2c2c;\n--lb-chip-bg:#3b3b3b;\n--lb-page-bg:#161616;\n--lb-control-border:var(--color-gray-6);\n--lb-shadow:0 0.5rem 1.5rem oklch(0 0 0/.5),0 0.125rem 0.5rem oklch(0 0 0/.35);\ncolor-scheme:dark;\n--color-blue-background:oklch(0.30 0.055 251);--color-blue-foreground:oklch(0.80 0.11 251);\n--color-green-background:oklch(0.30 0.055 141);--color-green-foreground:oklch(0.80 0.13 141);\n--color-red-background:oklch(0.30 0.060 26);--color-red-foreground:oklch(0.80 0.11 26);\n--color-gold-background:oklch(0.30 0.055 91);--color-gold-foreground:oklch(0.82 0.13 91);\n--color-yellow-background:oklch(0.30 0.055 91);--color-yellow-foreground:oklch(0.86 0.14 91);\n--color-cherry-background:oklch(0.30 0.055 15);--color-cherry-foreground:oklch(0.82 0.10 15);\n--color-purple-background:oklch(0.30 0.055 288);--color-purple-foreground:oklch(0.82 0.11 288);\n--color-teal-background:oklch(0.30 0.055 180);--color-teal-foreground:oklch(0.82 0.11 180);\n}\n@media(prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-lb-theme=light]){\n--lb-surface:var(--color-gray-9);--lb-border:var(--color-gray-8);\n--lb-fg:var(--color-white);--lb-muted:var(--color-gray-3);\n/* --lb-field must NOT equal --lb-surface: a control needs its own ground or it\n reads as text on the card (was 1.00:1). */\n--lb-field:#2c2c2c;\n--lb-chip-bg:#3b3b3b;\n--lb-page-bg:#161616;\n--lb-control-border:var(--color-gray-6);\n--lb-shadow:0 0.5rem 1.5rem oklch(0 0 0/.5),0 0.125rem 0.5rem oklch(0 0 0/.35);\ncolor-scheme:dark;\n--color-blue-background:oklch(0.30 0.055 251);--color-blue-foreground:oklch(0.80 0.11 251);\n--color-green-background:oklch(0.30 0.055 141);--color-green-foreground:oklch(0.80 0.13 141);\n--color-red-background:oklch(0.30 0.060 26);--color-red-foreground:oklch(0.80 0.11 26);\n--color-gold-background:oklch(0.30 0.055 91);--color-gold-foreground:oklch(0.82 0.13 91);\n--color-yellow-background:oklch(0.30 0.055 91);--color-yellow-foreground:oklch(0.86 0.14 91);\n--color-cherry-background:oklch(0.30 0.055 15);--color-cherry-foreground:oklch(0.82 0.10 15);\n--color-purple-background:oklch(0.30 0.055 288);--color-purple-foreground:oklch(0.82 0.11 288);\n--color-teal-background:oklch(0.30 0.055 180);--color-teal-foreground:oklch(0.82 0.11 180);\n}}\n/* 0.875rem padding is not arbitrary: it closes the concentric equation with\n --lb-radius (1.5rem) and --lb-radius-sm (0.625rem). Changing it without\n moving --lb-radius leaves a control\'s arc running wider than the card\'s in\n the corner. */\n.lb-card{display:grid;gap:var(--lb-gap);padding:0.875rem;\nbackground-color:var(--lb-surface);border:1px solid var(--lb-border);\nborder-radius:var(--lb-radius);corner-shape:squircle;color:var(--lb-fg);\nfont-family:var(--lb-font);\nbox-shadow:var(--lb-shadow)}\n/* \\u2500\\u2500 Card layout \\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\n A lead card is a stack of SECTIONS, each a titled block (Fit, Intent tags,\n Data, Status, Outreach). One wrapper owns the rhythm \\u2014 16px between\n sections, 8px between the items inside one \\u2014 so a section can be added,\n removed or reordered without touching spacing, and no margin can collapse.\n Every artifact that builds cards gets the same geometry from here rather\n than hand-rolling it. */\n.lb-sections{display:flex;flex-direction:column;gap:1rem}\n.lb-section{display:grid;gap:0.5rem}\n/* A section title: black, uppercase, tracked. It names the block below it, so\n it must sit at SECTION level \\u2014 nested inside a row it stops being a peer of\n the other titles and the card loses its scan order. */\n.lb-sec-title{font-size:0.75rem;font-weight:700;letter-spacing:.08em;\ntext-transform:uppercase;color:var(--lb-fg);line-height:1.4;\ntext-wrap:balance}\n/* Header row: leading control (a bulk checkbox), the title, then trailing\n controls (taste) pushed to the far edge. */\n.lb-card-top{display:flex;align-items:center;gap:0.625rem;flex-wrap:wrap}\n.lb-card-top>.lb-group{flex:0 0 auto;margin-inline-start:auto}\n.lb-card-top>input[type=checkbox]{flex:0 0 auto;width:1rem;height:1rem;margin:0}\n/* The company name. Bold and underlined so it reads as the card\'s subject and\n as a link, without competing with the uppercase section titles. */\n/* text-wrap:balance keeps a two-line company name from breaking one-word-over;\n the underline takes its position and thickness from the font\'s own metrics\n rather than wherever the browser puts them, and skip-ink clears descenders. */\n.lb-lead-title{flex:1 1 9rem;min-width:0;font-size:0.9375rem;font-weight:700;\nline-height:1.3;color:var(--lb-fg);text-wrap:balance;text-decoration:underline;\ntext-underline-position:from-font;text-decoration-thickness:from-font;\ntext-underline-offset:2px;text-decoration-skip-ink:auto;overflow-wrap:break-word}\n.lb-lead-title a{color:inherit;text-decoration:inherit}\n/* Controls in a section stack, each spanning it, so every control on the card\n shares one leading edge and one width. Three different widths across a row\n read as three unrelated things. */\n.lb-section>.lb-select,.lb-section>.lb-input,\n.lb-stack>.lb-select,.lb-stack>.lb-input,.lb-stack>.lb-btn{width:100%;min-width:0}\n/* Footer: a leading action, a spacer, a trailing escape hatch. */\n.lb-card-foot{display:flex;align-items:center;gap:0.625rem;\npadding-block-start:0.875rem;border-block-start:1px solid var(--lb-border)}\n.lb-card-foot .lb-spacer{flex:1 1 auto}\n/* \\u2500\\u2500 Toolbar \\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\n The bar above a deck of cards: a tally, the controls that narrow what is\n shown, and the controls that act on a selection. Those are three different\n jobs, so they are three groups \\u2014 0.5rem within one, 1.5rem between \\u2014 rather\n than one flat row where "apply to selected" reads as another filter.\n Concentric: it pads 0.75rem around controls that round at 0.625rem, so it\n rounds at 1.375rem. */\n.lb-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:0.75rem 1.5rem;\npadding:0.75rem 1rem;background-color:var(--lb-surface);\nborder:1px solid var(--lb-border);border-radius:1.375rem;corner-shape:squircle;\nfont-family:var(--lb-font);color:var(--lb-fg)}\n.lb-toolbar .lb-group{gap:0.5rem}\n/* A labelled control stacks: caption above, control below, as a card section\n does. One label pattern across the whole artifact. */\n.lb-field{display:inline-flex;flex-direction:column;align-items:flex-start;\ngap:0.25rem;font-size:0.8125rem;line-height:1.4;color:var(--lb-muted);\nwhite-space:nowrap}\n/* A checkbox belongs BESIDE its words \\u2014 under a caption it reads as orphaned. */\n.lb-field-inline{flex-direction:row;align-items:center;gap:0.5rem}\n/* A control\'s caption is not body copy: it names the control, so it takes the\n same treatment as a card\'s section title. */\n.lb-field-label{font-size:0.75rem;font-weight:700;letter-spacing:.08em;\ntext-transform:uppercase;color:var(--lb-fg)}\n/* A labelled field sizes to its own content, so width:100% on the control\n inside only fills whatever the field already became. Two fields side by side\n still come out unequal \\u2014 they have no shared reference to be equal against.\n Give the FIELD the basis: flex:1 1 9rem makes every labelled field claim the\n same share of the row, so a select and a text input beside it match. */\n.lb-field{flex:1 1 9rem;min-width:9rem;max-width:16rem}\n.lb-field>.lb-select,.lb-field>.lb-input{width:100%;min-width:0}\n/* An inline field holds a checkbox, not a sized control: natural width, no floor. */\n.lb-field-inline{flex:0 0 auto;min-width:0;max-width:none}\n.lb-field-inline>*{min-width:0;width:auto;flex:0 0 auto}\n/* Readouts sit on the control baseline, not the caption\'s. */\n.lb-toolbar .lb-tally,.lb-toolbar .lb-status{align-self:center}\n.lb-tally{font-size:0.8125rem;line-height:1.4;color:var(--lb-muted);\nfont-variant-numeric:tabular-nums;white-space:nowrap}\n/* Connection state, never carried by colour alone: live is a filled dot, dead\n a hollow ring, so the two differ in shape as well as hue \\u2014 a red and a green\n circle are the same circle to a colour-blind reader, and identical under\n forced colours. */\n.lb-status{display:inline-flex;align-items:center;gap:0.5rem;\nfont-size:0.75rem;line-height:1.4;color:var(--lb-muted);white-space:nowrap}\n.lb-status-dot{width:0.5rem;height:0.5rem;border-radius:50%;flex:none;\nbackground-color:var(--color-gray-5);border:2px solid transparent}\n.lb-status[data-live=yes] .lb-status-dot{background-color:var(--color-green-foreground)}\n.lb-status[data-live=no] .lb-status-dot{background-color:transparent;\nborder-color:var(--color-red-foreground)}\n/* \\u2500\\u2500 Pager \\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\n Below a deck, never above it: the rep reads the rows, then decides whether\n to go on. The range ("21\\u201340 of 60") is the honest label \\u2014 "page 2" alone\n does not say how much is left, and a rep who cannot see the end cannot tell\n a short lens from a long one. Tabular, because the numbers change. */\n.lb-pager{display:flex;align-items:center;gap:0.75rem;flex-wrap:wrap}\n.lb-pager .lb-spacer{flex:1 1 auto}\n.lb-pager-range{font-size:0.8125rem;line-height:1.4;color:var(--lb-muted);\nfont-variant-numeric:tabular-nums;white-space:nowrap}\n/* \\u2500\\u2500 Metrics + chart \\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\n A manager dashboard reports before it lists: a row of figures, then the\n trend behind them, then the per-rep table. Tiles are for the few numbers\n that ARE the point \\u2014 a tile per field turns a dashboard into a wall. */\n.lb-tiles{display:grid;gap:0.75rem;\ngrid-template-columns:repeat(auto-fit,minmax(min(9rem,100%),1fr))}\n.lb-tile{display:grid;gap:0.25rem;padding:0.75rem 0.875rem;\nbackground-color:var(--lb-field);border:1px solid var(--lb-border);\nborder-radius:1.375rem;corner-shape:squircle}\n.lb-tile-label{font-size:0.75rem;font-weight:700;letter-spacing:.08em;\ntext-transform:uppercase;color:var(--lb-muted);line-height:1.4}\n.lb-tile-value{font-size:1.5rem;font-weight:700;line-height:1.15;\ncolor:var(--lb-fg);font-variant-numeric:tabular-nums}\n/* The chart draws from the theme tokens, so it reads in light and dark alike;\n a hardcoded stroke disappears on one of the two. Inline SVG rather than a\n CDN library: a sparse weekly series does not earn 200KB, and an artifact\n that silently fails to load its chart shows nothing at all. */\n.lb-chart{display:block;width:100%;height:auto}\n.lb-chart .lb-chart-grid{stroke:var(--lb-border);stroke-width:1}\n.lb-chart .lb-chart-line{fill:none;stroke:var(--color-blue-foreground);stroke-width:2;\nstroke-linejoin:round;stroke-linecap:round}\n.lb-chart .lb-chart-area{fill:var(--color-blue-background);opacity:.55}\n.lb-chart .lb-chart-dot{fill:var(--color-blue-foreground)}\n/* Axis labels are UI text and take the same 12px floor as everything else \\u2014\n a chart is not a licence to shrink type below what is readable. */\n.lb-chart text{fill:var(--lb-muted);font-family:var(--lb-font);font-size:0.75rem}\n/* An empty series is a real answer, not a failure: say so in place of the\n chart rather than drawing empty axes that look broken. */\n.lb-empty{display:grid;place-items:center;gap:0.25rem;padding:1.5rem 1rem;\nbackground-color:var(--lb-field);border:1px dashed var(--lb-border);\nborder-radius:1.375rem;corner-shape:squircle;text-align:center}\n.lb-empty-title{font-size:0.8125rem;font-weight:600;color:var(--lb-fg);line-height:1.4}\n.lb-empty-hint{font-size:0.78125rem;color:var(--lb-muted);line-height:1.45;max-width:44ch}\n/* A page flip replaces the whole deck, so the rows must read as pending or the\n rep cannot tell a slow page from a finished one. Dim and lock the deck\n rather than blanking it: keeping the old rows on screen preserves the\n scroll position and the sense of place. */\n.lb-deck[data-lb-state=loading]{opacity:.55;pointer-events:none}\n/* The head must be able to wrap. Both children default to flex:0 1 auto, so\n without this they shrink together and a long company name is crushed to three\n lines while the chips keep full width. flex-basis:11rem is a content breakpoint:\n below ~176px for the title, the chips drop to their own line instead. */\n.lb-card-head{display:flex;flex-wrap:wrap;justify-content:space-between;\nalign-items:baseline;gap:var(--lb-gap)}\n/* An email or URL has no break opportunity \\u2014 browsers do not break at "@" or\n ".", so without this a company address escapes the card and the chat host\n clips it with no way to recover the tail. */\n.lb-title{font-size:0.875rem;font-weight:600;line-height:1.3;color:var(--lb-fg);\noverflow-wrap:break-word;min-width:0;flex:1 1 11rem}\n/* pretty stops a lone word landing on the last line of a why-it-fits sentence\n or a fact \\u2014 the orphan that makes a card look unfinished. */\n.lb-sub{font-size:0.8125rem;line-height:1.45;color:var(--lb-muted);\ntext-wrap:pretty;overflow-wrap:break-word;max-width:68ch}\n/* An empty fact line is a 30px void that reads as a rendering bug. */\n.lb-sub:empty{display:none}\n/* The tightest group on the card: consecutive data lines (the contact, then\n the company switchboard) are one block, so they sit at HALF the section\'s\n own 8px. That 2x ratio is what makes them read as a unit rather than as\n separate facts \\u2014 the same rule .lb-section applies one level up against\n .lb-sections\' 16px. The scale halves at each level: 16 \\u2192 8 \\u2192 4. */\n.lb-facts{display:grid;gap:0.25rem}\n/* The contract\'s canonical skeleton already emits data-why; the sheet just did\n not honour it, so consumers hand-patched an inline font-style. */\n.lb-sub[data-why]{font-style:italic;color:var(--lb-fg)}\n/* Icon column: the glyph gets its own cell so a wrapping line hangs on one\n shared text edge instead of running back under the emoji. */\n.lb-fact{display:grid;grid-template-columns:1.15rem 1fr;gap:0.35rem;align-items:baseline}\n.lb-row{display:flex;align-items:center;gap:var(--lb-gap);flex-wrap:wrap}\n/* row-gap matters once the row wraps: without it the wrapped line sits flush\n against the one above. */\n.lb-row{row-gap:0.5rem}\n/* 8px, matching .lb-section \\u2014 a stack inside a section must not space its\n controls wider than the section spaces its own children. */\n.lb-stack{display:grid;gap:0.5rem}\n/* A select is border-box by UA default; a text input is content-box. Given the\n same width, padding and border, the input therefore renders ~2rem wider \\u2014 the\n padding lands outside its box and inside the select\'s. Neither is wrong on its\n own; they just cannot be sized together until they agree. Every control the\n kit styles is border-box, so a declared width is the width that shows. */\n.lb-btn,.lb-select,.lb-input{box-sizing:border-box}\n.lb-select,.lb-input{font:inherit;font-family:var(--lb-font);font-size:0.8125rem;color:var(--lb-fg);\nbackground-color:var(--lb-field);border:1px solid var(--lb-control-border);\nborder-radius:var(--lb-radius-sm);corner-shape:squircle;padding:0.4rem 0.55rem;min-height:2.125rem}\n/* Geometry, states and motion ported from the product\'s Button component\n (packages/ui/components/Button) so an artifact button and an app button are\n the same object. MUI spacing is 8px/unit, so its size=medium (py .875,\n px .875, borderRadius .875) is 7px/7px/7px and large (py 1.75, px 2,\n borderRadius 1.25) is 14px/16px/10px. A control sitting in a row beside a\n select reads as medium, so that is the default here; .lb-btn-lg opts into\n large. The app\'s default variant is secondary \\u2014 white ground, gray-5\n border, black text \\u2014 which is what an unadorned .lb-btn already was. */\n.lb-btn{font:inherit;font-family:var(--lb-font);font-size:0.8125rem;font-weight:600;\ncolor:var(--color-black);background-color:var(--color-white);\nborder:1px solid var(--color-gray-5);\nborder-radius:0.4375rem;corner-shape:squircle;padding:0.4375rem 0.4375rem;min-height:2.125rem;\ncursor:pointer;user-select:none;-webkit-user-select:none;text-wrap:nowrap;\nfont-variant-numeric:tabular-nums;\ntransition:background-color .16s ease,border .16s ease,color .16s ease,\nopacity .16s ease,transform .16s cubic-bezier(0.23,1,0.32,1)}\n/* The app hovers the GROUND to gray-2, not the border. */\n@media (hover:hover){\n.lb-btn:hover:not([disabled]):not([data-lb-state=loading]){\nbackground-color:var(--color-gray-2)}}\n/* Front-loaded press, so the tap leads the colour crossfade. */\n.lb-btn:active:not([disabled]):not([data-lb-state=loading]){transform:scale(0.97)}\n.lb-btn[disabled]{opacity:.4;cursor:default}\n/* A text button with a label + icon: the app lays the content out as a flex row\n with a 6px gap (its content style uses gap 0.75). */\n.lb-btn{display:inline-flex;align-items:center;justify-content:center;gap:0.375rem}\n.lb-btn>svg{display:block;flex-shrink:0;width:1.05rem;height:1.05rem}\n/* Opt-in large, for a button that stands alone rather than in a control row. */\n.lb-btn-lg{border-radius:0.625rem;padding:0.875rem 1rem}\n/* A SUBMIT is not a toggle. Like/Dislike are independent switches; "Set status"\n commits the value sitting in the select beside it. Rendered identically, the\n row reads as five peers and the rep cannot see which control ends the task.\n The accent border + tinted ground marks it as the commit without making it a\n loud filled button \\u2014 the state styles above still win when they apply. */\n/* INVERTED, not recoloured. A normal button is --lb-fg on --lb-field; the\n submit swaps them. That introduces no new hue, and it themes for free: light\n gives near-black on white, dark gives white on near-black \\u2014 the polarity flip\n reads as "this one commits" in both, without competing with the semantic\n state colours (success green / error red) that still override it. */\n/* This is the app\'s primary variant verbatim: black ground, white text, and a\n hover that mixes 32% gray-8 into the black rather than lightening opacity. */\n.lb-btn-submit{background-color:var(--lb-fg);color:var(--lb-field);\nborder-color:var(--lb-fg)}\n@media (hover:hover){\n.lb-btn-submit:hover:not([disabled]):not([data-lb-state=loading]){\nbackground-color:color-mix(in oklch,var(--lb-fg),var(--color-gray-8) 32%);\nborder-color:color-mix(in oklch,var(--lb-fg),var(--color-gray-8) 32%)}}\n/* The app\'s ai variant \\u2014 what QualifyButton/Requalify wears. Purple ground,\n purple-foreground text, border at 65% transparency of the foreground; hover\n mixes 7% black into the ground. Tokens mirror the product\'s style package. */\n.lb-btn-ai{background-color:var(--color-purple-background);\nborder-color:var(--color-purple-border);color:var(--color-purple-foreground)}\n@media (hover:hover){\n.lb-btn-ai:hover:not([disabled]):not([data-lb-state=loading]){\nbackground-color:color-mix(in oklch,var(--color-purple-background),black 7%)}}\n/* Toggles that act on the same axis belong in one visual unit, so the row reads\n as "taste | status | inspect" rather than five equal buttons. The gap inside\n a group is half the gap between groups \\u2014 the 2x rule, applied horizontally. */\n.lb-group{display:inline-flex;align-items:center;gap:0.375rem;flex-wrap:wrap}\n/* Square icon button. Only for actions whose glyph is unambiguous on its own \\u2014\n thumbs up/down qualify, "Set status" does not. It MUST carry an aria-label\n and a title: with no text the icon is the entire affordance, so an unlabelled\n one is unreadable to a screen reader and to anyone who does not know the\n glyph. Same 2.125rem box as a text button, so it keeps the row\'s baseline. */\n.lb-btn-icon{padding:0;width:2.125rem;justify-content:center;display:inline-flex;\nalign-items:center}\n.lb-btn-icon svg{width:1.05rem;height:1.05rem;flex-shrink:0}\n/* Pressed state. The taste chip carries the durable fact; this is the control\n reflecting it, and it must not rely on colour alone \\u2014 aria-pressed is the\n accessible half and the fill is the visible half. */\n/* A heart that stays hollow does not read as "liked" \\u2014 fill it from the same\n currentColor the stroke uses, so one rule covers both themes. */\n.lb-btn-icon[aria-pressed=true] svg{fill:currentColor}\n.lb-btn-icon[aria-pressed=true]{border-color:var(--color-red-like);\ncolor:var(--color-red-like);\nbackground-color:color-mix(in srgb,var(--color-red-like) 10%,var(--lb-field))}\n.lb-btn-icon[data-taste=disliked][aria-pressed=true]{border-color:var(--lb-muted);\ncolor:var(--lb-muted);\nbackground-color:color-mix(in srgb,var(--lb-muted) 10%,var(--lb-field))}\n/* A glyph-only control has no text to widen its hit area, so extend the target\n past the 34px box without inflating the row. */\n.lb-btn-icon{position:relative}\n.lb-btn-icon::before{content:"";position:absolute;inset:-5px}\n.lb-btn:focus-visible,.lb-select:focus-visible,.lb-input:focus-visible,\n.lb-link:focus-visible{\noutline:2px solid var(--color-blue-foreground);outline-offset:1px;\nborder-radius:var(--lb-radius-sm)}\n/* Forced colours replaces every background and custom outline with a system\n colour, collapsing the state styling above into one flat control. */\n@media(forced-colors:active){\n.lb-btn,.lb-select,.lb-input,.lb-chip{border:1px solid CanvasText}\n.lb-btn:focus-visible,.lb-select:focus-visible,.lb-input:focus-visible,\n.lb-link:focus-visible,.lb-link-out:focus-visible{outline:2px solid Highlight}\n.lb-link-out{opacity:1}}\n/* Each state carries a glyph as well as a hue: success and error were two\n pills with identical labels, indistinguishable to a red-green colour-blind\n reader and identical under forced colours. */\n.lb-btn[data-lb-state=loading]{opacity:.55;cursor:progress}\n.lb-btn[data-lb-state=loading]::after{content:"\\u2026";margin-inline-start:.35rem}\n/* An icon button has no room for a trailing glyph \\u2014 it would push the icon\n off-centre. Its states read through border and fill, which the forced-colors\n block below keeps distinguishable. */\n.lb-btn-icon::after{content:none!important}\n.lb-btn[data-lb-state=success]::after{content:"\\u2713";margin-inline-start:.35rem}\n.lb-btn[data-lb-state=error]::after{content:"\\u2715";margin-inline-start:.35rem}\n.lb-btn[data-lb-state=unavailable]::after{content:"\\u26A0";margin-inline-start:.35rem}\n/* With save-on-change there is no button to reflect the write, so the select\n itself must. Only error was styled before; loading and success were invisible\n on a select, leaving the rep unsure whether the pick had landed. */\n.lb-select[data-lb-state=loading]{opacity:.55;cursor:progress}\n.lb-select[data-lb-state=success]{border-color:var(--color-green-foreground)}\n.lb-msg[data-tone=error]::before{content:"\\u2715 "}\n.lb-msg[data-tone=ok]::before{content:"\\u2713 "}\n.lb-btn[data-lb-state=success]{background-color:var(--color-green-background);\nborder-color:var(--color-green-foreground);color:var(--color-green-foreground)}\n.lb-btn[data-lb-state=error],.lb-select[data-lb-state=error]{\nbackground-color:var(--color-red-background);border-color:var(--color-red-foreground);\ncolor:var(--color-red-foreground)}\n.lb-btn[data-lb-state=unavailable],.lb-btn[disabled]{opacity:.5;cursor:not-allowed}\n.lb-msg{font-size:0.8125rem;line-height:1.45;color:var(--lb-muted)}\n/* Screen-reader-only text: control labels, unit suffixes, "opens in a new tab". */\n.lb-vh{position:absolute;width:1px;height:1px;margin:-1px;padding:0;\noverflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}\n.lb-msg[data-tone=error]{color:var(--color-red-foreground)}\n.lb-msg[data-tone=ok]{color:var(--color-green-foreground)}\n.lb-chip{display:inline-flex;align-items:center;gap:.25rem;white-space:nowrap;\nfont-size:0.75rem;font-weight:600;line-height:1rem;padding:0.125rem 0.5rem;\nborder-radius:var(--lb-radius-sm);corner-shape:squircle;\nbackground-color:var(--lb-chip-bg);color:var(--lb-muted)}\n.lb-chip[data-status=WANTED]{background-color:var(--color-blue-background);color:var(--color-blue-foreground)}\n.lb-chip[data-status=WON]{background-color:var(--color-green-background);color:var(--color-green-foreground)}\n.lb-chip[data-status=LOST]{background-color:var(--color-red-background);color:var(--color-red-foreground)}\n.lb-chip[data-status=UNWANTED]{background-color:var(--lb-chip-bg);color:var(--lb-muted)}\n.lb-chip[data-taste=liked]{background-color:var(--color-cherry-background);color:var(--color-red-like)}\n.lb-chip[data-taste=disliked]{background-color:var(--lb-chip-bg);color:var(--lb-muted)}\n.lb-chips{display:flex;align-items:center;gap:0.5rem;flex-wrap:wrap}\n/* \\u2500\\u2500 Tag rows \\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\n Two kinds, deliberately different so they never read as the same axis.\n FIRMOGRAPHIC (.lb-tags-plain): what the company IS \\u2014 location, size, sector.\n Quiet grey, because it is context the rep skims.\n INTENT (.lb-tags-intent): what the qualifier FOUND \\u2014 a buying signal. Teal,\n matching the product\'s own taste-profile tags, because it is the reason the\n lead is on screen. Both wrap and both sit on the section\'s 8px. */\n.lb-tags-plain,.lb-tags-intent{display:flex;flex-wrap:wrap;gap:0.5rem}\n/* Both tags round at 0.375rem: they are the innermost surface, and a tag whose\n radius drifts from its neighbours reads as a different kind of object. Their\n own padding is small enough that concentric math against the card does not\n apply \\u2014 past a point the layers are separate surfaces, each chosen on its\n own. */\n.lb-tags-plain>*{display:inline-flex;align-items:center;\nbackground-color:var(--lb-surface);border:1px solid var(--lb-border);\ncolor:var(--lb-muted);border-radius:0.375rem;padding:0.125rem 0.375rem;\nfont-size:0.75rem;font-weight:500;line-height:1.5;white-space:nowrap}\n.lb-tags-intent>*{display:inline-flex;align-items:center;\nbackground-color:var(--color-teal-background);border:1px solid var(--color-teal-border);\ncolor:var(--color-teal-foreground);border-radius:0.375rem;padding:0.1875rem 0.4375rem;\nfont-size:0.75rem;line-height:1.4}\n/* The honest empty state: a blank tag row reads as a rendering bug, so say\n what is missing and what fixes it. */\n.lb-tags-empty{font-size:0.78125rem;line-height:1.45;color:var(--lb-muted);\nfont-style:italic}\n/* The chips row is empty until a taste or a status lands. Left in flow it is a\n zero-height element that still consumes the gap above the first section, so\n hide it while it holds nothing \\u2014 set the hidden attribute from the code that\n paints the chips, since it is that code which knows. */\n.lb-chips[hidden]{display:none}\n.lb-chip[hidden]{display:none}\n.lb-table{width:100%;border-collapse:collapse;font-family:var(--lb-font);color:var(--lb-fg)}\n.lb-table th,.lb-table td{text-align:start;padding:0.5rem 0.4rem;\nborder-bottom:1px solid var(--lb-border);vertical-align:middle;font-size:0.8125rem}\n.lb-table th{font-size:0.75rem;font-weight:600;color:var(--lb-muted);\ntext-transform:uppercase;letter-spacing:.04em}\n/* Counts line up only when the digits do; a leaderboard whose numbers jitter\n column-to-column cannot be scanned down. */\n.lb-table td[data-num],.lb-table th[data-num]{text-align:end;\nfont-variant-numeric:tabular-nums}\n/* A sortable header is a control: it must look clickable and say which way it\n is sorting, in text as well as by arrow \\u2014 aria-sort is the accessible half. */\n.lb-table th[aria-sort]{cursor:pointer;user-select:none;color:var(--lb-fg)}\n.lb-table th[aria-sort]:hover{text-decoration:underline}\n.lb-table th[aria-sort=ascending]::after{content:" \\\\2191"}\n.lb-table th[aria-sort=descending]::after{content:" \\\\2193"}\n.lb-table th[aria-sort=none]::after{content:" \\\\2195";opacity:.35}\n/* The row a manager is acting on. */\n.lb-table tbody tr[aria-selected=true]{background-color:var(--lb-chip-bg)}\n.lb-link{color:var(--color-blue-foreground);text-decoration:none}\n.lb-link:hover{text-decoration:underline}\n/* Quiet text link out of the artifact. Button-height so it shares the row\'s\n baseline; understated so it never competes with the actions beside it. The\n arrow is a bare diagonal stroke \\u2014 an escape-hatch marker, not an icon that\n asks to be read. */\n.lb-link-out{display:inline-flex;align-items:center;gap:.3rem;\nfont-size:0.75rem;line-height:1rem;min-height:2.125rem;\ncolor:var(--lb-fg);text-decoration:none;opacity:.65;transition:opacity .15s}\n.lb-link-out:hover{opacity:1;text-decoration:underline}\n.lb-link-out:focus-visible{outline:2px solid var(--color-blue-foreground);outline-offset:1px;\nborder-radius:var(--lb-radius-sm)}\n.lb-link-out svg{width:.85em;height:.85em;flex-shrink:0}\n/* Pushes whatever follows it to the right edge of an .lb-row, so a trailing\n link sits on the SAME baseline as the row\'s buttons instead of on its own\n line below them. */\n/* A spacer only aligns items on its OWN flex line. .lb-row wraps, so once the\n link falls to a second line the spacer stays behind and the link renders\n left-aligned \\u2014 the opposite of what the contract promises. The auto margin\n re-anchors it to the trailing edge of whichever line it lands on, and is a\n no-op while the row is unwrapped. */\n.lb-spacer{flex:1 1 auto;min-width:0}\n.lb-row>.lb-link-out{margin-inline-start:auto}\n.lb-spinner{display:inline-block;width:.7em;height:.7em;border:2px solid var(--lb-border);\nborder-top-color:var(--color-blue-foreground);border-radius:50%;animation:lb-spin .8s linear infinite}\n@keyframes lb-spin{to{transform:rotate(1turn)}}\n/* animation:none left a static ring \\u2014 under reduced motion "sending" and\n "cannot click" looked identical. An opacity pulse is the sanctioned\n substitute. The 150ms colour fade is fine and stays. */\n@media(prefers-reduced-motion:reduce){.lb-spinner{animation:lb-pulse 1.4s ease-in-out infinite}}\n@keyframes lb-pulse{50%{opacity:.35}}\n`,F="lb-styles";var xe="2026-01-26";function Z(e,t){return Object.assign(new Error(e),{name:"LbError",code:t})}function X(){return typeof window<"u"&&window.parent!=null&&window.parent!==window}function ee(e,t={parent:window.parent,self:window}){let n=new Map,r=1,o=null,a=c=>t.parent.postMessage({jsonrpc:"2.0",...c},"*");function i(c,s){let u=r++;return new Promise((g,h)=>{n.set(u,{resolve:g,reject:h}),a({id:u,method:c,params:s})})}function l(c){if(c.source!==t.parent)return;let s=c.data;if(!s||typeof s!="object"||s.jsonrpc!=="2.0")return;if(typeof s.method=="string"){if(s.id===void 0){s.method==="ui/notifications/host-context-changed"&&J(s.params?.theme);return}s.method==="ping"||s.method==="ui/resource-teardown"?a({id:s.id,result:{}}):a({id:s.id,error:{code:-32601,message:`Method not found: ${s.method}`}});return}let u=n.get(s.id);u&&(n.delete(s.id),s.error?u.reject(Z(String(s.error.message||"The host refused the call"),"host_error")):u.resolve(s.result))}function d(){return o||(o=(async()=>{t.self.addEventListener("message",l);let c=r,s=i("ui/initialize",{appInfo:{name:"Leadbay",version:e},appCapabilities:{},protocolVersion:xe}),u,g=new Promise((f,y)=>{u=setTimeout(()=>{n.delete(c),y(Z("Leadbay is not reachable from this page \\u2014 the host never answered the MCP Apps handshake.","unavailable"))},5e3)}),h;try{h=await Promise.race([s,g])}finally{u&&clearTimeout(u)}J(h?.hostContext?.theme),a({method:"ui/notifications/initialized",params:{}}),_e(a),Se(i)})(),o.catch(()=>{o=null})),o}return async(c,s)=>(await d(),i("tools/call",{name:c,arguments:s}))}function J(e){typeof document>"u"||e!=="light"&&e!=="dark"||document.documentElement.setAttribute("data-theme",e)}function _e(e){if(typeof document>"u"||typeof ResizeObserver>"u")return;let t=!1,n=0,r=0,o=()=>{t||(t=!0,requestAnimationFrame(()=>{t=!1;let i=document.documentElement,l=i.style.height;i.style.height="max-content";let d=Math.ceil(i.getBoundingClientRect().height);i.style.height=l;let c=Math.ceil(window.innerWidth);c===n&&d===r||(n=c,r=d,e({method:"ui/notifications/size-changed",params:{width:c,height:d}}))}))};o();let a=new ResizeObserver(o);a.observe(document.documentElement),a.observe(document.body)}function Se(e){typeof document>"u"||document.addEventListener("click",t=>{let n=t.target,r=n&&typeof n.closest=="function"?n.closest("a[href]"):null;if(!r)return;let o=r.href;/^https?:\\/\\//i.test(o)&&(t.preventDefault(),e("ui/open-link",{url:o}).catch(()=>{window.open(o,"_blank","noopener")}))},!0)}var G="0.6.0",C=class extends Error{constructor(n,r={}){super(n);b(this,"code");b(this,"raw");this.name="LbError",this.code=r.code,this.raw=r.raw}},ne=null,O=3e4,re="Leadbay",oe=re;function ae(){let e=globalThis.cowork;if(e&&typeof e.callMcpTool=="function")return(n,r)=>e.callMcpTool(n,r);let t=globalThis.claude;return t&&typeof t.use=="function"?async(n,r)=>{let o=await Te(t.use);if(!o||typeof o.callTool!="function")throw new C("Leadbay is not reachable from this page \\u2014 the artifact must declare the Leadbay connector in its capabilities, and the viewer must have it enabled.",{code:"unavailable"});let a=await o.callTool(oe,n,r);return a&&"payload"in a&&a.payload!==void 0?a.payload:a}:X()?(N||(N=ee(G)),N):null}var N=null,M=null;function Te(e){return M||(M=Promise.resolve(e("mcp")).catch(()=>null)),M}var ie="leadbay_report_artifact_error",Ee=40,j=new Set,U=0,K=!0;function Ae(e){K=e}function xt(){j.clear(),U=0,K=!0,A=null,P="call"}function T(e){if(!K||U>=Ee)return;let t=`${e.kind}|${e.surface}|${e.tool??""}|${e.code??""}`;if(j.has(t))return;j.add(t),U++;let n=ae();if(n)try{let r=n(ie,{kind:e.kind,surface:e.surface,kit_version:G,...e.tool?{tool:e.tool}:{},...e.code?{code:e.code}:{}});r&&typeof r.catch=="function"&&r.catch(()=>{})}catch{}}var P="call",A=null;function q(e,t,n){let r=P,o=A;P=e,A=n??null;try{return t()}finally{P=r,A=o}}function Ce(e,t,n){let r=le(n);T({kind:r==="timeout"?"call_timeout":r==="unavailable"?"bridge_unavailable":"call_failed",surface:e,tool:t,code:r})}function te(e){if(e&&typeof e=="object"&&"content"in e){let t=e.content;if(Array.isArray(t)&&t[0]&&typeof t[0].text=="string")return t[0].text}return null}function Le(e,t,n="call"){if(!e||typeof e!="object")return e;let r=e;if(r.isError)throw new C(te(e)??"tool call failed",{raw:e});if("structuredContent"in r&&r.structuredContent!=null)return r.structuredContent;let o=te(e);if(o!=null)try{return JSON.parse(o)}catch{return T({kind:"parse_failed",surface:n,tool:t}),o}return e}function V(e){if(e instanceof Error)return e.message;if(e&&typeof e=="object"){let t=e.message;if(typeof t=="string"&&t)return t;try{return JSON.stringify(e)}catch{}}return String(e)}function le(e){if(e instanceof C)return e.code;if(e&&typeof e=="object"){let t=e.code;if(typeof t=="string"&&t)return t}}function D(e){let t=le(e);return{message:V(e),unavailable:t==="unavailable",code:t}}function Ie(e={}){ne=e.call??null,O=e.timeoutMs??3e4,oe=e.server??re,M=null,N=null,B.clear()}function Re(){if(typeof document>"u"||!document.head)return null;let e=document.getElementById(F);if(e)return e;let t=document.createElement("style");return t.id=F,t.textContent=Y,document.head.appendChild(t),t}async function Oe(e,t){if(!O||O<=0)return e;let n,r=new Promise((o,a)=>{n=setTimeout(()=>a(new C(`"${t}" timed out after ${O}ms`,{code:"timeout"})),O)});try{return await Promise.race([e,r])}finally{n&&clearTimeout(n)}}async function p(e,t={}){let n=e===ie,r=P;!n&&A&&A.tool===void 0&&(A.tool=e);let o=ne??ae();if(!o)throw n||T({kind:"bridge_unavailable",surface:r,tool:e,code:"unavailable"}),new C(\'Leadbay bridge unavailable \\u2014 no window.cowork, no window.claude.use("mcp") and no MCP Apps host\',{code:"unavailable"});try{return Le(await Oe(Promise.resolve(o(e,t)),e),n?void 0:e,r)}catch(a){throw n||Ce(r,e,a),a}}var I=class{constructor(){b(this,"subs",new Set)}subscribe(t){return this.subs.add(t),t(this),()=>this.subs.delete(t)}emit(){for(let t of this.subs)t(this)}};function Pe(e){return Array.isArray(e)?e.map(t=>t&&typeof t=="object"?t:{value:t,label:String(t)}):[]}var S=class extends I{constructor(n={}){super();b(this,"kind");b(this,"value");b(this,"options",[]);b(this,"loading",!1);b(this,"error",null);b(this,"ready",!1);b(this,"cfg");b(this,"depUnsubs",[]);b(this,"seq",0);this.cfg=n,this.kind=n.kind,this.value=n.value??"";for(let r of n.dependsOn??[]){let o=r.value;this.depUnsubs.push(r.subscribe(()=>{r.value!==o&&(o=r.value,this.cfg.load&&this.load())}))}n.load&&(n.autoLoad??!0)&&this.load()}async load(){if(!this.cfg.load)return;let n=++this.seq;this.loading=!0,this.error=null,this.emit();try{let r={},o=await q("field",()=>this.cfg.load(),r);if(n!==this.seq)return;this.options=this.cfg.options?this.cfg.options(o):Pe(o),this.ready=!0,this.options.length===0&&T({kind:"options_empty",surface:"field",tool:r.tool});let a=this.value==null?"":String(this.value);this.options.length&&(a===""||!this.options.some(i=>String(i.value)===a))&&(this.value=this.options[0].value)}catch(r){if(n!==this.seq)return;this.options=[],this.error=D(r)}finally{n===this.seq&&(this.loading=!1,this.emit())}}setValue(n){this.value=n;let r=this.validate();this.error=r?{message:r,unavailable:!1}:null,this.emit()}validate(){return this.cfg.validate?this.cfg.validate(this.value):null}get valid(){return this.validate()==null}reset(){this.value=this.cfg.value??"",this.error=null,this.emit()}dispose(){for(let n of this.depUnsubs)n();this.depUnsubs=[]}};function Ne(e){if(!e||typeof e!="object")return null;let t=e;if(t.error!==!0)return null;let n=typeof t.message=="string"&&t.message?t.message:"tool call failed",r=typeof t.hint=="string"&&t.hint?` \\u2014 ${t.hint}`:"";return`${n}${r}`}var v=class extends I{constructor(n){super();b(this,"loading",!1);b(this,"error",null);b(this,"lastResult",null);b(this,"cfg");this.cfg=n}async run(){if(this.loading)return;for(let o of this.cfg.fields??[]){let a=o.validate();if(a!=null){this.error={message:a,unavailable:!1},this.emit(),T({kind:"action_blocked",surface:"action",tool:this.cfg.tool});return}}if(this.cfg.confirm){if(typeof globalThis.confirm!="function"){this.error={message:"This action needs confirmation, which this page cannot show.",unavailable:!1},this.emit(),T({kind:"action_blocked",surface:"action",tool:this.cfg.tool});return}if(!globalThis.confirm(this.cfg.confirm))return}this.loading=!0,this.error=null,this.emit();let n;try{let o=typeof this.cfg.args=="function"?this.cfg.args():this.cfg.args??{};n=await q("action",()=>p(this.cfg.tool,o))}catch(o){this.error=D(o),this.loading=!1,this.emit(),this.cfg.onError?.(this.error);return}let r=Ne(n)??this.cfg.checkResult?.(n)??null;if(r!=null){this.error={message:r,unavailable:!1},this.loading=!1,this.emit();let o=n&&typeof n=="object"?n.code:void 0;T({kind:"result_rejected",surface:"action",tool:this.cfg.tool,...typeof o=="string"&&o?{code:o}:{}}),this.cfg.onError?.(this.error);return}return this.lastResult=n,this.loading=!1,this.emit(),this.cfg.onSuccess?.(n),n}reset(){this.error=null,this.lastResult=null,this.emit()}},x=class extends I{constructor(n){super();b(this,"data",null);b(this,"loading",!1);b(this,"refreshing",!1);b(this,"error",null);b(this,"done",!1);b(this,"cfg");b(this,"timer",null);b(this,"seq",0);this.cfg=n,(n.autoLoad??!0)&&this.load()}async load(){this.clearTimer();let n=++this.seq;this.data==null?this.loading=!0:this.refreshing=!0,this.error=null,this.emit();try{let o=await q("resource",()=>this.cfg.load());if(n!==this.seq)return;this.data=o,this.done=this.cfg.until?this.cfg.until(o):!0,this.cfg.pollEvery&&!this.done&&(this.timer=setTimeout(()=>void this.load(),this.cfg.pollEvery))}catch(o){if(n!==this.seq)return;this.error=D(o)}finally{n===this.seq&&(this.loading=!1,this.refreshing=!1,this.emit())}}refresh(){return this.load()}stop(){this.clearTimer()}clearTimer(){this.timer&&(clearTimeout(this.timer),this.timer=null)}},R=class extends I{constructor(n){super();b(this,"items",[]);b(this,"page",0);b(this,"pageSize");b(this,"total",0);b(this,"loading",!1);b(this,"error",null);b(this,"cfg");b(this,"seq",0);this.cfg=n,this.pageSize=n.pageSize??20,(n.autoLoad??!0)&&this.loadPage(0)}async loadPage(n){let r=++this.seq;this.loading=!0,this.error=null,this.emit();try{let o=await q("list",()=>this.cfg.load({page:n,pageSize:this.pageSize}));if(r!==this.seq)return;this.items=o.items??[],this.total=o.total??this.items.length,this.page=n}catch(o){if(r!==this.seq)return;this.error=D(o)}finally{r===this.seq&&(this.loading=!1,this.emit())}}next(){return this.loadPage(this.page+1)}prev(){return this.loadPage(Math.max(0,this.page-1))}get hasMore(){return(this.page+1)*this.pageSize<this.total}};function Me(e,t){let n=t.error?.unavailable?"unavailable":t.loading?"loading":t.error?"error":"ready";e.setAttribute("data-lb-state",n),t.error?e.setAttribute("data-lb-error",t.error.message):e.removeAttribute("data-lb-error")}function ze(e,t){let n=()=>t.setValue(e.value);e.addEventListener("change",n);let r=t.subscribe(()=>{Me(e,t),e.disabled=t.loading,e.innerHTML="";for(let o of t.options){let a=document.createElement("option");a.value=String(o.value),a.textContent=o.label,e.appendChild(a)}e.value=t.value==null?"":String(t.value)});return()=>{e.removeEventListener("change",n),r()}}function qe(e,t){let n=e.type==="checkbox",r=e.tagName==="SELECT"?"change":"input",o=()=>t.setValue(n?e.checked:e.value);e.addEventListener(r,o);let a=t.subscribe(()=>{if(n)e.checked=!!t.value;else{let i=t.value==null?"":String(t.value);e.value!==i&&(e.value=i)}e.setAttribute("data-lb-state",t.error?"error":"ready"),t.error?e.setAttribute("data-lb-error",t.error.message):e.removeAttribute("data-lb-error")});return()=>{e.removeEventListener(r,o),a()}}function De(e,t){let n=a=>{a.preventDefault(),t.run()};e.addEventListener("click",n);let r,o=t.subscribe(()=>{let a=t.error?.unavailable?"unavailable":t.loading?"loading":t.error?"error":t.lastResult!=null?"success":"ready";e.setAttribute("data-lb-state",a),"disabled"in e&&(e.disabled=t.loading),e.setAttribute("aria-busy",String(t.loading)),t.error?e.setAttribute("data-lb-error",t.error.message):e.removeAttribute("data-lb-error"),r&&clearTimeout(r),a==="success"&&(r=setTimeout(()=>{!t.loading&&!t.error&&e.setAttribute("data-lb-state","ready")},1600))});return()=>{e.removeEventListener("click",n),o(),r&&clearTimeout(r)}}var $=["STILL_CHASING","COULD_NOT_REACH_STILL_TRYING","INTEREST_VALIDATED_OR_MEETING_PLANED","NOT_INTERESTED_LOST"],H=[{value:"",label:"Default ranking"},{value:"SCORE:DESC",label:"Score \\u2193"},{value:"SCORE:ASC",label:"Score \\u2191"},{value:"NAME:ASC",label:"Name A\\u2192Z"},{value:"NAME:DESC",label:"Name Z\\u2192A"},{value:"SIZE:DESC",label:"Size \\u2193"},{value:"SIZE:ASC",label:"Size \\u2191"},{value:"SECTOR:ASC",label:"Sector A\\u2192Z"},{value:"STATUS:ASC",label:"Status A\\u2192Z"},{value:"CONTACT_COUNT:DESC",label:"Contacts \\u2193"},{value:"LAST_PROSPECTING_ACTION_AT:DESC",label:"Last action \\u2193"},{value:"LAST_PROSPECTING_ACTION_AT:ASC",label:"Last action \\u2191"},{value:"EPILOGUE_STATUS_SET_AT:DESC",label:"Outcome set \\u2193"},{value:"LIKED:DESC",label:"Liked first"},{value:"DISLIKED:DESC",label:"Disliked first"}];function Fe(e){let t=String(e??"").trim().toUpperCase(),n=H.some(r=>r.value===t);return new S({kind:"select",value:n?t:"",load:async()=>H.slice()})}var z=[{value:"WANTED",label:"Wanted"},{value:"WON",label:"Won"},{value:"LOST",label:"Lost"},{value:"UNWANTED",label:"Unwanted"}],je={value:"",label:"Pick a status"};function se(e){let t=String(e??"").trim().toUpperCase(),n=z.some(r=>r.value===t);return new S({kind:"select",value:n?t:"",validate:r=>String(r??"")===""?"Pick a status":null,load:async()=>n?z.slice():[je,...z]})}function ce(e){let t=()=>{let n=typeof e.leadIds=="function"?e.leadIds():e.leadIds;return Array.isArray(n)?n:e.leadId?[e.leadId]:[]};return new v({tool:"leadbay_set_lead_status",fields:e.date?[e.status,e.date]:[e.status],confirm:e.confirm,args:()=>({lead_ids:t(),status:e.status.value,...e.date&&e.date.value?{status_date:e.date.value}:{},...e.ask?{_triggered_by:e.ask}:{}}),checkResult:n=>{let r=n?.failed;if(!Array.isArray(r)||r.length===0)return null;let o=t().length,a=r[0]?.message??"write rejected";return r.length===o?`Status not applied: ${a}`:`${r.length} of ${o} leads failed: ${a}`}})}function Ue(e){return new S({kind:"select",load:()=>p("leadbay_list_campaigns",{_triggered_by:e}),options:t=>(t?.campaigns??[]).map(r=>{let o=r?.campaign??r;return o?.id?{value:o.id,label:o.name??o.ai_generated_name??String(o.id)}:null}).filter(r=>r!=null)})}function de(e){return new v({tool:"leadbay_report_outreach",fields:e.note?[e.note]:[],args:()=>({lead_id:e.leadId,...e.status?{epilogue_status:e.status.value}:{},note:e.note?e.note.value:"",verification:{source:"user_confirmed",ref:e.ref??"logged from artifact"},_triggered_by:e.ask})})}function $e(e){return new v({tool:"leadbay_add_note",fields:[e.note],args:()=>({leadId:e.leadId,note:e.note.value})})}function ue(e){return new v({tool:"leadbay_like_lead",args:{lead_id:e}})}function he(e){return new v({tool:"leadbay_dislike_lead",args:{lead_id:e}})}function ge(e){let t=e??{},n=t.ai_agent_lead_score;if(typeof n=="number"&&n>0)return"Requalify";let r=t.qualification_summary?.answered;return typeof r=="number"&&r>0?"Requalify":"Qualify"}function be(e){let t=()=>{let o=typeof e.leadIds=="function"?e.leadIds():e.leadIds;return Array.isArray(o)?o:e.leadId?[e.leadId]:[]},n=0,r=new v({tool:"leadbay_bulk_qualify_leads",confirm:e.confirm,args:()=>{let o=t();return n=o.length,{leadIds:o,wait_for_completion:!1,...e.ask?{_triggered_by:e.ask}:{}}},checkResult:o=>{let a=o??{},i=Array.isArray(a.failed)?a.failed:[],l=n;if(i.length>0){let d=i[0]?.error??"launch rejected";return i.length>=l?`Qualification did not start: ${d}`:`${i.length} of ${l} leads did not start: ${d}`}if(a.quota_exceeded){let d=a.launched_count??0;return d>0?`Quota reached \\u2014 ${d} of ${l} launched, the rest were not started.`:"Quota reached \\u2014 no leads were queued."}return null}});return Object.defineProperty(r,"label",{enumerable:!0,get:()=>(typeof e.scored=="function"?e.scored():e.scored)?"Requalify":"Qualify"}),r}function He(e,t,n=15e3){return new x({pollEvery:n,load:()=>p("leadbay_qualify_status",{...e?.notification_id?{notification_id:e.notification_id}:{},...e?.lead_ids?.length?{lead_ids:e.lead_ids}:{},...typeof e?.lens_id=="number"?{lens_id:e.lens_id}:{},...t?{_triggered_by:t}:{}}),until:r=>{let o=r??{};return Array.isArray(o.still_running)?o.still_running.length===0:o.status!=null&&o.status!=="running"}})}function Be(e,t){return new x({autoLoad:!1,load:()=>p("leadbay_account_history",{leadId:e,_triggered_by:t})})}function Ge(e,t){return new x({autoLoad:!1,load:()=>p("leadbay_research_lead_by_id",{leadId:e,_triggered_by:t})})}var B=new Map;function fe(e={}){let t=e.lang??"",n=B.get(t);return n||(n=(async()=>{try{let r=await p("leadbay_list_sectors",{...e.lang?{lang:e.lang}:{}}),o=Array.isArray(r)?r:Array.isArray(r?.sectors)?r.sectors:[],a={};for(let i of o){let l=i??{};l.id!=null&&typeof l.label=="string"&&l.label&&(a[String(l.id)]=l.label)}return a}catch{return{}}})(),B.set(t,n)),n}function me(e,t={}){let n=e??{},r=i=>typeof i=="string"&&i.trim()&&i.trim()!=="null"?i.trim():void 0,o=n.sector_id!=null?t[String(n.sector_id)]:void 0,a=Array.isArray(n.phone_numbers)?n.phone_numbers:[];return{summary:r(n.short_description)??r(n.description)??o,sector:o,phone:a.map(r).find(Boolean),email:r(n.email)}}function Ke(e){let t=()=>{let a=e.kind;return typeof a=="string"?a:typeof a=="function"?a():String(a?.value??"followups")||"followups"},n=()=>{let a=e.campaignId,i=typeof a=="string"?a:a?.value;return i?String(i):void 0},r=()=>typeof e.order=="string"?e.order:String(e.order?.value??""),o=new R({pageSize:e.pageSize??20,load:async({page:a,pageSize:i})=>{let l=t(),d;if(l==="campaign"){let u=n();if(!u)return{items:[],total:0};d=await p("leadbay_campaign_call_sheet",{campaign_id:u,page:a,count:i,_triggered_by:e.ask})}else l==="discover"?d=await p("leadbay_pull_leads",{page:a,count:i,...e.lensId?{lensId:e.lensId}:{},...r()?{order:r()}:{},_triggered_by:e.ask}):d=await p("leadbay_pull_followups",{page:a,count:i,...e.city?{city:e.city}:{},...r()?{order:r()}:{},_triggered_by:e.ask});let c=d??{},s=c.leads??c.items??[];return{items:s,total:c.pagination?.total??c.total_leads??s.length}}});return Object.assign(o,{leadUrl:a=>{let i=a??{},l=encodeURIComponent(String(i.id??"")),d=t();if(d==="campaign"){let s=n();if(s)return`https://leadbay.app/app/campaign?campaign=${encodeURIComponent(s)}&lead=${l}`}return`https://leadbay.app/app/${d==="discover"||i.in_monitor===!1?"discover":"monitor"}?lead=${l}`}})}function Ve(e){let t=e?.location?.pos;if(!Array.isArray(t)||t.length<2)return null;let[n,r]=t;return typeof n!="number"||typeof r!="number"||!Number.isFinite(n)||!Number.isFinite(r)||n===0&&r===0||n<-90||n>90||r<-180||r>180?null:[n,r]}function W(e,t){let n=Math.PI/180,r=(t[0]-e[0])*n,o=(t[1]-e[1])*n,a=Math.sin(r/2)**2+Math.cos(e[0]*n)*Math.cos(t[0]*n)*Math.sin(o/2)**2;return 6371*2*Math.atan2(Math.sqrt(a),Math.sqrt(1-a))}var pe=11;function We(e){let t=e.filter(a=>Array.isArray(a?.pos)&&a.pos.length===2);if(t.length===0)return null;let n=t.slice(0,pe),r=n.map(a=>a.pos.join(",")),o=new URLSearchParams({api:"1",travelmode:"driving"});return r.length===1?o.set("destination",r[0]):(o.set("origin",r[0]),o.set("destination",r[r.length-1]),r.length>2&&o.set("waypoints",r.slice(1,-1).join("|"))),{url:`https://www.google.com/maps/dir/?${o.toString()}`,used:n.length,truncated:t.length-n.length}}function Qe(e){let t=0;for(let n=1;n<e.length;n++)t+=W(e[n-1].pos,e[n].pos);return t}function Ye(e,t){let n=e.slice();if(n.length<=2)return n;let r=[],o=t??n[0].pos;for(;n.length;){let a=0,i=1/0;for(let d=0;d<n.length;d++){let c=W(o,n[d].pos);c<i&&(i=c,a=d)}let[l]=n.splice(a,1);r.push(l),o=l.pos}return r}function Ze(e){let t=se(e.currentStatus),n=new S({kind:"select",value:$[0],load:async()=>$.map(i=>({value:i,label:ye[i]??i}))}),r=new S({validate:i=>String(i??"").trim()?null:"Add a note before logging"}),o=new x({autoLoad:!1,load:async()=>{let i=await p("leadbay_research_lead_by_id",{leadId:e.leadId,_triggered_by:e.ask}),l=Array.isArray(i?.contacts?.reachable)?i.contacts.reachable:[],d=Array.isArray(i?.contacts?.candidates)?i.contacts.candidates:[],c=new Set,s=[];for(let g of[...l,...d]){let h=g?.id??g?.contact_id;h&&c.has(h)||(h&&c.add(h),s.push(g))}let u=i?.engagement?.recommended_contact?.contact_id;return s.map(g=>Xe(g,u))}}),a=new x({load:async()=>me(e.lead,await fe())});return{leadId:e.leadId,contacts:o,context:a,status:t,saveStatus:ce({leadId:e.leadId,status:t,ask:e.ask}),epilogue:n,note:r,logOutreach:de({leadId:e.leadId,ask:e.ask,status:n,note:r}),like:ue(e.leadId),dislike:he(e.leadId),qualify:be({leadId:e.leadId,ask:e.ask,scored:ge(e.lead)==="Requalify"})}}function Je(e){let t=r=>typeof r=="function"?r():r!==!1,n=new S({value:"ok",validate:()=>t(e.email)||t(e.phone)?null:"Pick email, phone, or both."});return new v({tool:"leadbay_enrich_contacts",fields:[n],confirm:e.confirm===""?void 0:e.confirm??"Reveal this contact? It uses enrichment quota.",args:()=>({leadId:e.leadId,contactId:e.contactId,email:t(e.email),phone:t(e.phone),...e.ask?{_triggered_by:e.ask}:{}}),checkResult:r=>{let o=r??{};return o.error?o.message??"Enrichment failed":null},onSuccess:()=>e.onDone?.()})}var ye={STILL_CHASING:"Still chasing",COULD_NOT_REACH_STILL_TRYING:"Could not reach \\u2014 still trying",INTEREST_VALIDATED_OR_MEETING_PLANED:"Interested / meeting planned",NOT_INTERESTED_LOST:"Not interested \\u2014 lost"};function Xe(e,t){let n=e??{},r=i=>typeof i=="string"&&i.trim()&&i!=="null"?i.trim():void 0,o=[r(n.first_name),r(n.last_name)].filter(Boolean).join(" ")||r(n.name)||"Unnamed contact",a=r(n.id)??r(n.contact_id);return{contactId:a,name:o,title:r(n.job_title)??r(n.title),email:r(n.email),phone:r(n.phone)??r(n.phone_number)??r((n.phone_numbers??[])[0]),linkedin:r(n.linkedin_page),recommended:n.recommended===!0||t!=null&&a===t,enriched:n.enrichment_done===!0}}function et(e){let t=null;return new x({...e.autoLoad!==void 0?{autoLoad:e.autoLoad}:{},pollEvery:e.pollEvery??4e3,until:n=>!!n?.all_done,load:async()=>{if(!t){let n=await p("leadbay_enrich_titles",{...e.leadIds?{leadIds:e.leadIds}:{},titles:e.titles,...e.email!==void 0?{email:e.email}:{},...e.phone!==void 0?{phone:e.phone}:{},...e.confirm!==void 0?{confirm:e.confirm}:{},_triggered_by:e.ask}),r=Array.isArray(n?.lead_ids)?n.lead_ids:[],o=n?.notification_id??null;if(t=o||r.length>0?{notification_id:o,lead_ids:r}:null,!t)return{...n,all_done:!0,no_job:!0}}return p("leadbay_bulk_enrich_status",{...t.notification_id?{notification_id:t.notification_id}:{},...t.lead_ids.length>0?{lead_ids:t.lead_ids}:{},...e.titles?{titles:e.titles}:{},...e.email!==void 0?{email:e.email}:{},...e.phone!==void 0?{phone:e.phone}:{},_triggered_by:e.ask})}})}function tt(e){let t=()=>typeof e.order=="string"?e.order:String(e.order?.value??"");return new R({pageSize:e.pageSize??20,load:async({page:n,pageSize:r})=>{let o=await p("leadbay_pull_leads",{page:n,count:r,...e.lensId?{lensId:e.lensId}:{},...t()?{order:t()}:{},_triggered_by:e.ask}),a=o.leads??[];return{items:a,total:o.pagination?.total??a.length}}})}function nt(e){let t=e.source??"followups",n=()=>typeof e.order=="string"?e.order:String(e.order?.value??"");return new R({pageSize:e.pageSize??20,load:async({page:r,pageSize:o})=>{let i=t==="campaign"?await p("leadbay_campaign_call_sheet",{campaign_id:e.campaignId,page:r,count:o,_triggered_by:e.ask}):await p("leadbay_pull_followups",{page:r,count:o,...e.city?{city:e.city}:{},...n()?{order:n()}:{},_triggered_by:e.ask}),l=i.leads??i.items??[];return{items:l,total:i.total_leads??i.pagination?.total??l.length}}})}async function rt(e){let t=await p("leadbay_pull_followups",{count:e.sample??200,filtered:!1,...e.personal===void 0?{}:{personal:e.personal},_triggered_by:e.ask}),n=new Map;for(let o of t.leads??[]){let a=o?.sector_id;if(a==null||a==="")continue;let i=String(a);n.set(i,(n.get(i)??0)+1)}let r=e.sectors??{};return[...n.entries()].map(([o,a])=>{let i=r[o];return{id:o,label:i??`Sector ${o}`,sampled:a,resolved:i!=null}}).sort((o,a)=>a.sampled-o.sampled||o.id.localeCompare(a.id))}async function Q(e){let t=await p("leadbay_pull_followups",{count:1,set_filter:{criteria:e.criteria},...e.city?{city:e.city}:{},...e.cityId?{city_id:e.cityId}:{},...e.personal===void 0?{}:{personal:e.personal},_triggered_by:e.ask}),n=t.active_filters?.criteria??[],r=u=>typeof u?.type=="string"?u.type:null,o=new Set;for(let u of e.criteria){let g=r(u);g&&o.add(g)}(e.city||e.cityId)&&o.add("location_ids");let a=new Set(n.map(r).filter(u=>u!=null)),i=[...o].every(u=>a.has(u)),l=[...a].every(u=>o.has(u)),d=new Set(["location_ids"]),c=(u,g)=>u.filter(h=>r(h)===g).map(h=>JSON.stringify(Object.keys(h).filter(f=>f!=="type").sort().map(f=>[f,h[f]]))).sort().join("|"),s=[...o].every(u=>d.has(u)||c(e.criteria,u)===c(n,u));return{total:k(t.pagination?.total),applied:n,trusted:i&&l&&s}}async function ot(e){let t=[];return e.sectorIds?.length&&t.push({type:"sector_ids",sectors:e.sectorIds,is_excluded:!1}),Q({criteria:t,personal:e.personal,ask:e.ask,city:e.city,cityId:e.cityId})}async function at(e){let t=[],n=e.buckets.length;for(let r of e.buckets){let o;try{let a=await Q({criteria:r.criterion?[r.criterion]:[],personal:e.personal,ask:e.ask});o={...r,total:a.total,trusted:a.trusted}}catch(a){o={...r,total:0,trusted:!1,error:V(a)}}t.push(o),e.onProgress?.(t.length,n,o)}return t}async function it(e){try{let t=await Q({criteria:[],personal:e.personal,ask:e.ask});return{id:"__all__",label:"Whole book",total:t.total,trusted:t.trusted}}catch(t){return{id:"__all__",label:"Whole book",total:0,trusted:!1,error:V(t)}}}async function lt(e){let t=await p("leadbay_pull_followups",{count:e.sample??200,filtered:!1,...e.personal===void 0?{}:{personal:e.personal},_triggered_by:e.ask}),n=new Map;for(let a of t.leads??[]){let i=a?.[e.field];if(i==null||i===""||i==="null")continue;let l=String(i);n.set(l,(n.get(l)??0)+1)}let r=e.labels??{},o=[...n.entries()].map(([a,i])=>({id:a,label:r[a]??`${e.field} ${a}`,sampled:i,...e.criterion?{criterion:e.criterion(a)}:{}})).sort((a,i)=>i.sampled-a.sampled||a.id.localeCompare(i.id));return e.limit!=null?o.slice(0,e.limit):o}var st=/[\\s,]+(inc|llc|corp|ltd|gmbh|co|s\\.?a|s\\.?l|plc|ag|sas|sarl)\\.?$/i;function ct(e,t){let n=e??{},r=s=>typeof s=="string"&&s.trim()&&s!=="null"?s.trim():null,o=r(n.first_name),a=r(n.last_name),i=[o,a].filter(Boolean).join(" ")||r(n.name);if(!i)return null;let l=r(n.linkedin_page);if(l&&/^https:\\/\\//i.test(l))return{url:l,profile:!0};let d=(r(t)??"").replace(st,"").trim(),c=[i,d].filter(Boolean).join(" ");return{url:"https://www.linkedin.com/search/results/people/?keywords="+encodeURIComponent(c).replace(/%20/g,"+"),profile:!1}}function we(e){let t=e??{},n=l=>typeof l=="string"&&l&&l!=="null"?l:null,r=Array.isArray(t.phone_numbers)?t.phone_numbers:[],o=t.has_phone===!0||r.some(l=>n(l)!=null),a=n(t.email)!=null;return o||a?"reachable":k(t.contacts_count)+k(t.org_contacts_count)>0?"contacts_only":"empty"}async function dt(e){let t=e.sample??200,n=await p("leadbay_pull_followups",{count:t,filtered:!1,...e.personal===void 0?{}:{personal:e.personal},_triggered_by:e.ask}),r=Array.isArray(n.leads)?n.leads:[],o={reachable:0,contacts_only:0,empty:0};for(let i of r)o[we(i)]++;let a=[["reachable","Callable now"],["contacts_only","Contacts, no channel"],["empty","No contacts"]];return{sampled:r.length,bookTotal:k(n.pagination?.total),rows:a.map(([i,l])=>({id:i,label:l,total:o[i],trusted:!0,sampled:o[i]}))}}function ut(e){return new x({load:()=>p("leadbay_team_activity",{weeks:e.weeks??4,_triggered_by:e.ask})})}var ht="http://www.w3.org/2000/svg",E=(e,t)=>{let n=document.createElementNS(ht,e);for(let[r,o]of Object.entries(t))n.setAttribute(r,String(o));return n};function k(e){return typeof e=="number"&&isFinite(e)?e:0}function gt(e,t={}){let n=Array.isArray(e)?e:[];if(n.length===0){let m=document.createElement("div");m.className="lb-empty";let w=document.createElement("div");if(w.className="lb-empty-title",w.textContent=t.emptyTitle??"Nothing in this window",m.appendChild(w),t.emptyHint){let L=document.createElement("div");L.className="lb-empty-hint",L.textContent=t.emptyHint,m.appendChild(L)}return m}let r=t.width??640,o=t.height??160,a=40,i=8,l=12,d=26,c=r-a-i,s=o-l-d,u=Math.max(1,...n.map(m=>k(m.count))),g=m=>n.length===1?a+c/2:a+m/(n.length-1)*c,h=m=>l+s-k(m)/u*s,f=E("svg",{class:"lb-chart",viewBox:`0 0 ${r} ${o}`,preserveAspectRatio:"none",role:"img","aria-label":t.label??`Trend across ${n.length} points, peak ${u}`});for(let m of[0,u]){f.appendChild(E("line",{class:"lb-chart-grid",x1:a,x2:r-i,y1:h(m),y2:h(m)}));let w=E("text",{x:a-6,y:h(m)+4,"text-anchor":"end"});w.textContent=String(m),f.appendChild(w)}let y=n.map((m,w)=>`${g(w)},${h(m.count)}`);f.appendChild(E("path",{class:"lb-chart-area",d:`M${g(0)},${h(0)} L${y.join(" L")} L${g(n.length-1)},${h(0)} Z`})),f.appendChild(E("path",{class:"lb-chart-line",d:`M${y.join(" L")}`})),n.forEach((m,w)=>{f.appendChild(E("circle",{class:"lb-chart-dot",cx:g(w),cy:h(m.count),r:3}))});let _=n.length===1?[[0,"middle"]]:[[0,"start"],[n.length-1,"end"]];for(let[m,w]of _){let L=E("text",{x:g(m),y:o-8,"text-anchor":w});L.textContent=String(n[m].date??"").slice(0,10),f.appendChild(L)}return f}function bt(e){let t=document.createElement("div");t.className="lb-tiles";for(let n of e){let r=document.createElement("div");r.className="lb-tile";let o=document.createElement("span");o.className="lb-tile-label",o.textContent=n.label;let a=document.createElement("span");a.className="lb-tile-value",a.textContent=String(n.value),r.append(o,a),t.appendChild(r)}return t}function ft(e){let{rows:t,columns:n}=e;if(!t||t.length===0){let d=document.createElement("div");d.className="lb-empty";let c=document.createElement("div");if(c.className="lb-empty-title",c.textContent=e.emptyTitle??"Nothing to show",d.appendChild(c),e.emptyHint){let s=document.createElement("div");s.className="lb-empty-hint",s.textContent=e.emptyHint,d.appendChild(s)}return d}let r=e.sortKey??n[0].key,o=e.sortDir??"descending",a=document.createElement("table");a.className="lb-table";let i=()=>{a.textContent="";let d=document.createElement("thead"),c=document.createElement("tr");for(let g of n){let h=document.createElement("th");h.textContent=g.label,g.num&&h.setAttribute("data-num",""),h.setAttribute("aria-sort",g.key===r?o:"none"),h.setAttribute("tabindex","0"),h.setAttribute("role","button");let f=()=>{r===g.key?o=o==="ascending"?"descending":"ascending":(r=g.key,o=g.num?"descending":"ascending"),i(),e.onSort?.(r,o)};h.addEventListener("click",f),h.addEventListener("keydown",y=>{(y.key==="Enter"||y.key===" ")&&(y.preventDefault(),f())}),c.appendChild(h)}d.appendChild(c),a.appendChild(d);let s=t.slice().sort((g,h)=>{let f=g[r],y=h[r];if(typeof f=="string"||typeof y=="string"){let _=String(f??"").localeCompare(String(y??""));return o==="ascending"?_:-_}return o==="ascending"?k(f)-k(y):k(y)-k(f)}),u=document.createElement("tbody");for(let g of s){let h=document.createElement("tr");h.setAttribute("aria-selected","false");for(let f of n){let y=document.createElement("td");f.num&&y.setAttribute("data-num","");let _=f.cell?.(g);_==null?y.textContent=f.num?String(k(g[f.key])):String(g[f.key]??"\\u2014"):typeof _=="string"?y.textContent=_:y.appendChild(_),h.appendChild(y)}u.appendChild(h)}a.appendChild(u)};i();let l=document.createElement("div");return l.style.overflowX="auto",l.appendChild(a),l}var mt={VERSION:G,configure:Ie,styles:Re,call:p,report:T,setTelemetry:Ae,field:e=>new S(e),action:e=>new v(e),resource:e=>new x(e),list:e=>new R(e),bindSelect:ze,bindValue:qe,bindAction:De,sparkline:gt,tiles:bt,leaderboard:ft,campaigns:Ue,segmentCount:ot,portfolioSectors:rt,coverage:at,coverageBuckets:lt,coverageTotal:it,reachCoverage:dt,leadReach:we,outreach:de,note:$e,like:ue,dislike:he,qualify:be,qualifyLabel:ge,qualifyStatus:He,leadStatus:se,setStatus:ce,relanceRow:Ze,enrichContact:Je,sectorLabels:fe,leadContext:me,contactLinkedin:ct,leadPos:Ve,distanceKm:W,routeUrl:We,routeDistanceKm:Qe,orderByProximity:Ye,GOOGLE_MAPS_STOP_LIMIT:pe,EPILOGUE_LABELS:ye,sortOrder:Fe,leadHistory:Be,leadProfile:Ge,enrichment:et,callList:nt,leadList:tt,leadSource:Ke,teamActivity:ut,EPILOGUE_STATUSES:$,LEAD_STATUSES:z,SORT_ORDERS:H};typeof globalThis<"u"&&(globalThis.LeadbayArtifacts=mt);})();';
|
|
27489
|
+
ARTIFACT_USAGE_GUIDE = '# Leadbay Artifact Kit \u2014 headless domain components\n\nYou are building a single-file HTML **artifact** the user runs inside cowork. This\nkit gives you **headless view-models** that own a control\'s whole data lifecycle \u2014\nload/populate from a Leadbay call, hold value/state, poll, validate, and\nencapsulate the API call + business rules. **You own 100% of markup/layout/style.**\nThe library renders nothing. Inline the runtime once as a `<script>`; it exposes\none global `window.LeadbayArtifacts` (call it `lb`). Vanilla, no React, no build.\n\nPass every tool you use as the artifact\'s `mcp_tools` so the host permits it.\n\n## Two layers\n\n**Primitives** (generic):\n- `lb.field({ load, options, value, validate, dependsOn })` \u2014 a value + optionally\n API-populated options. `.value/.setValue/.options/.loading/.error/.valid/.subscribe`.\n- `lb.action({ tool, args, fields, confirm, onSuccess, onError })` \u2014 a write/submit.\n `.run()/.loading/.error/.lastResult/.subscribe`.\n- `lb.resource({ load, pollEvery?, until?, autoLoad? })` \u2014 one read that may change:\n load-on-click or poll-until-`until`. `.data/.loading/.refreshing/.error/.done/.load()/.refresh()/.stop()/.subscribe`.\n- `lb.list({ load, pageSize })` \u2014 paginated rows. `.items/.page/.total/.loading/.loadPage(n)/.next()/.prev()/.hasMore/.subscribe`.\n\n`.error` is `{ message, unavailable } | null`. `subscribe(cb)` fires immediately\nthen on every change \u2014 render your own DOM from it.\n\n**Domain components** (pre-wired \u2014 bake in the tool name, arg shape, and footguns):\n\n| Call | Returns | For |\n|---|---|---|\n| `lb.campaigns(ask)` | field | a campaign `<select>`, options from `leadbay_list_campaigns` |\n| `lb.segmentCount({sectorIds, city, ask})` | `Promise<{total, applied, trusted}>` | how many Monitor leads match one sector/location \u2014 `count: 1` + `pagination.total`, so a segment costs one cheap call |\n| `lb.portfolioSectors({sample, sectors, ask})` | `Promise<PortfolioSector[]>` | which sectors the user ACTUALLY holds \u2014 samples one page of followups, tallies `sector_id`, resolves names against an embedded taxonomy |\n| `lb.coverage({buckets, ask, onProgress?})` | `Promise<CoverageRow[]>` | sweep a WHOLE dimension (sector, size, recency, liked, custom field) \u2014 sequential, complete criteria per call, `trusted` per bucket |\n| `lb.coverageBuckets({field, labels?, criterion?, limit?, ask})` | `Promise<CoverageBucket[]>` | derive a dimension\'s values from the book by tallying a lead field \u2014 never hardcode the list |\n| `lb.coverageTotal({ask, personal?})` | `Promise<CoverageRow>` | the unfiltered whole-book denominator |\n| `lb.reachCoverage({sample?, personal?, ask})` | `Promise<ReachCoverage>` | callable / contacts-only / empty \u2014 the segment that says what to ENRICH. Sampled (not a filter), so rows are an estimate against `bookTotal` |\n| `lb.leadReach(lead)` | `"reachable"` \\| `"contacts_only"` \\| `"empty"` | one lead\'s reachability \u2014 `contacts_count > 0` is NOT a channel |\n| `lb.outreach({leadId, ask, status?, note?})` | action | log a call \u2192 `report_outreach` (verification + `_triggered_by` baked in). **NOT from a page\'s button** \u2014 it waits 60s on a confirmation prompt a page cannot show; see *Writing from a page* below |\n| `lb.note({leadId, note})` | action | add a note \u2192 `add_note` |\n| `lb.like(leadId)` / `lb.dislike(leadId)` | action | taste signal |\n| `lb.qualify({leadId or leadIds, ask, scored?})` | action | the MANDATORY Qualify/Requalify button \u2192 `bulk_qualify_leads` (camelCase `leadIds`, queue-not-wait, `failed[]` + quota checked) |\n| `lb.qualifyLabel(lead)` | `"Qualify"` \\| `"Requalify"` | which word the button takes, from the lead\'s own score |\n| `lb.qualifyStatus(launch, ask?)` | resource (polling) | watches a launch to its verdict \u2192 `leadbay_qualify_status` |\n| `lb.relanceRow({leadId, ask, currentStatus?})` | row bundle | ONE follow-up table row: lazy `contacts` (with email/phone), `status` + `saveStatus`, `epilogue` + `note` + `logOutreach` |\n| `lb.enrichContact({leadId, contactId, email?, phone?, ask?, onDone?})` | action | buy ONE contact\'s email / phone / both \u2192 `enrich_contacts`. Confirms the spend; the channel may land on a DIFFERENT contact, so `onDone` re-reads |\n| `lb.sectorLabels()` | `Promise<{id: label}>` | the sector taxonomy, fetched ONCE per page and cached \u2014 so no artifact inlines ~1,091 rows or prints a raw id |\n| `lb.leadContext(lead, labels)` | `LeadContext` | one lead\'s company line: `summary` (short_description \u2192 description \u2192 sector), `sector`, and the COMPANY `phone` / `email` |\n| `lb.contactLinkedin(contact, company)` | `{url, profile}` \\| `null` | where a contact\'s NAME links: their `linkedin_page` profile, else a LinkedIn people search on name + company (legal suffix stripped) \u2014 the agent\'s inline-table rule. Never the company\'s page |\n| `lb.EPILOGUE_LABELS` | `Record<string,string>` | the four epilogue values in the rep\'s words, for the select |\n| `lb.leadStatus(current?)` | field | a status `<select>` (Wanted/Won/Lost/Unwanted) |\n| `lb.setStatus({leadId or leadIds, status, date?, ask})` | action | write the org CRM status \u2192 `set_lead_status` |\n| `lb.leadHistory(leadId, ask)` | resource (lazy) | notes + activities + engagement \u2192 `account_history` |\n| `lb.leadProfile(leadId, ask)` | resource (lazy) | full lead profile \u2192 `research_lead_by_id` |\n| `lb.sortOrder(current?)` | field | a sort `<select>` mirroring the app\'s TableSort |\n| `lb.leadList({lensId?, order?, ask})` | list | a sortable Discover batch \u2192 `pull_leads` |\n| `lb.callList({source:\'followups\'\\|\'campaign\', campaignId?, city?, ask})` | list | a cold-call list (Monitor or a campaign) |\n| `lb.leadSource({kind, campaignId?, lensId?, order?, ask})` | list + `.leadUrl(lead)` | ONE list over any source \u2014 Monitor / Discover lens / campaign \u2014 with the per-source deep link and the campaign\'s no-sort rule built in |\n| `lb.leadPos(lead)` | `[lat,lng]` \\| `null` | a lead\'s coordinates, rejecting the `0,0` sentinel and out-of-range values |\n| `lb.distanceKm(a, b)` | number | great-circle km \u2014 never use flat geometry, it mis-orders east-west legs |\n| `lb.orderByProximity(stops, start?)` | stops | nearest-neighbour ordering, so the default route is not the API\'s arbitrary one |\n| `lb.routeUrl(stops)` | `{url, used, truncated}` \\| `null` | a Google Maps driving link; `truncated` counts the stops past its 11-stop cap |\n| `lb.routeDistanceKm(stops)` | number | total straight-line km in driving order \u2014 label it "as the crow flies" |\n| `lb.enrichment({leadIds, titles, ask, pollEvery?})` | resource (polling) | launch + watch contact enrichment |\n| `lb.teamActivity({weeks, ask})` | resource | manager leaderboard + activity trend \u2192 `leadbay_team_activity` |\n\n`lb.EPILOGUE_STATUSES` = the 4 disposition values\n(`STILL_CHASING`, `COULD_NOT_REACH_STILL_TRYING`, `INTEREST_VALIDATED_OR_MEETING_PLANED`, `NOT_INTERESTED_LOST`).\n`lb.LEAD_STATUSES` = the 4 org CRM statuses as `{value,label}` (`WANTED`, `WON`, `LOST`, `UNWANTED`).\n`lb.SORT_ORDERS` = the sort options as `{value,label}`; values are the backend `FIELD:ASC|DESC` enum.\n\n**Sorting is a SERVER concern.** `lb.leadList` and `lb.callList` take an `order`\n(a `lb.sortOrder()` field or a literal) and send it upstream; the backend sorts\nthe whole lens / Monitor and returns the requested page of that. Never re-sort\nrows in the browser \u2014 you would be reordering one page of a larger set, showing\nleads that do not belong at that position. The empty value means "no order\nparam", i.e. the tab\'s own ranking, which is the right default. Changing the\nsort should reset to page 0. Campaign call sheets cannot sort:\n`leadbay_campaign_call_sheet` has no `order` param, and `lb.callList` drops it\nfor that source rather than sending something the tool would reject.\n\n**Two different systems.** Epilogue = how one outreach attempt went (drives\nfollow-up ranking). Lead status = the commercial outcome, org-wide \u2014 the same\nfield the website\'s status selector writes. A won deal is a LEAD STATUS;\n"she didn\'t pick up" is an EPILOGUE. Setting one never sets the other, so when\nthe user reports both in one breath, fire both actions.\n\n### Writing from a page: a note, and the prospecting actions\n\nEvery board that lets a rep record what happened \u2014 call sheet, lead desk,\ntriage card, route planner \u2014 writes the way the web app does, through two\ncalls, and never through `lb.outreach`:\n\n```js\n// The note: the web app\'s note field.\nlb.bindAction(els.log, lb.note({ leadId: lead.id, note })); // note = an lb.field gated on non-empty\n\n// The four prospecting actions: toggles over TODAY\'s list, as in the web app.\nconst today = (lead) => new Set((lead.epilogue_today_statuses ?? []).map((e) => e.type.replace(/^EPILOGUE_/, "")));\nasync function toggle(lead, value) { // value = one of lb.EPILOGUE_STATUSES\n const selected = !today(lead).has(value);\n await lb.call("leadbay_set_prospecting_action", { lead_id: lead.id, action: value, selected, _triggered_by: ASK });\n}\n```\n\n- **Why not `lb.outreach`.** It goes to `report_outreach`, which asks a human\n to type a confirmation for every `user_confirmed` call. A page has nowhere to\n show that prompt: the button waited 60 seconds, the write landed anyway, and\n the page said Leadbay "took too long". Reps retried and logged one visit\n twice. The prompt cannot be skipped for pages \u2014 the server cannot tell a\n page from an agent that claims to be one \u2014 so a page takes the path that\n never asks. `lb.outreach` stays the AGENT\'s tool for an outreach the user\n tells it about.\n- **The actions are toggles, several on at once.** The web app\'s Prospection\n cell is a multi-select over `epilogue_today_statuses`; each tap turns one on\n or off. Read "selected" from that list, **never from `epilogue_status`**:\n unticking removes the type from today\'s list and leaves `epilogue_status`\n where it was, so a board that pre-selects from it brings a removed action\n back. `epilogue_status` is only the last value ever set \u2014 show it as a\n "Last: Still chasing \xB7 24 Sep" line when nothing is on today. The field is\n absent on a lead nobody has worked: an empty set, not an error.\n- **Buttons, in the web app\'s colours.** Four `role="checkbox"` buttons with\n `aria-checked` (a select costs a rep two taps): Still chasing blue, Meeting\n planned green, Could not reach yellow, Not interested red \u2014 the\n `--color-<hue>-background` / `-foreground` pairs, all four in the skin. The\n foreground goes on a dot and the selected border, never on the label:\n yellow\'s is too light to read as text, and the web app uses it for icons.\n- **One control per axis.** The toggles own the prospecting action; the note\n form owns the note and offers no action of its own. Two controls writing one\n field race each other, and the later write silently wins.\n\n**Rendering helpers** \u2014 the only three things the library draws, and only\nbecause hand-rolling them goes wrong the same way every time: an SVG whose\npoints escape the viewBox, a series that draws empty axes when it is empty, a\nleaderboard whose digits do not line up. Each returns a DETACHED element you\nplace; none injects itself.\n\n| Call | Returns | For |\n|---|---|---|\n| `lb.sparkline(points, {label, emptyTitle, emptyHint})` | `<svg class="lb-chart">` or an `lb-empty` block | a trend from `[{date, count}]`, themed so it reads in light and dark |\n| `lb.tiles([{label, value}])` | `<div class="lb-tiles">` | headline figures \u2014 only the few that ARE the point |\n| `lb.leaderboard({rows, columns, sortKey, sortDir, cell})` | a scroll-wrapped `lb-table` | a sortable table; `aria-sort` + keyboard headers, `num` columns tabular and end-aligned |\n\n`sparkline` returns the empty block INSTEAD of a chart when the series is\nempty \u2014 an empty window is a real answer, and empty axes read as broken.\n`leaderboard` does the same for no rows. Sorting there is client-side by\ndesign: a roll-up arrives whole, unlike a lead list the backend pages.\n\n**Binding sugar** (optional; binds a view-model to YOUR native element, no style):\n`lb.bindSelect(selectEl, field)` (populates options + value), `lb.bindValue(inputEl, field)`,\n`lb.bindAction(buttonEl, action)`. They set `data-lb-state`\n(`ready|loading|error|success|unavailable`) + `data-lb-error` on your element as\nstyling hooks. For lists/resources, use `.subscribe()` and render yourself.\n\n`ask` is the user\'s request this artifact serves \u2014 it becomes `_triggered_by`.\n\n## The skin (optional) \u2014 `lb.styles()`\n\nCall it once and you get a small `lb-*` stylesheet, so every artifact you build\nshares one visual language instead of re-inventing padding and colours. It is\n**opt-in**: skip it and you get exactly the unstyled HTML you wrote. It injects\nno markup and never touches your `class` attributes.\n\n```js\nlb.styles(); // idempotent \u2014 safe to call per row\n```\n\n| Class | For |\n|---|---|\n| `lb-card` / `lb-card-head` / `lb-title` / `lb-sub` | a lead card + its header |\n| `lb-sections` / `lb-section` / `lb-sec-title` | the card\'s section stack (16px between, 8px within) and a section\'s uppercase title |\n| `lb-card-top` / `lb-lead-title` / `lb-card-foot` | header row (leading control \xB7 title \xB7 trailing controls), the bold underlined company name, and the footer\'s leading-action/spacer/trailing-link row |\n| `lb-tags-plain` / `lb-tags-intent` / `lb-tags-empty` | firmographic tags (grey: what the company IS) and intent tags (teal: what the qualifier FOUND), plus the honest empty state for either |\n| `lb-toolbar` / `lb-field` / `lb-field-label` / `lb-field-inline` | the bar above a deck: three groups (tally \xB7 narrow \xB7 act), and a labelled control whose caption stacks above it \u2014 `lb-field-inline` keeps a checkbox beside its words |\n| `lb-tally` / `lb-status` / `lb-status-dot` | the row count (tabular, so it does not jitter as filters change) and a connection indicator whose live/dead states differ in SHAPE, not only colour |\n| `lb-pager` / `lb-pager-range` | the pager below a deck \u2014 prev/next plus an honest "21\u201340 of 60" range; pair it with `data-lb-state="loading"` on the deck so a page flip dims the old rows instead of blanking them |\n| `lb-tiles` / `lb-tile` / `lb-tile-label` / `lb-tile-value` | a row of figures for a dashboard\'s headline numbers \u2014 only for the few that ARE the point |\n| `lb-chart` (+ `lb-chart-line` / `-area` / `-dot` / `-grid`) | an inline-SVG trend that takes its colours from the theme, so it reads in both; no CDN |\n| `lb-empty` / `lb-empty-title` / `lb-empty-hint` | the honest empty state \u2014 what it means and the way out, in place of a blank chart or table |\n| `lb-table th[aria-sort]` / `td[data-num]` | a sortable header (arrow + `aria-sort`) and a tabular numeric cell, so counts line up down a column |\n| `lb-row` / `lb-stack` / `lb-spacer` | control row / vertical spacing / flex filler that right-aligns what follows |\n| `lb-link-out` | quiet external link (icon inherits currentColor) \u2014 "Open in Leadbay" |\n| `lb-select` / `lb-input` / `lb-btn` | form controls (state-aware, see below) |\n| `lb-btn-submit` / `lb-btn-ai` / `lb-btn-lg` | the app\'s `primary` / `ai` variants, and its `large` size |\n| `lb-msg` (`data-tone="error\\|ok"`) | inline feedback |\n| `lb-chip` (`data-status="WON\\|LOST"`) | a status pill |\n| `lb-table` | leads table |\n| `lb-spinner` | inline busy indicator \u2014 decorative, mark it `aria-hidden` |\n| `lb-vh` | visually-hidden text \u2014 labels heard but not seen |\n\nControls react to the `data-lb-state` the bind helpers already set \u2014 a bound\n`lb-btn` dims while loading, goes green on success, red on error, all with no\nextra CSS from you.\n\nThe palette is the **product design system**, ported from\n`frontend/packages/style/color.css` \u2014 same `--color-gray-1\u20269` ramp, same\nsemantic `--color-{green,red,blue,gold}-{background,foreground}` pairs, same\n`1.5rem` / `0.625rem` radii (concentric: outer = inner + padding) and\n`corner-shape: squircle`, matching the app\'s components.\nAn artifact therefore looks like Leadbay, not like a generic page.\n\nUse the tokens rather than hardcoded colours \u2014 the same rule the style package\nenforces. Re-theme by overriding them; don\'t fight specificity:\n\n```css\n:root { --lb-surface: var(--color-gray-2); --lb-radius: 0.5rem; }\n```\n\nDark mode works two ways: `data-theme="dark"` on `<html>` (the frontend\'s own\nhook) **and** `prefers-color-scheme`, because an artifact renders inside a host\nwhose theme attribute it cannot set. Never hardcode a light background over the\nskin \u2014 and that includes the PAGE: paint `body` with `var(--lb-page-bg)`, never\na raw `--color-gray-*`. A raw grey cannot theme, so when the cards go dark the\npage title turns white on a light ground.\n\nThe product face is `Nikkei Maru`; the stack names it first and falls back to\nthe system UI font. Do **not** add an `@font-face` \u2014 artifacts are inline-only\nand a remote font URL will silently fail.\n\n## What every lead card MUST carry\n\nA card is the artifact form of the `pull_leads` table, and it inherits that\ntable\'s rules. A card with a name and a button is not enough: the rep cannot\ntell *why* this lead is on screen. Five lines, in this order.\n\n```html\n<div class="lb-card">\n <div class="lb-card-head">\n <span class="lb-title"></span> <!-- 1. company -->\n <span class="lb-chips"> <!-- 2. state -->\n <span class="lb-chip" data-taste hidden></span>\n <span class="lb-chip" data-status hidden></span>\n </span>\n </div>\n <div class="lb-facts"> <!-- one group, tight 4px gap -->\n <div class="lb-sub"></div> <!-- 3. firmographics -->\n <div class="lb-sub" data-who></div> <!-- 4. the person -->\n <div class="lb-sub" data-how></div> <!-- 5. company channels -->\n </div>\n <div class="lb-sub" data-why></div> <!-- 6. why it fits -->\n <div class="lb-row"><!-- actions --></div>\n <div class="lb-msg" role="status" aria-live="polite"></div>\n</div>\n```\n\n1. **Company** \u2014 `name`, linked to `website` (prefix `https://` on a bare host).\n Never render the numeric `score`; use the `\u25B0\u2756\u25B1` bar if you want the signal.\n\n Keep `.lb-msg` OUT of `.lb-row`. The result of a write \u2014 "Could not reach the\n host" \u2014 is the most important thing on the card at that moment; parked between\n two buttons it reads as a control, and as a wide flex item it forces the\n trailing link onto a line of its own. Give it its own row after the actions.\n\n Also give every card an **Open in Leadbay** link to the lead\'s panel in the\n product. Put it at the **trailing end of the card\'s last action row** \u2014\n same row as the buttons, pushed right by an `lb-spacer`, not on a line of\n its own. Style it `lb-link-out`: quiet text plus a plain arrow-up-right,\n never a filled button. It is an escape hatch, not a call to action.\n\n Group the controls by what they act on, so the row does not read as a set of\n peers: wrap each axis in an `lb-group`. Status is NOT one of those axes \u2014 it\n saves on change and carries no button at all (see "Save on change is the\n default for status" below). Reserve `lb-btn-submit` for a write that really\n does need a second step, such as the bulk apply across checked rows.\n\n Taste is the one pair worth reducing to icons: thumbs up/down are unambiguous,\n they repeat on every card, and dropping the words buys the width a narrow chat\n host needs. Use `lb-btn-icon` \u2014 and note the three attributes it REQUIRES,\n because with no text the glyph is the whole affordance:\n\n - `aria-label` naming the lead ("Like Acme Corp"), since the control repeats\n N times down the list;\n - `title` so a sighted user who does not know the glyph gets a tooltip;\n - `aria-pressed` reflecting the current taste \u2014 a toggle must say whether it\n is on, and `[aria-pressed=true]` is what the skin styles.\n\n Do **not** reduce "Set status" to an icon: no glyph says "commit the value in\n the select beside me". Icons work for a fixed, well-known action; they fail\n for one whose meaning comes from a neighbouring control. The status select\n sidesteps the question entirely by carrying no button at all \u2014 it saves on\n change \u2014 but the rule stands for any write whose meaning comes from the\n control beside it.\n\n ```html\n <div class="lb-row">\n <span class="lb-group"> <!-- taste: two toggles -->\n <button class="lb-btn lb-btn-icon" aria-label="Like Acme Corp"\n title="Like" aria-pressed="false">\n <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"\n stroke-linecap="round" stroke-linejoin="round" aria-hidden="true">\n <path d="M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z"/>\n </svg>\n </button>\n <button class="lb-btn lb-btn-icon" data-taste="disliked"\n aria-label="Dislike Acme Corp" title="Dislike" aria-pressed="false">\n <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"\n stroke-linecap="round" stroke-linejoin="round" aria-hidden="true">\n <path d="M17 14V2"/>\n <path d="M9 18.12 10 14H4.17a2 2 0 0 1-1.92-2.56l2.33-8A2 2 0 0 1 6.5 2H20a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.76a2 2 0 0 0-1.79 1.11L12 22a3.13 3.13 0 0 1-3-3.88Z"/>\n </svg>\n </button>\n </span>\n <select class="lb-select" aria-label="Lead status for Acme Corp"></select>\n <span class="lb-spacer"></span> <!-- pushes the link to the end -->\n <a class="lb-link-out" data-k="open" target="_blank" rel="noopener">\n Open in Leadbay\n <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"\n stroke-linecap="round" stroke-linejoin="round" aria-hidden="true">\n <line x1="7" y1="17" x2="17" y2="7"/><polyline points="7 7 17 7 17 17"/>\n </svg>\n </a>\n </div>\n ```\n\n Keep the arrow a bare diagonal stroke \u2014 the text already says where the link\n goes, so the glyph only has to mark "leaves this page". Mark the `<svg>`\n `aria-hidden="true"`: it is decorative, and the link text is the accessible\n name.\n **Pick the view the lead actually lives in** \u2014 the URL is\n `/app/<view>?lead=<uuid>`, and the three views are `discover`, `monitor`,\n `campaign`. Landing a Monitor lead on Discover drops the rep into a list\n that does not contain it:\n\n ```js\n function leadUrl(lead, campaignId) {\n const id = encodeURIComponent(lead.id);\n // A campaign card carries TWO params \u2014 the campaign selects the list, the\n // lead opens the panel inside it. Campaign wins even when in_monitor is\n // also true, because that is the list the rep is looking at.\n if (campaignId) {\n return `https://leadbay.app/app/campaign?campaign=${encodeURIComponent(campaignId)}&lead=${id}`;\n }\n const view = lead.in_monitor ? "monitor" : "discover";\n return `https://leadbay.app/app/${view}?lead=${id}`;\n }\n openEl.href = leadUrl(lead, campaignId);\n ```\n\n `in_monitor` / `in_discover` are booleans on the `pull_followups` payload \u2014\n every follow-up carries `in_monitor: true`, so a call sheet must link to\n `monitor`. `pull_leads` omits both flags entirely; its leads are the Discover\n batch by definition, so `discover` is the default. A campaign card\n (`lb.callList({source:"campaign", campaignId})`) needs `?campaign=<id>&lead=<id>`\n \u2014 the param names are `CAMPAIGN_QUERY_PARAM` and `LEAD_QUERY_PARAM`, and the\n app\'s own `useLeadPanel` preserves whatever params are already set, so the\n two coexist by design. Omitting `campaign=` opens an empty campaign view.\n\n Inline the glyph as SVG rather than an emoji or `\u2197` \u2014 it inherits\n `currentColor` and scales with the text, so it stays legible in both themes.\n `?lead=<uuid>` is the real deep-link (`LEAD_QUERY_PARAM` in the web app, read\n on load; the panel is an overlay, so the view choice only decides what sits\n behind it). This is the ONE place a card may use `lead.id`: as a link target,\n never as visible text.\n2. **State chips** \u2014 taste (`data-taste`) and CRM status (`data-status`) are\n INDEPENDENT axes; render both, hide the empty one. Never collapse to one chip.\n3. **Firmographics** \u2014 sector of activity first, then city, then size, then the\n contact. `sector_id` is a RAW ID (`"5136"`), not a label: resolve it via\n `leadbay_list_sectors` (1346 rows \u2014 fetch once, cache, never inline the lot)\n or omit it. Never print the raw id.\n\n **Always show whether the lead is reachable \u2014 and never merge the person\n with the company\'s switchboard.** These are two separate lines:\n\n ```js\n // WHO \u2014 recommended_contact. Name, and job_title ONLY when present; on list\n // payloads it is usually null, and inventing one is worse than omitting it.\n const rc = lead.recommended_contact;\n const who = rc ? [rc.first_name, rc.last_name].filter(Boolean).join(" ") : null;\n const whoLine = who ? who + (rc.job_title ? " \xB7 " + rc.job_title : "") : "No contact yet \u2014 enrich to find one";\n // The NAME is a link to LinkedIn \u2014 never bare text, exactly as in the\n // agent\'s inline table: the profile when `linkedin_page` is on file, else a\n // people search on name + company. `profile` says which, for the tooltip.\n const li = who ? lb.contactLinkedin(rc, lead.name) : null; // {url, profile} | null\n\n // HOW \u2014 company-level channels. `phone_numbers` and `email` belong to the\n // COMPANY, not to `recommended_contact`. Rendering "Jean \xB7 \u260E 0123\u2026" claims a\n // direct line that does not exist; it is the switchboard.\n // The API returns the literal STRING "null" for a missing value \u2014 in\n // phone_numbers as well as email (a real lead ships phone_numbers:["null"]).\n // Guard BOTH or the card prints "\u260E null" as if it were a number.\n const real = (v) => (v && v !== "null" ? v : null);\n const phone = real((lead.phone_numbers || [])[0]);\n const email = real(lead.email);\n const howLine = [phone && "\u260E " + phone, email && "\u2709 " + email].filter(Boolean)\n .join(" \xB7 ") || "No phone or email \u2014 enrich to look for them";\n ```\n\n ```html\n <div class="lb-sub">Sector \xB7 City \xB7 Size</div>\n <div class="lb-sub"><span aria-hidden="true">\u{1F464}</span> <a class="lb-link" href="https://www.linkedin.com/in/\u2026" target="_blank" rel="noopener">Jean-Fran\xE7ois Froemer</a> \xB7 G\xE9rant</div>\n <div class="lb-sub"><span class="lb-vh">Company switchboard: </span><span aria-hidden="true">\u{1F3E2} \u260E</span> 01 23 45 67 89 (company line)</div>\n ```\n\n Label the channel line as the **company\'s**, so a rep reading fast cannot\n mistake it for a direct line. A per-contact email or phone exists only after\n enrichment \u2014 `research_lead_by_id` exposes it as `contacts.reachable[]`, and\n `_meta.has_reachable_contact` is the authoritative flag. The list payloads\n carry neither, so a card built from `pull_leads` / `pull_followups` can only\n ever show company channels. Say "enrich to reveal" rather than implying the\n contact is callable.\n\n Two things that look like reachability and are not: a `linkedin_page` alone\n (the rep cannot message a URL without leaving the artifact \u2014 same rule\n `research_lead_by_id` applies), and `contacts_count > 0` (it counts known\n people, not people you can contact; a lead can show 2518 contacts and zero\n channels). `pull_followups` carries `has_phone` as a ready-made boolean;\n `pull_leads` omits it, so derive from `phone_numbers` there.\n4. **Why it fits** \u2014 one sentence, \u226420 words. Walk this chain and stop at the\n first hit:\n\n 1. `short_description`\n 2. `description` (longer; only on `research_lead_by_id` /\n `research_lead_by_name_fuzzy` \u2014 the trim payloads omit it)\n 3. top 2 `tags[].display_name`\n 4. `qualification_summary.best_response_excerpt`, trimmed to one sentence\n 5. `keywords`, first 3, joined with ` \xB7 `\n 6. the resolved sector label \u2014 better than nothing, and if step 3 already\n printed the sector on the firmographics line, skip to step 7\n 7. the literal *"No description yet \u2014 qualify to add one"* ("qualify" is the\n product\'s own verb; "run qualification to generate one" is a nominalisation)\n\n Never leave this line blank: a silent gap reads as a rendering bug, whereas\n the fallback tells the rep the data is missing and what fixes it.\n\n **The two list payloads are complementary, so the chain must span both.**\n `pull_leads` returns `short_description` on every lead but no `sector_id`;\n `pull_followups` returns `sector_id` but no `short_description` at all. A\n card fed by one will fall through to a different step than the same card fed\n by the other \u2014 that is expected, not a bug. Never call\n `research_lead_by_id` per row just to fill this line: it is one request per\n lead. Fetch it lazily when the rep expands a card.\n\n**Never show** on a card: `id`, `sector_id`, `location.pos`, `location.country`\n(unless city and state are both missing), `is_hq`, `*_in_progress`,\n`highlighted_fields`, `custom_fields`, `stale_at`, `deal_insights`,\n`need_attention*`, any count that is 0, any value that is the string `"null"`.\n\n**Minimum actions.** A card that only displays is a table row that costs more \u2014\nif you are not wiring an action, render the markdown table instead. Wire at\nleast one write, and prefer the set the rep actually needs:\n\n| Card is for | Wire |\n|---|---|\n| triage a discovery batch | `lb.like` / `lb.dislike` + `lb.setStatus` |\n| working a call list | `lb.note` (gated on a note) + the prospecting toggles + `lb.leadHistory` \u2014 see *Writing from a page* |\n| pipeline review | `lb.setStatus` + `lb.note` |\n\nAlways render the `.error` branch of every view-model \u2014 a control that cannot\nreach the host must say so, not sit silent.\n\n **Accessibility is the markup\'s job, not the skin\'s.** `data-lb-state` is a\n STYLING hook; it sets no ARIA. A card renders N times in a list, so every\n repeated control needs a name that says *which* lead it acts on:\n\n ```html\n <select class="lb-select" aria-label="Lead status for Acme Corp"></select>\n <button class="lb-btn" aria-label="Like Acme Corp">Like</button>\n <a class="lb-link-out" aria-label="Open Acme Corp in Leadbay" \u2026>\n <span class="lb-msg" role="status" aria-live="polite"></span>\n ```\n\n Without the `role="status"` node the rep hears nothing when a write fails \u2014\n `bindAction` puts the message in a `data-lb-error` attribute that nothing\n renders. Mark the `\u25B0\u2756\u25B1` bar `aria-hidden="true"` and follow it with\n `<span class="lb-vh">Fit: strong</span>`; the glyphs otherwise read aloud as\n "black parallelogram black parallelogram\u2026" before the company name. Use\n `lb-vh` for any label that should be heard but not seen.\n\n## Recipe: the pull-leads triage board (THE default board)\n\n> **Served finished \u2014 do not build this by hand.** For today\'s Discover batch (`leadbay_pull_leads`), call\n> `leadbay_get_artifact_runtime` with `template: "triage_board"` and publish the\n> returned `html` as it is, with its `capabilities`, `icon` and\n> `description`. That page is the approved board every user gets, byte for\n> byte; this recipe documents what it does and why, so the page can be changed\n> knowingly. Changes to the board are made in the template source\n> (`packages/components/src/templates/`), never in a re-implementation.\n\nFor the other batch tools below, the template does not fit yet \u2014 it loads\nthe Discover batch, not theirs \u2014 so those boards are still built from this\nrecipe.\n\nWhen the rep accepts an interactive board after ANY tool that returns a batch\nof leads \u2014 `leadbay_pull_leads`, `leadbay_find_new_leads`,\n`leadbay_pull_followups`, `leadbay_campaign_call_sheet` \u2014 build THIS. It is a\nfixed recipe, not a starting point: the same board every time means a rep who\nlearned it once knows it everywhere. Deviate only when the rep asks for\nsomething specific.\n\nBuild it from the data ALREADY IN HAND \u2014 never re-call the tool that produced\nthe batch just to populate the board.\n\n**The board pins the light theme.** Set it before `lb.styles()`, as the first\nthing the artifact does:\n\n```js\ndocument.documentElement.setAttribute("data-lb-theme", "light");\nlb.styles();\n```\n\nThe skin\'s `prefers-color-scheme` rule is guarded by `:not([data-lb-theme=light])`,\nso the one attribute keeps the OS theme out \u2014 no token overrides, no\nspecificity fight, and `lb.styles()` still declares `color-scheme:light` so\nnative select popups follow. A HOST\'s `data-theme="dark"` on `<html>` is not\nguarded and wins: an MCP Apps host (ChatGPT sets it; the kit\'s MCP Apps\ntransport applies the theme any host reports) puts the board inside its own\nchat, where a light board in a dark thread is the wrong answer. So every part\nof the board must read through skin tokens \u2014 the page ground included\n(`body { background: var(--lb-page-bg) }`) \u2014 or that half stays light while the\ncards turn dark. A rep works a board beside the product\'s own light UI and reads the\ncards as the same surface; a board that flips with the HOST\'s theme puts a dark\ncard next to a light app for the same lead. This is the board\'s default, not\nthe skin\'s: `lb.styles()` keeps honouring `prefers-color-scheme` everywhere\nelse, and an artifact that WANTS the host theme simply omits the attribute.\n\nTwo things change with the source, and nothing else does:\n\n- **The deep link\'s view.** `pull_leads` omits `in_monitor`/`in_discover`, so\n its leads are the Discover batch by definition; `pull_followups` carries\n `in_monitor: true` on every row, so a call board links to `monitor`; a\n campaign sheet needs `?campaign=<id>&lead=<id>`. See the leadUrl helper above.\n- **Which write leads the card.** A discovery batch is triaged (taste + status);\n a follow-up list is worked (`lb.note` + the prospecting toggles). Order the\n Outreach and Status sections to match, but ship both either way.\n\n**Per card** \u2014 a header, then a stack of titled SECTIONS, then the write\nfeedback. The skin ships the whole geometry (`lb-sections` = 16px between\nsections, `lb-section` = 8px within), so build the structure and add no\nspacing CSS of your own:\n\n```html\n<article class="lb-card">\n <div class="lb-card-top"> <!-- checkbox \xB7 title \xB7 taste -->\n <input type="checkbox" aria-label="Select Acme Corp for bulk apply">\n <div class="lb-lead-title"><a href="https://acme.com">Acme Corp</a></div>\n <span class="lb-group"><!-- like / dislike, lb-btn-icon --></span>\n </div>\n <div class="lb-chips" hidden><!-- data-taste + data-status, see contract --></div>\n\n <div class="lb-sections">\n <div class="lb-section"> <!-- untitled: what it is -->\n <div class="lb-tags-plain"><span>Honfleur, Normandie</span><span>50\u201399</span></div>\n <div class="lb-sub">Why it fits, one sentence.</div>\n </div>\n <div class="lb-section"><div class="lb-sec-title">Fit</div>\u2026</div>\n <div class="lb-section">\n <div class="lb-sec-title">Intent tags</div>\n <div class="lb-tags-intent"><span>Vente terrain</span>\u2026</div>\n <!-- no tags? <div class="lb-tags-empty">None \u2014 the qualifier found no\n buying signal</div>, never an empty row -->\n </div>\n <div class="lb-section"><div class="lb-sec-title">Data</div>\u2026</div>\n <div class="lb-section">\n <div class="lb-sec-title">Status</div>\n <select class="lb-select" aria-label="Lead status for Acme Corp"></select>\n </div>\n <div class="lb-section">\n <div class="lb-sec-title">Outreach</div>\n <div class="lb-stack"> <!-- one control per line -->\n <div class="lb-actions" role="group"><!-- the 4 prospecting toggles, see *Writing from a page* --></div>\n <input class="lb-input" aria-label="Outreach note for Acme Corp">\n <button class="lb-btn lb-btn-submit">Log outreach</button> <!-- the note: lb.note, never lb.outreach -->\n </div>\n </div>\n <details class="lb-section"><!-- lazy full profile, see below --></details>\n <div class="lb-card-foot">\n <button class="lb-btn lb-btn-ai" data-k="qualify">Requalify</button>\n <!-- MANDATORY. Text from lb.qualifyLabel(lead): "Qualify" when the lead\n has no AI score yet, "Requalify" when it has one to replace. -->\n <span class="lb-spacer"></span>\n <a class="lb-link-out">Open in Leadbay</a>\n </div>\n </div>\n\n <div class="lb-msg" role="status" aria-live="polite"></div>\n</article>\n```\n\nWire them with `lb.like` / `lb.dislike`, `lb.leadStatus()` +\n`lb.setStatus({leadId, status, ask})`, `lb.note({leadId, note})` \u2014 the note\nfield gated by a `validate` so an empty note cannot log \u2014 and the four\nprospecting toggles from *Writing from a page*,\nplus `lb.qualify` in `lb-card-foot` \u2014 the Qualify/Requalify button every card\nMUST carry, labelled by `lb.qualifyLabel(lead)`.\n\nFive rules the structure encodes, each of which a hand-built card gets wrong:\n\n- **One section per titled block.** Two titles in one `lb-section` share its\n 8px gap instead of the 16px between sections, so the second title reads as\n part of the first block. Fit and Intent tags are the pair this catches.\n- **A section title sits at section level**, as a direct child. Nested inside a\n row (beside a verdict, say) it stops being a peer of the other titles and the\n card loses its scan order.\n- **No date input.** Status saves on change and the backend stamps the date as\n "now"; a picker is only for backdating, which this board does not do.\n- **Controls stack and span their section.** A select sizes to its longest\n option and a text input to a UA default, so side by side they come out\n different widths despite identical padding and height.\n- **Every card ships Qualify/Requalify.** Mandatory, and not conditional on\n the lead looking under-qualified: the rep reads "why it fits" and the intent\n tags, decides the qualifier got this one wrong, and re-runs it \u2014 a card that\n omits the button makes the verdict look final. It is also the one control\n that ACTS on the line the rep is doubting, which is why it sits in\n `lb-card-foot` next to Open in Leadbay rather than among the taste and\n status writes. Wire it with `lb.qualify` and label it with\n `lb.qualifyLabel(lead)`; both are below.\n\nOnly the bulk apply keeps a submit button, because it fans out across checked\nrows and takes a `confirm`.\n\n**Toolbar** \u2014 a tally, four filters (CRM status \xB7 taste \xB7 qualifier verdict \xB7\nsector), select-all + one `lb.setStatus({leadIds})` bulk write, and\n`lb.sortOrder()` bound to the list\'s `order`. Filters are CLIENT-side over the\nloaded page; sort is SERVER-side, so changing it must `loadPage(0)` (see the\nsorting rule above). The skin ships its geometry too:\n\n```html\n<div class="lb-toolbar">\n <span class="lb-tally">5 leads</span>\n\n <span class="lb-group"> <!-- narrow: sort + filters -->\n <label class="lb-field">\n <span class="lb-field-label">Sort</span>\n <select class="lb-select" aria-label="Sort order"></select>\n </label>\n <label class="lb-field">\n <span class="lb-field-label">Status</span>\n <select class="lb-select" aria-label="Filter by CRM status"></select>\n </label>\n <!-- taste, verdict \u2026 -->\n </span>\n\n <span class="lb-spacer"></span>\n\n <span class="lb-group"> <!-- act on the selection -->\n <label class="lb-field lb-field-inline">\n <input type="checkbox"><span class="lb-field-label">Select all</span>\n </label>\n <select class="lb-select" aria-label="Status for selected leads"></select>\n <button class="lb-btn lb-btn-submit">Apply to selected</button>\n </span>\n\n <span class="lb-status" data-live="yes"> <!-- shape, not just colour -->\n <span class="lb-status-dot"></span>live\n </span>\n\n <div class="lb-msg" role="status" aria-live="polite" style="flex:1 0 100%"></div>\n</div>\n```\n\nThree groups, because the bar does three things \u2014 report, narrow, act. Flat, the\nbulk commit reads as one more filter. Sort belongs in the narrow group but costs\na round trip the others do not, so mark that boundary (a divider, or its own\n`lb-group`) rather than letting four selects look interchangeable.\n\n**Pagination** \u2014 `lb.leadList` is already a paginated model: `.page`,\n`.pageSize`, `.total`, `.hasMore`, `.next()`, `.prev()`, `.loadPage(n)`. A\nboard that renders only page 0 silently hides the rest of the lens, so render\nthe pager whenever `total` exceeds one page:\n\n```html\n<div class="lb-pager">\n <button class="lb-btn" data-k="prev">Previous</button>\n <button class="lb-btn" data-k="next">Next</button>\n <span class="lb-spacer"></span>\n <span class="lb-pager-range">21\u201340 of 60</span>\n</div>\n```\n\n```js\nconst list = lb.leadList({ order: sort, ask: ASK, pageSize: 20 });\nlist.subscribe((l) => {\n deck.setAttribute("data-lb-state", l.loading ? "loading" : "ready");\n if (l.error) { renderError(l.error); return; } // .code says what to do\n if (!l.loading) renderCards(l.items); // keep old rows while loading\n const from = l.page * l.pageSize + 1;\n range.textContent = `${from}\u2013${Math.min(from + l.items.length - 1, l.total)} of ${l.total}`;\n prev.disabled = l.page === 0 || l.loading;\n next.disabled = !l.hasMore || l.loading;\n});\nprev.onclick = () => list.prev();\nnext.onclick = () => list.next();\n```\n\nFour things this gets right that a hand-rolled pager usually does not:\n\n- **A range, not a page number.** "21\u201340 of 60" says how much is left; "page 2"\n does not, and a rep cannot tell a short lens from a long one.\n- **Disable at the ends, and while loading.** `hasMore` is\n `(page + 1) * pageSize < total`, so it is false on the last page even when\n that page is full \u2014 a Next that fetches nothing reads as a broken button.\n- **Keep the old rows while the next page loads.** Blanking the deck loses the\n scroll position; `lb-deck[data-lb-state=loading]` dims and locks it instead.\n `loadPage` already drops a stale response if the rep flips pages quickly.\n- **Selection and page are independent.** A checked lead on page 1 stays in the\n bulk set after a flip, so either carry the selection across pages or clear it\n on the flip \u2014 silently dropping it means a bulk apply writes fewer leads than\n the rep ticked. Say which you chose in the UI.\n\nChanging the sort resets to page 0 (`loadPage(0)`), since the backend sorts the\nwhole lens and page 2 of the old order is not page 2 of the new one.\n\n**Rich profile data is LAZY.** The card renders from the list payload alone. A\n`lb.leadProfile(leadId, ask)` resource \u2014 sector label, `location.full`, real\n`linkedin_page`, the qualification Q&A \u2014 loads only when the rep EXPANDS that\ncard, one call for one lead they chose to open:\n\n```js\nconst profile = lb.leadProfile(lead.id, ASK); // autoLoad:false\nprofile.subscribe((p) => renderDetail(els.detail, p));\nels.expand.onclick = () => profile.load(); // one call, on demand\n```\n\nNever prefetch it for the batch: a 20-lead board would fire 20 requests to fill\nlines the rep may never read. The list payload already carries everything the\ncollapsed card shows.\n\n**Use `lb.qualify` \u2014 never hand-roll this action.** It is MANDATORY on every\nlead card, on every board, in every recipe. A card that renders a lead and no\nqualify control is incomplete: the rep can read the qualifier\'s verdict but\ncannot contest it without leaving the artifact.\n\n```js\nconst q = lb.qualify({ leadId: lead.id, ask: ASK, scored: lb.qualifyLabel(lead) === "Requalify" });\nels.qualify.textContent = lb.qualifyLabel(lead); // "Qualify" or "Requalify"\nlb.bindAction(els.qualify, q);\nq.subscribe((a) => {\n // QUEUED, not finished. Say so and leave the old tags alone \u2014 a card that\n // repaints as though a verdict arrived is lying about work that has not run.\n els.msg.textContent = a.loading ? "Queueing\u2026"\n : a.error ? a.error.message\n : a.lastResult ? "Qualifying \u2014 the verdict lands shortly." : "";\n els.msg.dataset.tone = a.error ? "error" : a.lastResult ? "ok" : "";\n if (a.lastResult) watch(a.lastResult); // optional, see below\n});\n```\n\n**Which word the button takes is not a style choice.** `lb.qualifyLabel(lead)`\nreads the lead\'s own data: a lead with an `ai_agent_lead_score`, or a\n`qualification_summary.answered > 0`, has a verdict to replace and gets\n**Requalify**; one without has never been run and gets **Qualify**. Labelling\nan unscored lead "Requalify" implies a previous run that never happened, and\nthe rep reads the empty tag row as a failure of the button they just pressed.\n\n**To show the verdict actually landing**, hand the launch result to\n`lb.qualifyStatus` \u2014 otherwise the card can only ever say "queued":\n\n```js\nfunction watch(launch) {\n const job = lb.qualifyStatus(launch, ASK); // polls every 15s\n job.subscribe((j) => {\n if (j.error) { els.msg.textContent = j.error.message; return; }\n if (j.done) profile.load(); // re-read the new tags\n });\n}\n```\n\nDeclare BOTH tools in the artifact\'s `mcp_tools`:\n`leadbay_bulk_qualify_leads` and `leadbay_qualify_status`.\n\nGive the button `class="lb-btn lb-btn-ai"` \u2014 purple is the product\'s AI\naffordance, and the app\'s own QualifyButton is `variant="ai"`.\n\n## Recipe: the ROUTE PLANNER (leads on a map, worked in person)\n\n> **Served finished \u2014 do not build this by hand.** For any route planner, call\n> `leadbay_get_artifact_runtime` with `template: "route_planner"` and publish the\n> returned `html` as it is, with its `capabilities`, `icon` and\n> `description`. That page is the approved board every user gets, byte for\n> byte; this recipe documents what it does and why, so the page can be changed\n> knowingly. Changes to the board are made in the template source\n> (`packages/components/src/templates/`), never in a re-implementation.\n\nIts one permitted edit is the JSON in `<script id="lb-board-config">`: set\n`"city"` to where the rep is going ("Lyon"), or leave it `""` for all\nfollow-ups. Never a country.\n\nWhen the rep is going somewhere \u2014 "I\'m in Lyon Thursday", "plan my tourn\xE9e",\n"who can I see on the way" \u2014 build THIS rather than the desk. Same writes,\ndifferent question: not *who do I call* but *what order do I drive*.\n\n**Half map, half panel.** The map is the left half and the lead list the\nright; clicking a marker opens that lead in the panel with its actions. A\nmap alone cannot be worked and a list alone is not a route.\n\nUse the kit\'s geo helpers \u2014 do NOT hand-roll them. `lb.leadPos`,\n`lb.distanceKm`, `lb.orderByProximity`, `lb.routeUrl` and\n`lb.routeDistanceKm` each encode one of the five rules below, and a page that\nreimplements them locally gets no benefit when a rule is fixed in the kit.\nThey landed after kit 0.6.0, so a page pinned to an older runtime has to be\nmoved forward rather than given private copies.\n\n```js\nconst stops = leads.map((l) => ({ lead: l, pos: lb.leadPos(l) })).filter((s) => s.pos);\nconst ordered = lb.orderByProximity(stops); // nearest-neighbour default\nconst link = lb.routeUrl(ordered); // null when nothing is placeable\nif (link?.truncated) note(`${link.truncated} stops past Google\'s limit are not in this link`);\n```\n\nFive rules, each one something a hand-built map gets wrong:\n\n- **Ungeocoded leads are NORMAL \u2014 list them, never drop them.** An imported\n book is mostly without coordinates. `lb.leadPos` returns null for those,\n and they belong in the panel under a "no location" heading. A map that\n silently shows 12 of 40 leads tells the rep their book is small.\n- **`0,0` is not a lead.** It is the API\'s missing-position sentinel, in the\n Gulf of Guinea. `lb.leadPos` rejects it; a raw `location.pos` read does not.\n- **Distance is `lb.distanceKm`, never Pythagoras.** At French latitudes a\n degree of longitude is ~73km against ~111km for latitude, so flat maths\n overstates east-west legs by half and mis-orders the day.\n- **Google Maps drops stops past 11.** `lb.routeUrl` reports `truncated`;\n say the number, because the alternative is a rep driving a route whose last\n calls silently vanished.\n- **The pin must carry the state.** Colour it by CRM status and ring the ones\n already worked today, so a glance at the map answers "where have I been".\n Status changes from the panel repaint the pin immediately \u2014 that feedback\n is the whole reason the two halves sit side by side.\n\n### The panel is FIXED \u2014 same sections, same order, every time\n\nA rep who learned the planner once must find the same controls in the same\nplace on every board any agent builds. "Clicking a marker opens that lead with\nits actions" is not a spec \u2014 it leaves the sections, their order and their\ncontrols to whoever builds the board, and a rep cannot build a habit on that.\nEmit the head and these four sections, in this order, and add nothing between\nthem:\n\n**The panel has TWO modes.** With no lead selected it shows the overview \u2014\n*Today\'s route* (numbered stops, per-leg km, move up / move down / remove, the\n"as the crow flies" total, and the Google Maps link) then the full lead list.\nSelecting a marker replaces both with the lead detail below; closing it\nreturns to the overview.\n\n```html\n<aside class="panel">\n <!-- HEAD \u2014 everything the rep needs before they get out of the car -->\n <div class="section">\n <div class="panel-head">\n <h2>{company}</h2>\n <button class="icon-btn" aria-label="Close {company}">\u2715</button>\n </div>\n <div class="chips"> <!-- status chip + "worked today" chip -->\n <div class="facts">\n <span class="address">{location.full, else city/state, else "No address on file"}</span>\n <span>{size}</span>\n <span>Contact: {name \u2192 LinkedIn link via lb.contactLinkedin} \xB7 {job_title} \u2014 else "No contact yet \u2014 enrich to find one"</span>\n <span>Company line: \u260E {phone} \xB7 \u2709 {email} \u2014 else "No company phone or email \u2014 enrich to look for them"</span>\n </div>\n <div class="actions"> <!-- only when the lead has coordinates -->\n <button>Locate on map</button>\n <button>Add to route</button> <!-- toggles to "Remove from route" -->\n </div>\n <div class="links">\n <a>Google Maps \u2197</a> <!-- only when placeable -->\n <a>Open in Leadbay \u2197</a>\n </div>\n </div>\n\n <div class="section"> <!-- 1. STATUS \u2014 lb.setStatus, saves on change -->\n <h3 class="section-title">Status</h3>\n <select class="lb-select">\u2026</select>\n </div>\n\n <div class="section"> <!-- 2. PROSPECTING ACTION \u2014 toggles, leadbay_set_prospecting_action -->\n <h3 class="section-title">Prospecting action</h3>\n <div class="choices">\u2026</div> <!-- the 4 lb.EPILOGUE_STATUSES, each on/off, several at once -->\n <div class="summary">\u2026</div> <!-- "Last: Still chasing \xB7 24 Sep" when none is on today -->\n </div>\n\n <form class="section"> <!-- 3. LOG OUTREACH \u2014 channel + note, NO status, via lb.note -->\n <h3 class="section-title">Log outreach</h3>\n </form>\n\n <div class="section"> <!-- 4. NEARBY FOLLOW-UPS \u2014 lb.distanceKm, nearest first -->\n <h3 class="section-title">Nearby follow-ups</h3>\n </div>\n</aside>\n```\n\nThe head is not decoration. A rep standing outside the building needs the\naddress, who to ask for, and a number to call if the door is locked \u2014 and the\ntwo channel lines are separate because `phone_numbers` / `email` on a lead are\nthe COMPANY switchboard, not the contact\'s direct line. Say so, as\n"Company line:", or the rep dials it expecting the person.\n\nWhy this order and not another: **status first** because it is one click and\nthe rep usually knows it before they park; **prospecting action second**\nbecause on a doorstep "nobody in" is the whole report and typing a note is not\nworth it; **log outreach third** because it is the long form, for the visit\nthat actually went somewhere; **nearby last** because it is the question you\nask once the current stop is done.\n\nThe rules the sections carry:\n\n- **Status and prospecting action are DIFFERENT AXES.** Status is the\n commercial outcome the org sees (`lb.setStatus`); the prospecting action is\n how this visit went and drives when the lead resurfaces\n (`leadbay_set_prospecting_action`).\n Setting one never sets the other \u2014 a rep who books a meeting sets both.\n- **The prospecting action is four buttons, not a dropdown.** One tap on a\n phone, in a car park. A select costs two.\n- **They are TOGGLES over today\'s list, exactly as in the web app.** The web\n app\'s Prospection cell is a multi-select over `epilogue_today_statuses`:\n several actions can be on for one day, and each tap turns one on or off.\n Mirror it, so a rep sees the same state in both places:\n\n ```js\n const today = new Set((lead.epilogue_today_statuses ?? []).map((e) => e.type.replace(/^EPILOGUE_/, "")));\n const selected = !today.has(value); // the tap flips it\n await lb.call("leadbay_set_prospecting_action", { lead_id: lead.id, action: value, selected, _triggered_by: ASK });\n ```\n\n Read "selected" from `epilogue_today_statuses`, **never from\n `epilogue_status`**. Unticking removes the type from today\'s list and leaves\n `epilogue_status` where it was, so a board that pre-selects from it brings a\n removed action back on the next open. `epilogue_status` is only the last\n value ever set: show it as a "Last: Still chasing \xB7 24 Sep" line when nothing\n is on today, as the web app does. The field is absent on a lead nobody has\n worked \u2014 that is an empty set, not an error. Use `role="checkbox"` and\n `aria-checked`, not `aria-pressed`.\n- **In the web app\'s colours.** Still chasing blue, Meeting planned green,\n Could not reach yellow, Not interested red \u2014 the `--color-<hue>-background`\n / `-foreground` pairs, all four in the skin. The foreground goes on a dot\n and the selected border, never on the label: yellow\'s is too light to read\n as text on white, and the web app only uses it for icons.\n- **Log outreach writes a NOTE. It must not offer the epilogue too.** The\n first build of this panel put the same four `lb.EPILOGUE_STATUSES` in a\n select inside the form, so a rep who tapped a button and then submitted the\n form issued two writes of one field and the second silently won. Worse, the\n form\'s "No outcome yet" omitted `epilogue_status` entirely, leaving the\n button\'s status standing under a note that said otherwise, with nothing on\n screen showing the mismatch. One control per axis: the buttons own the\n epilogue, the form owns the note. Say so under the submit \u2014 "Sets no status\n \u2014 use Prospecting action above for that."\n- **A page never calls `lb.outreach`** (see *Writing from a page*). Write the\n note with `lb.note` and the action with `leadbay_set_prospecting_action` \u2014\n the web app\'s own two paths.\n `lb.outreach` goes to `report_outreach`, which asks a human to type a\n confirmation for every `user_confirmed` call, and a page has nowhere to\n show that prompt: the button waited 60 seconds, the write landed anyway, and\n the page showed "took too long". Reps retried and logged one visit twice.\n The prompt cannot be skipped for pages, because the server cannot tell a\n page from an agent that claims to be one \u2014 so the page takes the path that\n never asks.\n- **Every write repaints the pin before the panel says "saved".** The map is\n the record the rep reads; a panel that confirms while the pin still shows\n the old status is lying about what they can see.\n\n`lb.relanceRow` may be added for contacts and enrichment, as a FIFTH section\nafter Nearby \u2014 never inserted among the four.\n\n### Colours come from the skin, not from a second palette\n\n`lb.styles()` already defines the product\'s greys, so a page that also\ndeclares its own ends up with two near-identical neutrals on one screen \u2014 a\nblue-tinted `#f4f5f7` page behind a `#f0f0f0` toolbar, borders at `#e2e5ea`\nbeside the kit\'s `#e0e0e0`. Close enough that nobody can name the problem,\nwrong enough to look unfinished. Alias the skin instead:\n\n```css\n:root {\n --bg: var(--color-gray-2); /* the page behind map and panel */\n --panel: var(--color-white); /* the panel and any card on it */\n --line: var(--color-gray-3); /* every border */\n --ink: var(--lb-fg);\n --muted: var(--lb-muted);\n}\n```\n\nStatus pins take the semantic tokens the chips already use \u2014\n`--color-blue-foreground` for Wanted, green for Won, red for Lost \u2014 so a pin\nand its chip are the same colour by construction rather than by two people\npicking the same blue.\n\nKeep exactly three colours of your own, because the kit has none for them \u2014\n`--land`, `--land-border` and `--water` are drawing a country, not UI chrome.\n\n**Then pin the board to light, or aliasing makes it worse than the palette\ndid.** A page with its own hardcoded greys is accidentally immune to dark\nmode; the moment it aliases the skin it inherits the skin\'s dark block, which\nfires on `prefers-color-scheme: dark`. The board a rep opens on a dark-mode\nlaptop then paints `--lb-fg` white over a light `--color-gray-2` ground \u2014\nwhite text on a white page, borders jumped from `#e0e0e0` to mid grey. Same\nrule as the triage board: these boards are light for everyone.\n\n```css\n/* Tripled on purpose. lb.styles() APPENDS the skin to <head> at runtime, i.e.\n after this sheet, so a plain :root here loses to the skin\'s\n :root[data-theme=dark] on source order. :root:root:root outranks it on\n specificity instead, which source order cannot undo. */\n:root:root:root {\n --lb-surface: var(--color-gray-1); --lb-border: var(--color-gray-3);\n --lb-fg: var(--color-black); --lb-muted: var(--color-gray-8);\n --lb-field: var(--color-white); --lb-chip-bg: var(--color-gray-2);\n color-scheme: light;\n /* \u2026and the semantic pairs the pins and chips read, at their light values. */\n}\n```\n\nA single `data-lb-theme="light"` on `<html>` does the same job and is simpler\n\u2014 use it when the page owns its `<html>` element. An artifact that is a\nfragment the host wraps does not, which is why the pin is a stylesheet rule.\n\n### There is no tile layer. The basemap ships as files\n\nThe first instinct on any Leaflet map is the one every tutorial opens with:\n\n```js\nL.tileLayer("https://tile.openstreetmap.org/{z}/{x}/{y}.png").addTo(map) // \u2190 blocked\n```\n\n**It does not work in an artifact, and it fails silently.** The artifact\nviewer\'s content security policy admits the page\'s own files, Google Fonts\nand a few script CDNs \u2014 nothing else. Every tile provider is off that list:\nOpenStreetMap, Carto, Stadia, MapTiler, all of them. The browser refuses the\nrequest before it leaves the machine, no error surfaces in the UI, and the rep\ngets an empty grey rectangle with pins floating on it. Probed with a real\nLeaflet map against two providers: `0 loaded`, every tile failed.\n\nThis is a property of WHERE the page runs, not of the code. The same two lines\nwork in the Leadbay frontend and in a local `.html` file. They only fail in a\npublished artifact \u2014 which is the only thing this recipe builds.\n\nSo the basemap is a **published file** for the workspace\'s country, fetched\nand drawn as one `L.geoJSON` layer behind the pins. A workspace serves\nexactly one country \u2014 `_meta.region` on every Leadbay result says which \u2014 and\nthere is one outline per region:\n\n| `_meta.region` | File | What | Source |\n|---|---|---|---|\n| `fr` | `france-departements.json` | the 96 d\xE9partements, ~570 KB | france-geojson |\n| `us` | `us-states.json` | 50 states + DC + Puerto Rico, ~300 KB | US Census Bureau, 1:20M cartographic boundaries |\n\nBoth are simplified and rounded to five decimals, which is sub-metre. For\nFrance, take that ~570 KB build rather than the sixteen-decimal version of the\nsame outlines, which costs the same bytes for an eighth of the geometry and\nomits the islands (R\xE9, Ol\xE9ron, Belle-\xCEle, the Corsican islets) entirely.\n\n**Stop there.** Roads and town labels were built, shipped and then removed:\n~475 KB of Natural Earth roads and 800 `geo.api.gouv.fr` town labels, tiered\nby zoom. They worked, they cost a layer-ordering bug, and a rep looking at\nthem still could not see a drive time, a local street or whether a river ran\nbetween two stops. They are a partial substitute for a thing an artifact\ncannot have, and the plain outline reads better. If someone asks for "more\ndetail on the map", the honest answer is that the panel\'s *Open in Google\nMaps* link is where navigation lives, and this map is for seeing WHICH leads\nsit near each other \u2014 which the outline already does.\n\nDo not try to solve it with a bigger file either. A full OSM extract for\nFrance is 4.7 GB and a single region ~500 MB, against a 16 MB ceiling per\nartifact file.\n\n### The board opens on the workspace\'s country, and stays where the rep put it\n\n```js\nconst map = L.map("map", { zoomSnap: 0.25 }) // quarter zoom steps, see below\nconst FRANCE_BOUNDS = L.latLngBounds([41.3, -5.2], [51.1, 9.6]) // Corsen\u2192Italy, Bonifacio\u2192Dunkerque\nconst US_BOUNDS = L.latLngBounds([24.5, -124.8], [49.4, -66.9]) // the lower 48: Key West\u2192Maine\nconst REGIONS = {\n fr: { file: "france-departements.json", bounds: FRANCE_BOUNDS, center: [46.6, 2.5] },\n us: { file: "us-states.json", bounds: US_BOUNDS, center: [37.0, -95.8] },\n}\n\n// Hold a neutral view until the first answer says which country this is.\nlet region = null\nmap.setView([40, -30], 2)\n\n// The whole country, just fitting the pane, centred on its main landmass. The\n// zoom comes from the bounds, so it adapts to the pane.\nconst showHome = (o) => region && map.setView(region.center, map.getBoundsZoom(region.bounds), o)\n\nfunction adoptRegion(result, leads) { // call with the FIRST answer, before rendering\n if (region) return\n const meta = String(result?._meta?.region ?? "").toLowerCase()\n const country = String(leads.find((l) => l?.location?.country)?.location.country ?? "").toLowerCase()\n region = REGIONS[meta] ?? REGIONS[country] ?? REGIONS.fr\n loadBasemap(region.file)\n reframe({ animate: false })\n}\n\n// Re-frame on resize while the map is still on that view (see below).\nlet homeView = true, framing = false\nconst reframe = (o) => { framing = true; homeView = true; showHome(o); framing = false }\nmap.on("movestart", () => { if (!framing) homeView = false })\nnew ResizeObserver(() => {\n map.invalidateSize({ pan: false }) // pan:false \u2014 a resize is not the rep moving\n if (homeView) reframe({ animate: false })\n}).observe(document.getElementById("map"))\n```\n\n- **The country comes from `_meta.region`, never an assumption.** A US rep\'s\n board that opens on France puts their pins over the Atlantic. Read the\n region from the first answer (the leads\' `location.country` is the\n fallback), then load that outline and frame it. Until it arrives, hold a\n neutral view: guessing France flashes the wrong country at every US rep.\n The copy follows the region too \u2014 the city placeholder, and the\n ambiguous-city hint (a d\xE9partement for France, a state for the US).\n\n- **`fitBounds`, never `setView([46.6, 2.4], 6)`.** The map pane is half the\n window \u2014 a tall narrow box \u2014 so one fixed zoom frames the country differently\n on a laptop and a wide monitor. Bounds adapt to the pane; a zoom number\n guesses at it.\n- **Just fitting, not zoomed in.** Open at exactly `getBoundsZoom(region.bounds)`\n \u2014 every corner of the country in view: France with Corsica, and for the US\n the lower 48, with Alaska and Hawaii left off-screen rather than shrinking\n the country to a strip. Tried one, one and a\n half and two steps closer on the live planner; each cropped the country and\n pushed a region\'s leads off the edge. The whole country is the view a rep\n plans a trip from; *Fit to leads* is one click away.\n- **Re-frame on resize until the rep moves.** The host sizes the artifact\n frame a beat AFTER the page runs, so the first `getBoundsZoom` can be taken\n from a near-empty box: the country opens tiny, and `invalidateSize()` alone\n never re-zooms. This is why nudging the zoom seemed to change nothing. While\n the map is still on the home view, every resize re-frames it; the first\n `movestart` that is not the page\'s own framing ends that. Pass\n `invalidateSize({ pan: false })` so the resize is not counted as a move.\n- **One `showHome()` for every return to the country** \u2014 the opening view, a\n reset, *Fit to leads* with nothing geocoded \u2014 so they cannot drift apart.\n- **`zoomSnap: 0.25`, or the country opens small.** Leaflet zooms in whole steps by\n default, so `fitBounds` settles on the largest WHOLE zoom that still fits \u2014\n in the half-width pane that is one level short, and the country sits small\n in a wide margin, off to one side. Quarter steps let it fill the pane,\n centred. Keep the zoom buttons at whole steps (`zoomDelta` stays 1).\n- **Do NOT fit to the leads on load.** The obvious move is to frame the pins as\n soon as they arrive. It means the board opens on whichever region the rep\'s\n book happens to cluster in, with no sense of the country around it \u2014 and if\n it re-fires on every city change it yanks the view while they are reading.\n Give them a **Fit to leads** button in the toolbar instead, beside *All\n areas*, and let the opening view be France every time (the lower 48, on a US\n workspace). With no geocoded leads the button falls back to France rather\n than doing nothing (the US, on a US workspace).\n\n\n### The lead list: static dividers, one moving thing\n\nBoth lists in the panel \u2014 *Follow-ups on the map* and *Nearby follow-ups* \u2014\nuse the same row. Copy it; it is three rules, and each one is a thing the\nobvious version gets wrong.\n\n```css\n.rows { display: flex; flex-direction: column; gap: 2px; }\n.row-btn {\n position: relative; padding: 9px 10px; margin-inline: -6px;\n border: 0; border-radius: 10px; background: transparent;\n transition: background-color .12s ease;\n}\n.row-btn + .row-btn::before { /* between rows only \u2014 never first or last */\n content: ""; position: absolute; inset-inline: 10px; top: -1px; height: 1px;\n background: var(--line);\n}\n.row-btn:hover, .row-btn:focus-visible { background: color-mix(in srgb, var(--ink) 4%, transparent); }\n.row-btn:active { background: color-mix(in srgb, var(--ink) 8%, transparent); }\n@media (prefers-reduced-motion: reduce) { .row-btn { transition: none; } }\n```\n\n- **The divider never reacts to hover, and never animates.** The tempting\n version fades the line above and below the hovered row so the highlight has\n clean edges. Do not: two rules then fight over one line \u2014 the hovered row\n hides the divider below it while the next row hides the one above it \u2014 so\n the line flickers as the pointer crosses between rows, and scanning the list\n makes lines ripple in and out around the cursor. The animation ends up\n louder than the row it is highlighting. **Only the background moves.**\n- **Space the rows instead of hiding the line.** `gap: 2px` with the hairline\n centred in the gap means the rounded hover block floats in its own space and\n never shares an edge with a divider. There is nothing to hide, so nothing\n has to animate. This is the whole trick.\n- **The divider is inset to the text (`inset-inline: 10px`), not the row.** A\n line that runs wider than the content it separates stops reading as a\n divider and starts reading as a rule across the panel. Pair it with\n `margin-inline: -6px` on the row so the hover block bleeds slightly past\n the text \u2014 inside the panel\'s own 16px padding, which leaves room for the\n focus ring.\n\nUse `.row-btn + .row-btn::before`, not `::after` with a `:last-child`\nexception: a selector that only ever matches BETWEEN rows cannot put a line\nunder the last one, so there is no special case to forget.\n\nStraight-line totals from `lb.routeDistanceKm` are "as the crow flies" \u2014 label\nthem that way rather than implying a drive time.\n\n## Recipe: the LEAD DESK (the default board for working leads)\n\nWhen the rep accepts the board after `leadbay_pull_followups` or\n`leadbay_campaign_call_sheet`, build THIS. It is the relance table below plus\na source picker, and it is the canonical answer to "give me somewhere to work\nthese leads".\n\n```js\nconst source = lb.field({ value: "followups" }); // or "discover" | "campaign"\nconst campaign = lb.campaigns(ASK); // only for the campaign source\nconst sort = lb.sortOrder();\n\nconst list = lb.leadSource({\n kind: source, campaignId: campaign, order: sort, ask: ASK, pageSize: 15,\n});\nlist.subscribe((l) => renderRows(l.items));\n```\n\n`lb.leadSource` owns the two things that differ by source, and only those:\n\n- **The deep link\'s view.** `list.leadUrl(lead)` answers per row \u2014 a Monitor\n lead opened on Discover drops the rep into a list that does not contain it,\n and a campaign row needs `?campaign=<id>&lead=<id>` or it opens an empty\n campaign view.\n- **Sorting.** `leadbay_campaign_call_sheet` has NO `order` param, so the\n order is DROPPED for that source rather than sent and rejected. Hide the\n sort control there too: offering it promises something the tool cannot do.\n\nChanging the source or the sort resets to page 0 \u2014 page 2 of the old list is\nnot page 2 of the new one. Every row is a `lb.relanceRow`, which now carries\ntaste and qualify alongside contacts, status and outreach, so the row is\ncomplete whichever source it came from.\n\n## Recipe: relance table (the follow-up board)\n\n"Give me a table where I can see who to call, reach them, and record what\nhappened." One row per lead, everything in one place. `lb.relanceRow` bundles\nthe row so you wire it once instead of five times:\n\n```js\nconst list = lb.callList({ source: "followups", ask: ASK });\nlist.subscribe((l) => renderRows(l.items));\n\nfunction wireRow(lead, els) {\n const row = lb.relanceRow({\n leadId: lead.id,\n ask: ASK,\n currentStatus: lead.state?.status, // the select opens on it\n });\n\n // CHANNELS \u2014 lazy. The row renders from the list; this fires on the gesture.\n row.contacts.subscribe((c) => renderContacts(els.contacts, c));\n els.reveal.onclick = () => row.contacts.load();\n\n // STATUS \u2014 saves on change, no button.\n lb.bindSelect(els.status, row.status);\n els.status.onchange = () => row.saveStatus.run();\n\n // OUTREACH \u2014 epilogue + note, note required.\n lb.bindSelect(els.epilogue, row.epilogue);\n lb.bindValue(els.note, row.note);\n lb.bindAction(els.log, row.logOutreach);\n}\n```\n\n**Every row\'s lead cell carries its context \u2014 this is not optional.** The row\nresolves it for you when you pass the lead:\n\n```js\nconst row = lb.relanceRow({ leadId: lead.id, ask: ASK, lead });\nrow.context.subscribe((c) => {\n if (!c.data) return;\n els.summary.textContent = c.data.summary ?? ""; // what they do\n if (c.data.phone) els.coPhone.href = "tel:" + c.data.phone;\n if (c.data.email) els.coEmail.href = "mailto:" + c.data.email;\n});\n```\n\nThree rules the component enforces so a row cannot get them wrong:\n\n- **Never print `sector_id`.** It is a raw id (`"5134"`); `lb.sectorLabels()`\n resolves it, fetching the ~1,091-row taxonomy once per page and caching it.\n Unresolvable means the line is OMITTED, never shown raw.\n- **Show the company\'s phone and email when they exist.** A rep who can dial\n the switchboard today should not have to open Leadbay to find out.\n- **Label them as the COMPANY\'s.** `phone_numbers` and `email` on a lead are\n the switchboard, not `recommended_contact`\'s direct line. Rendering\n "Jean \xB7 \u260E 01 23\u2026" claims a line that does not exist.\n\n**A contact\'s LinkedIn is a route, show it.** `lb.relanceRow` flattens\n`linkedin_page` onto each contact, so a contact with no email or phone may\nstill be reachable \u2014 render it beside the other channels. It is deliberately\nNOT counted as reachability by `lb.leadReach`: the two rules answer different\nquestions ("can I contact this person now" vs "how much of the book is\ncallable"), and a URL cannot be dialled.\n\n**Email and phone are NOT on the list payload.** `pull_followups` and\n`campaign_call_sheet` carry `recommended_contact` as a NAME and nothing else;\nthe channels live on `research_lead_by_id` as `contacts.reachable[]`. So a\ntable that renders `\u260E` straight from the list renders nothing, and one that\nprefetches fires a request per row to fill cells the rep may never read.\n`row.contacts` is a lazy Resource for exactly that reason: render the row\ninstantly, load the channels when the rep opens it. Show a **Reveal contact**\ncontrol rather than an empty cell, so the rep knows the data exists.\n\n**Two write systems, both on the row.** `row.saveStatus` writes the org-wide\nCRM outcome (Wanted/Won/Lost/Unwanted); `row.logOutreach` records how THIS\nattempt went (still chasing / could not reach / interested / lost) and drives\nfollow-up ranking. Setting one never sets the other, so when the rep says\n"she\'s interested, meeting booked" both fire. Use `lb.EPILOGUE_LABELS` for the\nselect \u2014 the raw enum values are shouted constants and a rep should not have\nto translate `INTEREST_VALIDATED_OR_MEETING_PLANED` before answering.\n\n**The note is required and the component enforces it.** `report_outreach`\nwithout a note records that something happened and not what; the next rep\nreads an empty follow-up and calls blind.\n\n**A contact with no channel gets an enrich offer, not a dead end.** That is\nthe whole point of showing candidates: they are one purchase away from being\ncallable.\n\n```js\n// wherever a channel is MISSING \u2014 never gate on `enriched`, see below\nif (!c.phone || !c.email) {\n lb.bindAction(els.enrich, lb.enrichContact({\n leadId: lead.id,\n contactId: c.contactId,\n email: () => emailBox.checked, // both default true, as the tool does\n phone: () => phoneBox.checked,\n ask: ASK,\n onDone: () => row.contacts.load(), // \u2190 see below\n }));\n}\n```\n\n`lb.enrichContact` SPENDS QUOTA, so it confirms by default and names the\nspend.\n\n**`window.confirm` does not work in a published artifact.** The iframe is\nsandboxed and the call returns false without showing a dialog, so an action\ncarrying a `confirm` returns early with no error and no message \u2014 a control\nthat silently does nothing. `Action` now reports that case as an error rather\nthan swallowing it, but the fix for a real page is to supply your OWN\nconfirmation: pass `confirm: ""` and arm the button in-page (first click\narms and relabels, second click spends, with a timeout that disarms). Apply\nthe same to the triage board\'s bulk apply, which has the same footgun. Offer\nemail and phone as separate choices rather than always buying both \u2014 the tool\ndefaults both to true and rejects a call with both false, which the component\ncatches before the confirm so nobody approves a spend that cannot happen.\n\n**Never gate the offer on `enriched`.** `enrichment_done` flips true once ANY\nchannel resolves, so a contact enriched for email earlier reads done while\nstill having no phone \u2014 and an org contact can read done carrying nothing at\nall. Hiding the button there hides it on exactly the contacts that need it.\nGate on the CHANNEL being missing, and default each checkbox to the missing\none so a rep cannot re-buy what is already on file.\n\n**The call launches an async job; it does not return a channel.** The real\nresponse is `{triggered: true, email_requested, phone_requested, hint}` \u2014 no\n`ok`, no contact. The reveal lands minutes later, so a UI that expects the\nemail in this result shows the rep nothing.\n\n**Re-read the contacts afterwards; do not patch the row.** For a\n`source:"paid"` candidate the channel lands on a NEW `source:"org"` contact\nwith a DIFFERENT id \u2014 the candidate row itself only flips `enrichment_done`.\nThat is what `onDone` is for.\n\n**Layout.** It is a table, so `lb-table` with `data-num` on any count, and the\nper-row controls stacked in their cell (`lb-stack`) so a select and an input\nshare one width. Keep `lb-msg` out of the control row \u2014 a failed write is the\nmost important thing on that row at that moment.\n\n## Recipe: cold-call sheet (one row per lead)\n\n```js\nconst lb = window.LeadbayArtifacts; lb.configure();\nconst ASK = "<the user\'s request>";\n\nconst list = lb.callList({ source: "campaign", campaignId: CID, ask: ASK });\nlist.subscribe((l) => renderRows(l.items, l.loading)); // your render\n\n// per lead row (call when you build a row):\nfunction wireRow(lead, els) {\n // Note + prospecting toggles, never lb.outreach \u2014 see *Writing from a page*.\n const note = lb.field({ validate: (v) => (v && v.trim() ? null : "Add a note") });\n lb.bindValue(els.note, note);\n lb.bindAction(els.log, lb.note({ leadId: lead.id, note }));\n for (const btn of els.actions) btn.onclick = () => toggle(lead, btn.dataset.value);\n lb.bindAction(els.like, lb.like(lead.id));\n\n // MANDATORY here too \u2014 a rep on the phone is exactly who discovers the\n // qualifier was wrong. The label comes from the lead, never hardcoded.\n els.qualify.textContent = lb.qualifyLabel(lead);\n lb.bindAction(els.qualify, lb.qualify({ leadId: lead.id, ask: ASK }));\n\n const history = lb.leadHistory(lead.id, ASK); // lazy\n history.subscribe((h) => renderHistory(els.history, h));\n els.expand.onclick = () => history.load(); // load on click\n}\n```\n\n## Recipe: lead-status dropdown (Wanted / Won / Lost)\n\nThe org-wide CRM status, as a `<select>` that writes on change \u2014 no Apply\nbutton. You write the markup; `lb.leadStatus` fills the options and holds the\nvalue, `lb.setStatus` does the write.\n\n```html\n<div class="lb-card">\n <div class="lb-card-head">\n <span class="lb-title">Acme Corp</span>\n <span class="lb-chips">\n <span id="taste" class="lb-chip" data-taste="liked">Liked</span>\n <span id="crm" class="lb-chip" data-status="WANTED">Wanted</span>\n </span>\n </div>\n <div class="lb-row">\n <select id="st" class="lb-select" aria-label="Lead status for Acme Corp"></select>\n </div>\n <span id="msg" class="lb-msg" role="status" aria-live="polite"></span>\n</div>\n```\n\n**Two badges, never one.** Taste (`liked`/`disliked`, from `lb.like`/`lb.dislike`)\nand CRM status (`WANTED`/`WON`/`LOST`/`UNWANTED`, from `lb.setStatus`) are\nindependent axes \u2014 a lead can be liked *and* lost. Collapsing them into a single\nchip destroys information: the rep can no longer see that a lead they liked went\nnowhere. Render `data-taste` and `data-status` as separate chips inside\n`lb-chips`, and hide the one that has no value rather than reusing it.\n\n```js\nlb.styles(); // once per artifact \u2014 see below\n\nconst status = lb.leadStatus(lead.org_lead_status); // seed with the CURRENT value\nconst save = lb.setStatus({ leadId: lead.id, status, ask: ASK });\n\nconst sel = document.getElementById("st");\nlb.bindSelect(sel, status); // populates the 4 options\nsel.addEventListener("change", () => save.run()); // change \u2192 write, no button\n\nsave.subscribe((a) => { // render your own feedback\n sel.setAttribute("data-lb-state", // the select IS the surface\n a.loading ? "loading" : a.error ? "error" : a.lastResult ? "success" : "ready");\n msg.textContent = a.loading ? "Saving\u2026"\n : a.error ? a.error.message // includes partial failures\n : a.lastResult ? `Set to ${a.lastResult.status}` : "";\n msg.dataset.tone = a.error ? "error" : a.lastResult ? "ok" : "";\n});\n```\n\nLoading / success / error styling comes free: `bindAction` and `bindSelect` set\n`data-lb-state` (`ready|loading|error|success|unavailable`) and the skin already\ntargets those attributes. No extra wiring.\n\n**Save on change is the default for status.** The rep picks a value and it\nwrites \u2014 one interaction, no second button, matching the web app\'s own status\nselector. Drop `bindAction` and run the action from the change event:\n\n```js\nconst sel = document.getElementById("st");\nsel.addEventListener("change", () => save.run());\nsave.subscribe((a) => { // the select IS the feedback surface\n sel.setAttribute("data-lb-state",\n a.loading ? "loading" : a.error ? "error" : a.lastResult ? "success" : "ready");\n msg.textContent = a.loading ? "Saving\u2026" : a.error ? a.error.message\n : a.lastResult ? "Saved" : "";\n msg.dataset.tone = a.error ? "error" : a.lastResult ? "ok" : "";\n});\n```\n\nWithout a submit button the select becomes the only affordance, so it MUST show\nthe write: mirror `data-lb-state` onto it (the skin already styles loading /\nsuccess / error on `.lb-select`) and put the outcome in the `role="status"`\nline. A silent select leaves the rep unsure whether anything happened.\n\nKeep a submit button ONLY where a mis-click is expensive and the value is not\nself-evident \u2014 a bulk apply across checked rows, for instance, which already\ntakes a `confirm`. For one lead, the extra step buys nothing: the value is\nvisible in the select, and the rep can simply pick again.\n\n**Bulk apply** across checked rows \u2014 pass `leadIds` and a `confirm`, since one\nclick rewrites a field every rep in the org sees:\n\n```js\nconst bulk = lb.setStatus({\n leadIds: () => checkedIds, // \u2190 read at run() time, not at build time\n status, ask: ASK,\n confirm: "Set this status on every selected lead?",\n});\n```\n\n`leadIds` is read when the action runs, so a live selection works \u2014 but pass the\narray itself if your selection is fixed. A partial write (some leads rejected)\nsurfaces as `.error`, never as a green button: `setStatus` checks the `failed[]`\nthe tool returns.\n\nThe backend stamps the status date as "now" on every write, which is what a rep\nclicking a dropdown means. Don\'t add a date picker unless the user asks to\nbackdate \u2014 then pass an optional `date` field holding `YYYY-MM-DD`:\n`lb.setStatus({ leadId, status, date, ask })`.\n\n## Recipe: segment coverage (any dimension)\n\n"How many leads do we have in sector X" is one cheap call: the Monitor filter\nplus `count: 1`, read off `pagination.total`. `lb.segmentCount` wraps a single\nsector/city count; **`lb.coverage` sweeps a whole dimension**.\n\n### One skeleton, many dimensions\n\nSector is not special. Every `FilterCriterion` type the Monitor accepts is a\ncoverage dimension, and one board renders any of them \u2014 the bars, the\ndenominator and the trusted check are all dimension-agnostic:\n\n| Dimension | Criterion | Answers |\n|---|---|---|\n| sector | `{type:"sector_ids", sectors:[id]}` | where the book concentrates |\n| size | `{type:"size", min, max}` | am I an SMB or an enterprise shop |\n| recency | `{type:"last_action_date", \u2026}` | how much has gone cold |\n| liked | `{type:"liked"}` | what the team actually wants |\n| custom field | `{type:"custom_field", key, value}` | the org\'s own taxonomy |\n\n```js\nconst buckets = await lb.coverageBuckets({ // derive, never hardcode\n field: "sector_id",\n labels: SECTORS, // id \u2192 name, embedded\n criterion: (id) => ({ type: "sector_ids", sectors: [id], is_excluded: false }),\n limit: 12,\n ask: ASK,\n});\n\nconst book = await lb.coverageTotal({ ask: ASK }); // unfiltered denominator\nconst rows = await lb.coverage({\n buckets,\n ask: ASK,\n onProgress: (done, total) => (tally.textContent = `measuring ${done}/${total}\u2026`),\n});\n\nfor (const r of rows) {\n if (!r.trusted) renderUnmeasured(r); // never chart it\n else renderBar(r.label, r.total, r.total / book.total);\n}\n```\n\nThree things `lb.coverage` owns, each of which a hand-rolled sweep gets wrong:\n\n- **Sequential, not a parallel burst.** A filtered count is 1\u20132s, but a\n `last_action_date` criterion was observed at **54s** on a 3.6k segment.\n Twelve of those at once is a hung page; `onProgress` is there so the sweep\n is visible instead.\n- **The complete criteria set per call.** The stored filter is ONE\n server-side slot and cumulative, so a delta leaves the previous bucket\'s\n criterion in force and every bar becomes a subset of the one before it.\n- **Per-bucket verification.** One rejected criterion must not poison a\n neighbour\'s number, and a bucket that throws becomes an unmeasured row\n rather than aborting the other eleven.\n\n### Reachability \u2014 the segment that says what to BUY\n\nEvery dimension above slices a book the rep may not be able to call. This one\nsays whether they can call it at all, and it is usually the first board worth\nbuilding on an imported book:\n\n```js\nconst r = await lb.reachCoverage({ ask: ASK }); // one call\nrenderBars(r.rows);\nnote.textContent = `sampled ${r.sampled} of ${r.bookTotal}`;\n```\n\nThree buckets, and the middle one is the answer:\n\n| Bucket | Means | Next move |\n|---|---|---|\n| Callable now | a company phone or email exists | work it |\n| **Contacts, no channel** | people known, nothing dialable | **enrich \u2014 this is the spend** |\n| No contacts | neither | discovery first |\n\n**`contacts_count > 0` is NOT reachability**, and `lb.leadReach` exists so no\nboard gets this wrong. It counts known PEOPLE, not people you can dial \u2014 a\nlead can show 2,518 contacts and zero channels. Charting `contacts_count`\ntells a rep they have a pipeline when they have a phone book with no numbers.\nA `linkedin_page` is not reachability either. And the API returns the literal\nstring `"null"` in `phone_numbers` and `email`, which counts as a channel\nunless guarded \u2014 the one error that would make this board actively harmful,\nby overstating the callable book.\n\n**This one is SAMPLED, unlike every other dimension.** Reachability is not a\n`FilterCriterion`, so there is no cheap `pagination.total` for it: the counts\ncome from classifying real leads on one page. `bookTotal` is the real\ndenominator (it rides along on the same call, so this costs ONE request), and\n`sampled` says over how many. Label it as an estimate \u2014 "\u224862% of 7,078,\nsampled over 200" \u2014 never as an exact count.\n\n### What you cannot count this way\n\nA dimension is countable only if the Monitor can FILTER by it. Anything\nneeding per-lead values \u2014 a score histogram, a density map \u2014 has no\naggregation endpoint and means paging the whole book (732 pages for 3,656\nleads). Sample the tails instead (`order: "SCORE:ASC"` / `"SCORE:DESC"`, a few\nhundred each) and **label the chart as a sample with its n**, or do not draw\nit.\n\n### Never hardcode the sector list\n\nA board that offers sectors must offer the ones the user HOLDS. Typing a few\nids into the markup gets this wrong in both directions \u2014 one real portfolio\'s\nhand-written list offered a sector holding 3 leads while omitting the\nthird-largest at 555.\n\nThere is no group-by on the Monitor, but every lead carries `sector_id`, so one\npage of followups names the sectors that matter:\n\n```js\n// SECTORS is { id: label }, embedded at BUILD time from leadbay_list_sectors.\n// The visible taxonomy is ~1,346 entries and does not change between runs, so\n// fetching it per page load buys nothing.\nconst held = await lb.portfolioSectors({ sectors: SECTORS, ask: ASK });\nfor (const s of held) {\n const opt = document.createElement(\'option\');\n opt.value = s.id;\n opt.textContent = s.label; // falls back to `Sector <id>` when unresolved\n sel.appendChild(opt);\n}\n```\n\n`sampled` is a SAMPLE count, for ordering the list. It is not the user\'s total\n\u2014 call `lb.segmentCount` for the exact figure once a sector is picked.\n\n**The taxonomy\'s `number_of_leads` is the WHOLE MARKET, not this user\'s book.**\nSupermarch\xE9s reads 11,460 nationally against 3,656 in one real portfolio, and\nSup\xE9rettes 5,710 against 143. Wiring a dropdown to that field ranks sectors the\nuser barely holds above ones they live in. Use it as a denominator if you are\nexplicitly showing market coverage, and label it as such \u2014 never present it as\nthe user\'s number.\n\n```js\nconst supermarkets = await lb.segmentCount({ sectorIds: ["5134"], ask: ASK });\n// \u2192 { total: 3656, applied: [...], trusted: true }\n```\n\n**Two traps, both observed against the live API \u2014 a hand-rolled version hits\nboth:**\n\n1. **The filter is server-side and STATEFUL.** `set_filter` overwrites ONE\n stored FilterItem per user, so consecutive calls are not independent: the\n next one inherits what the last one stored. Always send the complete\n criteria set, never a delta, and never assume a fresh call starts clean.\n2. **A rejected criterion fails SILENTLY.** Send a malformed criterion and the\n call returns **200 with the PREVIOUS filter still applied** \u2014 a plausible\n number answering a different question. `segmentCount` compares the echoed\n `active_filters` against what it sent and returns `trusted: false` on a\n mismatch. Never chart an untrusted count; say the segment could not be\n measured instead.\n\n The echo must match the request in BOTH directions. Every criterion asked\n for has to come back \u2014 a `city` / `cityId` as a `location_ids` criterion,\n since the composite resolves the free text through `/geo/search` into a type\n you never sent \u2014 and **nothing may come back that was not asked for**. The\n stored filter is cumulative, so narrowing a segment (sector+city \u2192 sector\n alone) leaves the dropped criterion in force: the count stays fenced to a\n city nobody asked about while every requested type is dutifully present. An\n unrequested criterion narrows a count exactly as a dropped one widens it.\n That rule also covers the unfiltered call on its own terms \u2014 with nothing\n wanted, "nothing extra" is "the echo is empty", which is what makes a\n whole-book denominator trustworthy.\n\n Sector VALUES are compared too, since a stale sector filter is still a sector\n filter. Locations are checked for presence only: the server picks the\n `admin_area_id` from free text, so the caller has nothing to compare against.\n\n**What you cannot build this way.** A score histogram needs every lead\'s\n`ai_agent_lead_score`, and there is no aggregation endpoint \u2014 bucketing 3,656\nleads means 732 pages. Sample the tails instead (`order: "SCORE:ASC"` and\n`"SCORE:DESC"`, a few hundred each) and **label the chart as a sample with its\nn**, or do not draw it. The same applies to a density map: coordinates are on\nevery lead, but aggregating thousands of points client-side is a batch job, not\na dashboard. Both want a backend stats endpoint.\n\n**Budget the calls.** A filtered count is normally 1\u20132 s, but adding a\n`last_action_date` criterion was observed at **54 s** on a 3.6k segment. Fire\nsegments in sequence with a visible progress cue, not a parallel burst, and\nnever block the first paint on them.\n\n## Recipe: manager dashboard\n\n`lb.teamActivity` returns `{range, reps, trend}`. A manager reads before they\nact, so the page is three bands in that order: the figures, the trend behind\nthem, then the per-rep table.\n\n```html\n<div class="lb-tiles"> <!-- only figures that ARE the point -->\n <div class="lb-tile"><span class="lb-tile-label">Activities</span>\n <span class="lb-tile-value">0</span></div>\n <!-- meetings / notes / contacts added \u2026 -->\n</div>\n\n<svg class="lb-chart" viewBox="0 0 640 160" role="img"\n aria-label="Weekly activity, 24 Jun to 16 Sep">\u2026</svg>\n\n<table class="lb-table">\n <thead><tr>\n <th aria-sort="none">Rep</th>\n <th data-num aria-sort="descending">Activities</th>\n <th data-num aria-sort="none">Meetings</th>\n </tr></thead>\n <tbody><tr aria-selected="false">\u2026</tr></tbody>\n</table>\n```\n\n```js\nconst team = lb.teamActivity({ weeks: 4, ask: ASK });\nteam.subscribe((t) => {\n if (t.error) { renderError(t.error); return; } // .code says what to do\n if (!t.data) return; // first load\n const { reps, trend, range } = t.data;\n const sum = (k) => reps.reduce((a, r) => a + (r[k] || 0), 0);\n\n stage.replaceChildren(\n lb.tiles([\n { label: "Activities", value: sum("total_activities") },\n { label: "Meetings", value: sum("meetings_or_interest") },\n { label: "Notes", value: sum("notes") },\n ]),\n lb.sparkline(trend, { // [] \u2192 the empty block\n label: `Activity from ${range.from} to ${range.to}`,\n emptyTitle: "No activity in this window",\n emptyHint: `Nothing logged between ${range.from} and ${range.to}. Widen the window.`,\n }),\n lb.leaderboard({\n rows: reps,\n sortKey: "total_activities",\n columns: [\n // reps[] carries email and nothing else \u2014 a mailto is the honest\n // affordance, since no MCP tool messages a rep.\n { key: "name", label: "Rep", cell: (r) => {\n const a = document.createElement("a");\n a.href = `mailto:${r.email}`; a.textContent = r.name || r.email;\n return a;\n } },\n { key: "total_activities", label: "Activities", num: true },\n { key: "meetings_or_interest", label: "Meetings", num: true },\n { key: "lost", label: "Lost", num: true },\n ],\n emptyTitle: "No reps in this window",\n emptyHint: "The backend scopes non-admins to themselves.",\n }),\n );\n});\nrefreshBtn.onclick = () => team.refresh();\n```\n\nFive things this gets right that a hand-built dashboard usually does not:\n\n- **An empty window is a real answer.** A quiet team returns `total_activities:\n 0` for every rep and `trend: []` \u2014 the common case on a new account. Draw\n `lb-empty` with what it means ("no activity logged in this window") and a way\n out (widen the range), never empty axes, which read as a broken chart.\n- **Chart from the tokens, not a CDN.** `lb-chart` styles an inline SVG from\n the theme, so it reads in light and dark. A hardcoded stroke disappears in\n one of the two, and a CDN chart that fails to load shows nothing at all \u2014 a\n sparse weekly series does not earn the dependency.\n- **Sorting is CLIENT-side here**, unlike a lead list: `reps` is the whole team\n in one response, so re-sorting reorders data you already hold. Reflect it in\n `aria-sort` on the header, not only with an arrow.\n- **Tabular numerals on every count** (`data-num`), or the columns will not\n line up and the leaderboard cannot be scanned down.\n- **Name the window.** `range.from`/`range.to` are resolved server-side and may\n not match what was asked for; printing them is what makes the figures\n auditable.\n\n**Writing to a rep is not in this payload.** `reps[]` carries `user_id`, `name`\nand `email` \u2014 enough to open a mail client with `mailto:`, and nothing more.\nThere is no MCP tool that messages a rep, so do not render a "message" button\nthat silently does nothing; a `mailto:` link is the honest affordance until\none exists.\n\n## Recipe: live enrichment\n\n```js\nconst job = lb.enrichment({ leadIds: [LEAD], titles: ["CEO", "VP Sales"], ask: ASK });\njob.subscribe((j) => {\n const p = j.data && j.data.overall_progress; // {done,total,done_ratio}\n renderBar(p);\n if (j.done) renderContacts(j.data.leads); // enriched contacts\n});\nrefreshBtn.onclick = () => job.refresh();\n```\n\n## Write-call rules\n\nThe domain factories handle these for you. A page\'s buttons never call\n`leadbay_report_outreach` \u2014 see *Writing from a page*; the rule below is for\nan agent logging an outreach itself. If you hand-roll an action:\n`leadbay_report_outreach` args MUST include `verification:{source:"user_confirmed", ref}`\nAND `_triggered_by`; `leadbay_add_leads_to_campaign` needs `_triggered_by`;\n`add_note`/`like_lead`/`dislike_lead` take only their own args. `epilogue_status` is\none of `lb.EPILOGUE_STATUSES`. Snoozing (pushback) is advanced-gated \u2014 not\ncallable from a default artifact. Org lead status IS on the default surface:\nuse `lb.setStatus`, which owns the arg shape AND the partial-write check \u2014\n`leadbay_set_lead_status` writes each lead separately, so it can resolve 200\nwith a non-empty `failed[]`. Hand-rolling that action will report a green\nbutton over a write that never landed.\n\n## Degradation + live updates\n\nIf the host bridge is absent, a view-model\'s `.error` is set with `.error.unavailable\n=== true` (bind helpers set `data-lb-state="unavailable"`) \u2014 nothing throws. Every\ncall also has a **30s timeout** (configurable via `lb.configure({ timeoutMs })`): a\nhost call that never settles becomes `.error` with `code:"timeout"`, so a control is\nnever stuck loading forever \u2014 always render the `.error` branch so the user can retry.\nAuto-poll (`pollEvery`) depends on the cowork host serving FRESH reads; `.refresh()`\nis the guaranteed manual path \u2014 always wire a Refresh control for polling resources.\n\n\n## Runtime diagnostics (automatic \u2014 you do not wire this)\n\nThe runtime reports its own failures to the Leadbay team so a broken artifact\ndoes not stay invisible: a picker that loads zero options, a button blocked by\nvalidation, a call that timed out, failed, came back as an error envelope, or\nanswered with unparseable text. It sends these itself, over the same bridge,\ndeduped and capped \u2014 **you do not need to add anything**, and you should not\ncall `leadbay_report_artifact_error` yourself.\n\nOnly bounded values travel: the failure kind, which view-model surfaced it, the\ntool name, an error code, and the kit version. Never a message, never user text,\nnever anything the user typed. A user who has turned telemetry off with\n`leadbay_set_telemetry` sends nothing at all.\n\nTwo knobs, both optional. `lb.setTelemetry(false)` opts a page out entirely.\n`lb.report({kind, surface, tool?, code?})` reports a failure the library cannot\nsee \u2014 a render that threw, or a control you wired by hand rather than through a\nview-model. Everything else is automatic.\n\nThis is NOT the way to report a problem the USER raised. If the rep tells you\nthe artifact is wrong and asks you to pass it on, that is\n`leadbay_report_friction`, which carries their own words and needs their\nconsent.';
|
|
27490
27490
|
}
|
|
27491
27491
|
});
|
|
27492
27492
|
|
|
@@ -27495,7 +27495,7 @@ var ARTIFACT_TEMPLATES, ARTIFACT_BASEMAPS;
|
|
|
27495
27495
|
var init_artifact_templates_generated = __esm({
|
|
27496
27496
|
"../core/dist/artifact-templates.generated.js"() {
|
|
27497
27497
|
"use strict";
|
|
27498
|
-
ARTIFACT_TEMPLATES = { "route_planner": { "title": "Route Planner", "icon": "map", "description": "Your follow-ups on a map of your country: open a lead, set its status, log what happened, and build the day's route.", "tools": ["leadbay_followups_map", "leadbay_get_basemap", "leadbay_set_lead_status", "leadbay_set_prospecting_action", "leadbay_add_note", "leadbay_report_artifact_error"], "html": '<title>Leadbay Route Planner</title>\n<!-- The only part of this board an agent may edit. "city": where the rep is\n going ("Lyon"), or "" for all follow-ups. Never a country. -->\n<script type="application/json" id="lb-board-config">{"city": ""}</script>\n<style>\n.leaflet-image-layer,.leaflet-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane,.leaflet-pane>canvas,.leaflet-pane>svg,.leaflet-tile,.leaflet-tile-container,.leaflet-zoom-box{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:0 0}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-bottom,.leaflet-top{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-pan-anim .leaflet-tile,.leaflet-zoom-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-control,.leaflet-popup-pane{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-image-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-image-layer.leaflet-interactive,.leaflet-marker-icon.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:rgba(255,255,255,.5)}.leaflet-container{font-family:"Helvetica Neue",Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px rgba(0,0,0,.65);border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:focus,.leaflet-bar a:hover{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:bold 18px \'Lucida Console\',Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px rgba(0,0,0,.4);background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(images/layers.png);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(images/layers-2x.png);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(images/marker-icon.png)}.leaflet-container .leaflet-control-attribution{background:#fff;background:rgba(255,255,255,.8);margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:focus,.leaflet-control-attribution a:hover{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:rgba(255,255,255,.8);text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers{box-shadow:none}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-layers{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:17px 0;margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px rgba(0,0,0,.4)}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:0 0}.leaflet-container a.leaflet-popup-close-button:focus,.leaflet-container a.leaflet-popup-close-button:hover{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto}.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px rgba(0,0,0,.4)}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before,.leaflet-tooltip-top:before{position:absolute;pointer-events:none;border:6px solid transparent;background:0 0;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}\n</style>\n<style>\n/* UI colour comes from the skin that `lb.styles()` already injected. This\n page used to declare a parallel palette \u2014 a blue-tinted #f4f5f7 ground\n behind the kit\'s #f0f0f0 toolbar, #e2e5ea borders beside its #e0e0e0 \u2014\n close enough that nobody could name the problem, wrong enough to look\n unfinished.\n\n The board is LIGHT, always \u2014 the same rule the triage board carries. The\n skin ships a dark mode that fires on `prefers-color-scheme: dark`, so\n aliasing ALONE handed a rep on a dark-mode laptop white text on a light\n ground. The pin below holds the skin\'s own tokens at their light values\n under both dark selectors. That is what `data-lb-theme="light"` would do\n if this page owned an <html> element to hang it on; it does not, because\n the host wraps the fragment.\n\n Three colours stay ours, because the kit has none for them: --land,\n --land-border and --water draw a country, not UI chrome. */\n:root {\n --bg: var(--color-gray-2);\n --panel: var(--color-white);\n --ink: var(--lb-fg);\n --muted: var(--lb-muted);\n --line: var(--lb-border);\n --route: var(--lb-fg);\n --acted: var(--color-gold-foreground);\n --focus-ring: color-mix(in srgb, var(--color-blue-foreground) 35%, transparent);\n --st-wanted: var(--color-blue-foreground);\n --st-won: var(--color-green-foreground);\n --st-lost: var(--color-red-foreground);\n --st-unwanted: var(--color-gray-6);\n --st-default: var(--color-gray-8);\n --font: var(--lb-font, "Nikkei Maru", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif);\n\n /* Prospecting-action yellow, from the web app\'s packages/style/color.css.\n The kit has blue, green and red with identical values; yellow is the one\n it lacks. */\n --color-yellow-background: oklch(0.972 0.054 91);\n --color-yellow-foreground: oklch(0.864 0.181 91);\n\n /* The map itself \u2014 no kit equivalent. */\n --land: #eceef1;\n --land-border: #c5cad3;\n --water: #dce5ee;\n}\n/* The light pin. Every skin token this page reads, held at its light value \u2014\n so the board looks the same whatever the rep\'s OS is set to, and the map\n colours need no dark variant because there is no dark board.\n\n The selector is tripled on purpose. `lb.styles()` appends the skin to\n <head> at runtime, i.e. AFTER this sheet, so a plain `:root` here loses to\n the skin\'s `:root[data-theme=dark]` on source order. `:root:root:root`\n outranks it on specificity instead, which source order cannot undo. */\n:root:root:root {\n --lb-surface: var(--color-gray-1);\n --lb-border: var(--color-gray-3);\n --lb-fg: var(--color-black);\n --lb-muted: var(--color-gray-8);\n --lb-field: var(--color-white);\n --lb-chip-bg: var(--color-gray-2);\n --lb-control-border: var(--color-gray-6);\n --lb-shadow: 0 0.5rem 1.5rem oklch(0 0 0/.06), 0 0.125rem 0.5rem oklch(0 0 0/.04);\n color-scheme: light;\n --color-blue-background: oklch(0.947 0.029 251); --color-blue-foreground: oklch(0.564 0.181 251);\n --color-green-background: oklch(0.947 0.029 141); --color-green-foreground: oklch(0.564 0.181 141);\n --color-red-background: oklch(0.947 0.029 26); --color-red-foreground: oklch(0.564 0.191 26);\n --color-gold-background: oklch(0.972 0.049 91); --color-gold-foreground: oklch(0.667 0.177 91);\n --color-cherry-background: oklch(0.947 0.029 15); --color-cherry-foreground: oklch(0.44 0.146 15);\n --color-purple-background: oklch(0.947 0.029 288); --color-purple-foreground: oklch(0.464 0.181 288);\n --color-teal-background: oklch(0.977 0.019 180); --color-teal-foreground: oklch(0.574 0.182 180);\n}\n\nhtml, body { height: 100%; }\nbody {\n background: var(--bg);\n color: var(--ink);\n font-family: var(--font);\n padding-inline: 16px;\n padding-block: 12px;\n box-sizing: border-box;\n}\n.app {\n height: 100%;\n display: grid;\n grid-template-rows: auto auto 1fr;\n gap: 12px;\n min-height: 0;\n}\n\n/* Top bar */\n.topbar { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 20px; }\n.brand { display: flex; flex-direction: column; gap: 2px; }\n.brand h1 { margin: 0; font-size: 17px; font-weight: 700; letter-spacing: -0.01em; text-wrap: balance; }\n.brand .tally { font-size: 12px; color: var(--muted); font-variant-numeric: tabular-nums; }\n.city-form { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }\n.city-form .lb-input { min-width: 0; width: 200px; max-width: 100%; }\n.city-hint { font-size: 11px; color: var(--muted); flex-basis: 100%; }\n.legend { display: flex; flex-wrap: wrap; gap: 6px 12px; font-size: 11px; color: var(--muted); margin-inline-start: auto; }\n.legend span { display: inline-flex; align-items: center; gap: 5px; }\n.legend i { width: 10px; height: 10px; border-radius: 50%; display: inline-block; }\n.legend .ring { background: transparent; box-shadow: inset 0 0 0 2px var(--acted); }\n.notice:empty { display: none; }\n.notice { font-size: 13px; padding: 10px 12px; border-radius: 10px; background: var(--panel); border: 1px solid var(--line); display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }\n.notice[data-tone="error"] { border-color: var(--st-lost); }\n\n/* Work area */\n.work { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 12px; min-height: 0; }\n.map-frame { position: relative; min-height: 0; border-radius: 14px; overflow: hidden; border: 1px solid var(--line); }\n#map { position: absolute; inset: 0; }\n.leaflet-container { background: var(--water); font-family: var(--font); }\n.leaflet-container .dept { fill: var(--land); fill-opacity: 1; stroke: var(--land-border); stroke-width: 0.7px; }\n.leaflet-container .route-line { stroke: var(--route); stroke-width: 2px; stroke-dasharray: 6 5; fill: none; stroke-opacity: 0.8; }\n.leaflet-control-attribution { background: var(--panel) !important; color: var(--muted) !important; font-size: 10px !important; }\n.leaflet-control-attribution a { color: var(--muted) !important; }\n.leaflet-bar a { background: var(--panel); color: var(--ink); border-color: var(--line); }\n.map-status { position: absolute; top: 10px; left: 50%; transform: translateX(-50%); z-index: 500; background: var(--panel); color: var(--ink); border: 1px solid var(--line); border-radius: 999px; padding: 6px 12px; font-size: 12px; display: flex; gap: 8px; align-items: center; box-shadow: 0 2px 8px rgba(0,0,0,.12); }\n\n.pin-wrap { background: none; border: 0; }\n.pin {\n box-sizing: border-box; width: 100%; height: 100%; border-radius: 50%;\n display: grid; place-items: center;\n background: var(--st-default); border: 2px solid var(--panel);\n box-shadow: 0 1px 3px rgba(0,0,0,.35);\n color: #fff; font: 700 11px/1 var(--font); font-variant-numeric: tabular-nums;\n transition: transform .15s ease;\n}\n.pin[data-status="WANTED"] { background: var(--st-wanted); }\n.pin[data-status="WON"] { background: var(--st-won); }\n.pin[data-status="LOST"] { background: var(--st-lost); }\n.pin[data-status="UNWANTED"] { background: var(--st-unwanted); }\n.pin[data-acted="yes"] { box-shadow: 0 0 0 3px var(--acted), 0 1px 3px rgba(0,0,0,.35); }\n.pin[data-stop="yes"] { border-color: var(--route); }\n.pin[data-selected="yes"] { transform: scale(1.2); box-shadow: 0 0 0 5px var(--focus-ring), 0 1px 3px rgba(0,0,0,.35); }\n.pin[data-selected="yes"][data-acted="yes"] { box-shadow: 0 0 0 3px var(--acted), 0 0 0 7px var(--focus-ring); }\n@media (prefers-reduced-motion: reduce) { .pin { transition: none; } }\n.pin-label {\n display: none; position: absolute; left: calc(100% + 5px); top: 50%; transform: translateY(-50%);\n max-width: 140px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;\n font: 600 11px/1.3 var(--font); color: var(--ink);\n background: var(--panel); border: 1px solid var(--line); border-radius: 6px; padding: 1px 6px;\n box-shadow: 0 1px 3px rgba(0,0,0,.18);\n}\n.pin-label[data-visible="yes"] { display: block; }\n.pin[data-selected="yes"] + .pin-label { max-width: 220px; border-color: var(--st-wanted); left: calc(100% + 8px); }\n\n/* Side panel */\n.panel { background: var(--panel); border: 1px solid var(--line); border-radius: 14px; min-height: 0; display: flex; flex-direction: column; }\n.panel-scroll { overflow-y: auto; padding: 16px; display: flex; flex-direction: column; gap: 20px; min-height: 0; }\n.panel-head { display: flex; align-items: flex-start; gap: 10px; }\n.panel-head h2 { margin: 0; font-size: 18px; line-height: 1.25; text-wrap: balance; flex: 1; min-width: 0; overflow-wrap: anywhere; }\n.icon-btn { flex: none; width: 32px; height: 32px; border-radius: 8px; border: 1px solid var(--line); background: transparent; color: var(--ink); display: grid; place-items: center; cursor: pointer; }\n.icon-btn:hover { background: var(--bg); }\n.icon-btn:focus-visible, .row-btn:focus-visible, .choice:focus-visible { outline: 2px solid var(--st-wanted); outline-offset: 2px; }\n.icon-btn svg { width: 16px; height: 16px; }\n.facts { display: flex; flex-direction: column; gap: 4px; font-size: 13px; color: var(--muted); }\n.facts .address { color: var(--ink); }\n.chips { display: flex; flex-wrap: wrap; gap: 6px; }\n.chip { font-size: 11px; font-weight: 600; padding: 3px 8px; border-radius: 999px; background: var(--bg); color: var(--ink); border: 1px solid var(--line); display: inline-flex; align-items: center; gap: 5px; }\n.chip i { width: 8px; height: 8px; border-radius: 50%; background: var(--st-default); }\n.chip[data-status="WANTED"] i { background: var(--st-wanted); }\n.chip[data-status="WON"] i { background: var(--st-won); }\n.chip[data-status="LOST"] i { background: var(--st-lost); }\n.chip[data-status="UNWANTED"] i { background: var(--st-unwanted); }\n.chip.acted { border-color: var(--acted); }\n.chip.acted i { background: var(--acted); }\n.actions { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }\n.links { display: flex; flex-wrap: wrap; gap: 14px; }\n.section-title { font-size: 11px; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: var(--muted); margin: 0; display: flex; justify-content: space-between; gap: 8px; }\n.section { display: flex; flex-direction: column; gap: 8px; }\n.section .lb-select, .section .lb-input, .section textarea { width: 100%; box-sizing: border-box; }\n.section textarea { min-height: 64px; resize: vertical; font: inherit; }\n.choices { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }\n/* Colours are the web app\'s, per action (ProspectionCell.tsx): Still chasing\n blue, Meeting planned green, Could not reach yellow, Not interested red \u2014\n so a rep who knows the web app reads these at a glance. The web app uses\n the foreground only as an ICON colour on the tinted badge, never as text:\n the yellow foreground is lightness 0.864 and unreadable as a label. Same\n here \u2014 the dot and the border take the accent, the label stays ink. */\n.choice[data-value="STILL_CHASING"] { --action-bg: var(--color-blue-background); --action-fg: var(--color-blue-foreground); }\n.choice[data-value="INTEREST_VALIDATED_OR_MEETING_PLANED"] { --action-bg: var(--color-green-background); --action-fg: var(--color-green-foreground); }\n.choice[data-value="COULD_NOT_REACH_STILL_TRYING"] { --action-bg: var(--color-yellow-background); --action-fg: var(--color-yellow-foreground); }\n.choice[data-value="NOT_INTERESTED_LOST"] { --action-bg: var(--color-red-background); --action-fg: var(--color-red-foreground); }\n.choice { font: inherit; font-size: 13px; text-align: start; padding: 9px 10px; border-radius: 10px; border: 1px solid var(--line); background: transparent; color: var(--ink); cursor: pointer; display: flex; align-items: center; gap: 8px; }\n.choice::before { content: ""; flex: none; width: 8px; height: 8px; border-radius: 50%; background: var(--action-fg, var(--muted)); }\n.choice:hover { background: var(--bg); }\n.choice[aria-checked="true"] { border-color: var(--action-fg, var(--acted)); background: var(--action-bg, var(--bg)); }\n.choice[aria-checked="true"]:hover { background: color-mix(in srgb, var(--action-bg) 80%, var(--action-fg)); }\n.choice[disabled] { opacity: .6; cursor: progress; }\n.msg { font-size: 12px; color: var(--muted); min-height: 1em; }\n.msg:empty { display: none; }\n.msg[data-tone="error"] { color: var(--st-lost); }\n.msg[data-tone="ok"] { color: var(--st-won); }\n.rows { display: flex; flex-direction: column; gap: 2px; }\n/* Dividers do NOT react to hover. An earlier version faded the line above and\n below the hovered row, which meant simply scanning the list made lines\n ripple in and out \u2014 the animation drew more attention than the row did.\n Instead the rows are spaced 2px apart, so the hover block floats in a gap\n and never shares an edge with a line. Only the background moves. */\n.row-btn {\n font: inherit; position: relative;\n display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 10px;\n padding: 9px 10px; margin-inline: -6px; border: 0; border-radius: 10px;\n background: transparent; color: var(--ink); text-align: start; cursor: pointer;\n transition: background-color .12s ease;\n}\n.row-btn + .row-btn::before {\n content: ""; position: absolute; inset-inline: 10px; top: -1px; height: 1px;\n background: var(--line);\n}\n.row-btn:hover, .row-btn:focus-visible { background: color-mix(in srgb, var(--ink) 4%, transparent); }\n.row-btn:active { background: color-mix(in srgb, var(--ink) 8%, transparent); }\n@media (prefers-reduced-motion: reduce) { .row-btn { transition: none; } }\n.row-main { display: flex; flex-direction: column; gap: 2px; min-width: 0; }\n.row-name { font-size: 13px; font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }\n.row-sub { font-size: 12px; color: var(--muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }\n.row-meta { font-size: 12px; color: var(--muted); font-variant-numeric: tabular-nums; }\n.dot { width: 10px; height: 10px; border-radius: 50%; background: var(--st-default); box-sizing: border-box; }\n.dot[data-status="WANTED"] { background: var(--st-wanted); }\n.dot[data-status="WON"] { background: var(--st-won); }\n.dot[data-status="LOST"] { background: var(--st-lost); }\n.dot[data-status="UNWANTED"] { background: var(--st-unwanted); }\n.dot[data-acted="yes"] { box-shadow: 0 0 0 2px var(--panel), 0 0 0 4px var(--acted); }\n.stop { display: grid; grid-template-columns: 24px minmax(0, 1fr) auto; align-items: center; gap: 10px; padding: 8px 0; border-bottom: 1px solid var(--line); }\n.stop:last-child { border-bottom: 0; }\n.stop-num { width: 24px; height: 24px; border-radius: 50%; display: grid; place-items: center; font-size: 11px; font-weight: 700; background: var(--ink); color: var(--panel); font-variant-numeric: tabular-nums; }\n.stop-name { font: inherit; font-size: 13px; font-weight: 600; background: none; border: 0; padding: 0; color: var(--ink); text-align: start; cursor: pointer; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }\n.stop-tools { display: flex; gap: 4px; }\n.stop-tools .icon-btn { width: 28px; height: 28px; }\n.empty { font-size: 13px; color: var(--muted); padding: 12px; border: 1px dashed var(--line); border-radius: 10px; }\n.summary { font-size: 12px; color: var(--muted); font-variant-numeric: tabular-nums; }\n\n@media (max-width: 760px) {\n html, body { height: auto; }\n .app { height: auto; grid-template-rows: auto; }\n .work { grid-template-columns: 1fr; }\n .map-frame { height: 58vh; min-height: 320px; }\n .panel-scroll { overflow: visible; }\n .legend { margin-inline-start: 0; }\n .city-form .lb-input { width: 100%; flex: 1 1 160px; }\n}\n</style>\n\n<div class="app">\n <header class="topbar">\n <div class="brand">\n <h1>Route Planner</h1>\n <span class="tally" id="tally">Connecting to Leadbay\u2026</span>\n </div>\n <form class="city-form" id="city-form">\n <label class="lb-vh" for="city-input">City or area to prospect</label>\n <input class="lb-input" id="city-input" name="city" type="text" placeholder="City or area" autocomplete="off">\n <button class="lb-btn lb-btn-submit" id="city-submit" type="submit">Show follow-ups</button>\n <button class="lb-btn" id="city-clear" type="button" hidden>All areas</button>\n <button class="lb-btn" id="fit-leads" type="button">Fit to leads</button>\n <span class="city-hint" id="city-hint">Picking a city also sets the location filter on your Monitor in Leadbay.</span>\n </form>\n <div class="legend" aria-label="Map legend">\n <span><i style="background:var(--st-wanted)"></i>Wanted</span>\n <span><i style="background:var(--st-won)"></i>Won</span>\n <span><i style="background:var(--st-lost)"></i>Lost</span>\n <span><i style="background:var(--st-unwanted)"></i>Unwanted</span>\n <span><i style="background:var(--st-default)"></i>No status</span>\n <span><i class="ring"></i>Worked today</span>\n </div>\n </header>\n <div class="notice" id="notice" role="alert"></div>\n <main class="work">\n <div class="map-frame">\n <div id="map" aria-label="Map of follow-up leads"></div>\n <div class="map-status" id="map-status" hidden><span class="lb-spinner" aria-hidden="true"></span><span id="map-status-text">Loading follow-ups\u2026</span></div>\n </div>\n <aside class="panel" aria-label="Lead and route panel">\n <div class="panel-scroll" id="panel"></div>\n </aside>\n </main>\n</div>\n<script src="https://cdnjs.cloudflare.com/ajax/libs/leaflet/1.9.4/leaflet.min.js"></script>\n<script>"use strict";(()=>{var we=Object.defineProperty;var ke=(e,t,n)=>t in e?we(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var b=(e,t,n)=>ke(e,typeof t!="symbol"?t+"":t,n);var Y=`\n:root{\n--color-black:#191919;--color-white:#fff;\n--color-gray-1:#f9f9f9;--color-gray-2:#f0f0f0;--color-gray-3:#e0e0e0;--color-gray-4:#cecece;\n--color-gray-5:#c4c4c4;--color-gray-6:#8d8d8d;--color-gray-7:#787878;--color-gray-8:#646464;\n--color-gray-9:#202020;\n--color-linkedin:#0a66c2;\n--color-blue-background:oklch(0.947 0.029 251);--color-blue-foreground:oklch(0.564 0.181 251);\n--color-green-background:oklch(0.947 0.029 141);--color-green-foreground:oklch(0.564 0.181 141);\n--color-red-background:oklch(0.947 0.029 26);--color-red-foreground:oklch(0.564 0.191 26);\n--color-gold-background:oklch(0.972 0.049 91);--color-gold-foreground:oklch(0.667 0.177 91);\n/* Yellow is the web app\'s "Could not reach" prospecting action. Its\n foreground is light (0.864) by design: the web app uses it for icons and\n borders on the tinted background, never as text on white. */\n--color-yellow-background:oklch(0.972 0.054 91);--color-yellow-foreground:oklch(0.864 0.181 91);\n--color-yellow-border:color-mix(in oklch,var(--color-yellow-foreground),transparent 65%);\n--color-cherry-background:oklch(0.947 0.029 15);--color-cherry-foreground:oklch(0.44 0.146 15);\n/* Purple carries the product\'s "AI" affordance (Qualify / Requalify). The\n border is the foreground at 65% transparency, exactly as the style package\n derives every *-border token. */\n--color-purple-background:oklch(0.947 0.029 288);--color-purple-foreground:oklch(0.464 0.181 288);\n--color-purple-border:color-mix(in oklch,var(--color-purple-foreground),transparent 65%);\n/* Teal carries the qualifier\'s intent tags, as the product\'s taste-profile\n tags do. Border derived at 65% transparency, like every *-border token. */\n--color-teal-background:oklch(0.977 0.019 180);--color-teal-foreground:oklch(0.574 0.182 180);\n--color-teal-border:color-mix(in oklch,var(--color-teal-foreground),transparent 65%);\n--color-red-like:var(--color-cherry-foreground);\n--lb-font:"Nikkei Maru",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;\n/* Concentric: outer = inner + padding (0.625 + 0.875 = 1.5rem). The card\'s\n padding is what closes this equation, so the two move together \\u2014 see\n .lb-card, which pads 0.875rem for exactly this reason. */\n--lb-radius:1.5rem;--lb-radius-sm:0.625rem;--lb-gap:0.75rem;\n--lb-surface:var(--color-gray-1);--lb-border:var(--color-gray-3);\n--lb-fg:var(--color-black);--lb-muted:var(--color-gray-8);--lb-field:var(--color-white);\n/* Chips and shadows need their own aliases: a chip painted with a raw ramp\n value cannot theme, and a shadow tinted with --color-gray-9 is invisible in\n dark because gray-9 IS the dark surface. */\n--lb-chip-bg:var(--color-gray-2);\n--lb-control-border:var(--color-gray-6);\n--lb-shadow:0 0.5rem 1.5rem oklch(0 0 0/.06),0 0.125rem 0.5rem oklch(0 0 0/.04);\ncolor-scheme:light;\n/* macOS renders text heavier than intended. This belongs once on the root,\n never per component \\u2014 an artifact that injects this sheet gets it for free\n instead of each page re-declaring it on its own body. */\n-webkit-font-smoothing:antialiased;\n-moz-osx-font-smoothing:grayscale;\n}\n:root[data-theme=dark],:root[data-lb-theme=dark]{\n--lb-surface:var(--color-gray-9);--lb-border:var(--color-gray-8);\n--lb-fg:var(--color-white);--lb-muted:var(--color-gray-3);\n/* --lb-field must NOT equal --lb-surface: a control needs its own ground or it\n reads as text on the card (was 1.00:1). */\n--lb-field:#2c2c2c;\n--lb-chip-bg:#3b3b3b;\n--lb-control-border:var(--color-gray-6);\n--lb-shadow:0 0.5rem 1.5rem oklch(0 0 0/.5),0 0.125rem 0.5rem oklch(0 0 0/.35);\ncolor-scheme:dark;\n--color-blue-background:oklch(0.30 0.055 251);--color-blue-foreground:oklch(0.80 0.11 251);\n--color-green-background:oklch(0.30 0.055 141);--color-green-foreground:oklch(0.80 0.13 141);\n--color-red-background:oklch(0.30 0.060 26);--color-red-foreground:oklch(0.80 0.11 26);\n--color-gold-background:oklch(0.30 0.055 91);--color-gold-foreground:oklch(0.82 0.13 91);\n--color-yellow-background:oklch(0.30 0.055 91);--color-yellow-foreground:oklch(0.86 0.14 91);\n--color-cherry-background:oklch(0.30 0.055 15);--color-cherry-foreground:oklch(0.82 0.10 15);\n--color-purple-background:oklch(0.30 0.055 288);--color-purple-foreground:oklch(0.82 0.11 288);\n--color-teal-background:oklch(0.30 0.055 180);--color-teal-foreground:oklch(0.82 0.11 180);\n}\n@media(prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-lb-theme=light]){\n--lb-surface:var(--color-gray-9);--lb-border:var(--color-gray-8);\n--lb-fg:var(--color-white);--lb-muted:var(--color-gray-3);\n/* --lb-field must NOT equal --lb-surface: a control needs its own ground or it\n reads as text on the card (was 1.00:1). */\n--lb-field:#2c2c2c;\n--lb-chip-bg:#3b3b3b;\n--lb-control-border:var(--color-gray-6);\n--lb-shadow:0 0.5rem 1.5rem oklch(0 0 0/.5),0 0.125rem 0.5rem oklch(0 0 0/.35);\ncolor-scheme:dark;\n--color-blue-background:oklch(0.30 0.055 251);--color-blue-foreground:oklch(0.80 0.11 251);\n--color-green-background:oklch(0.30 0.055 141);--color-green-foreground:oklch(0.80 0.13 141);\n--color-red-background:oklch(0.30 0.060 26);--color-red-foreground:oklch(0.80 0.11 26);\n--color-gold-background:oklch(0.30 0.055 91);--color-gold-foreground:oklch(0.82 0.13 91);\n--color-yellow-background:oklch(0.30 0.055 91);--color-yellow-foreground:oklch(0.86 0.14 91);\n--color-cherry-background:oklch(0.30 0.055 15);--color-cherry-foreground:oklch(0.82 0.10 15);\n--color-purple-background:oklch(0.30 0.055 288);--color-purple-foreground:oklch(0.82 0.11 288);\n--color-teal-background:oklch(0.30 0.055 180);--color-teal-foreground:oklch(0.82 0.11 180);\n}}\n/* 0.875rem padding is not arbitrary: it closes the concentric equation with\n --lb-radius (1.5rem) and --lb-radius-sm (0.625rem). Changing it without\n moving --lb-radius leaves a control\'s arc running wider than the card\'s in\n the corner. */\n.lb-card{display:grid;gap:var(--lb-gap);padding:0.875rem;\nbackground-color:var(--lb-surface);border:1px solid var(--lb-border);\nborder-radius:var(--lb-radius);corner-shape:squircle;color:var(--lb-fg);\nfont-family:var(--lb-font);\nbox-shadow:var(--lb-shadow)}\n/* \\u2500\\u2500 Card layout \\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\n A lead card is a stack of SECTIONS, each a titled block (Fit, Intent tags,\n Data, Status, Outreach). One wrapper owns the rhythm \\u2014 16px between\n sections, 8px between the items inside one \\u2014 so a section can be added,\n removed or reordered without touching spacing, and no margin can collapse.\n Every artifact that builds cards gets the same geometry from here rather\n than hand-rolling it. */\n.lb-sections{display:flex;flex-direction:column;gap:1rem}\n.lb-section{display:grid;gap:0.5rem}\n/* A section title: black, uppercase, tracked. It names the block below it, so\n it must sit at SECTION level \\u2014 nested inside a row it stops being a peer of\n the other titles and the card loses its scan order. */\n.lb-sec-title{font-size:0.75rem;font-weight:700;letter-spacing:.08em;\ntext-transform:uppercase;color:var(--lb-fg);line-height:1.4;\ntext-wrap:balance}\n/* Header row: leading control (a bulk checkbox), the title, then trailing\n controls (taste) pushed to the far edge. */\n.lb-card-top{display:flex;align-items:center;gap:0.625rem;flex-wrap:wrap}\n.lb-card-top>.lb-group{flex:0 0 auto;margin-inline-start:auto}\n.lb-card-top>input[type=checkbox]{flex:0 0 auto;width:1rem;height:1rem;margin:0}\n/* The company name. Bold and underlined so it reads as the card\'s subject and\n as a link, without competing with the uppercase section titles. */\n/* text-wrap:balance keeps a two-line company name from breaking one-word-over;\n the underline takes its position and thickness from the font\'s own metrics\n rather than wherever the browser puts them, and skip-ink clears descenders. */\n.lb-lead-title{flex:1 1 9rem;min-width:0;font-size:0.9375rem;font-weight:700;\nline-height:1.3;color:var(--lb-fg);text-wrap:balance;text-decoration:underline;\ntext-underline-position:from-font;text-decoration-thickness:from-font;\ntext-underline-offset:2px;text-decoration-skip-ink:auto;overflow-wrap:break-word}\n.lb-lead-title a{color:inherit;text-decoration:inherit}\n/* Controls in a section stack, each spanning it, so every control on the card\n shares one leading edge and one width. Three different widths across a row\n read as three unrelated things. */\n.lb-section>.lb-select,.lb-section>.lb-input,\n.lb-stack>.lb-select,.lb-stack>.lb-input,.lb-stack>.lb-btn{width:100%;min-width:0}\n/* Footer: a leading action, a spacer, a trailing escape hatch. */\n.lb-card-foot{display:flex;align-items:center;gap:0.625rem;\npadding-block-start:0.875rem;border-block-start:1px solid var(--lb-border)}\n.lb-card-foot .lb-spacer{flex:1 1 auto}\n/* \\u2500\\u2500 Toolbar \\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\n The bar above a deck of cards: a tally, the controls that narrow what is\n shown, and the controls that act on a selection. Those are three different\n jobs, so they are three groups \\u2014 0.5rem within one, 1.5rem between \\u2014 rather\n than one flat row where "apply to selected" reads as another filter.\n Concentric: it pads 0.75rem around controls that round at 0.625rem, so it\n rounds at 1.375rem. */\n.lb-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:0.75rem 1.5rem;\npadding:0.75rem 1rem;background-color:var(--lb-surface);\nborder:1px solid var(--lb-border);border-radius:1.375rem;corner-shape:squircle;\nfont-family:var(--lb-font);color:var(--lb-fg)}\n.lb-toolbar .lb-group{gap:0.5rem}\n/* A labelled control stacks: caption above, control below, as a card section\n does. One label pattern across the whole artifact. */\n.lb-field{display:inline-flex;flex-direction:column;align-items:flex-start;\ngap:0.25rem;font-size:0.8125rem;line-height:1.4;color:var(--lb-muted);\nwhite-space:nowrap}\n/* A checkbox belongs BESIDE its words \\u2014 under a caption it reads as orphaned. */\n.lb-field-inline{flex-direction:row;align-items:center;gap:0.5rem}\n/* A control\'s caption is not body copy: it names the control, so it takes the\n same treatment as a card\'s section title. */\n.lb-field-label{font-size:0.75rem;font-weight:700;letter-spacing:.08em;\ntext-transform:uppercase;color:var(--lb-fg)}\n/* A labelled field sizes to its own content, so width:100% on the control\n inside only fills whatever the field already became. Two fields side by side\n still come out unequal \\u2014 they have no shared reference to be equal against.\n Give the FIELD the basis: flex:1 1 9rem makes every labelled field claim the\n same share of the row, so a select and a text input beside it match. */\n.lb-field{flex:1 1 9rem;min-width:9rem;max-width:16rem}\n.lb-field>.lb-select,.lb-field>.lb-input{width:100%;min-width:0}\n/* An inline field holds a checkbox, not a sized control: natural width, no floor. */\n.lb-field-inline{flex:0 0 auto;min-width:0;max-width:none}\n.lb-field-inline>*{min-width:0;width:auto;flex:0 0 auto}\n/* Readouts sit on the control baseline, not the caption\'s. */\n.lb-toolbar .lb-tally,.lb-toolbar .lb-status{align-self:center}\n.lb-tally{font-size:0.8125rem;line-height:1.4;color:var(--lb-muted);\nfont-variant-numeric:tabular-nums;white-space:nowrap}\n/* Connection state, never carried by colour alone: live is a filled dot, dead\n a hollow ring, so the two differ in shape as well as hue \\u2014 a red and a green\n circle are the same circle to a colour-blind reader, and identical under\n forced colours. */\n.lb-status{display:inline-flex;align-items:center;gap:0.5rem;\nfont-size:0.75rem;line-height:1.4;color:var(--lb-muted);white-space:nowrap}\n.lb-status-dot{width:0.5rem;height:0.5rem;border-radius:50%;flex:none;\nbackground-color:var(--color-gray-5);border:2px solid transparent}\n.lb-status[data-live=yes] .lb-status-dot{background-color:var(--color-green-foreground)}\n.lb-status[data-live=no] .lb-status-dot{background-color:transparent;\nborder-color:var(--color-red-foreground)}\n/* \\u2500\\u2500 Pager \\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\n Below a deck, never above it: the rep reads the rows, then decides whether\n to go on. The range ("21\\u201340 of 60") is the honest label \\u2014 "page 2" alone\n does not say how much is left, and a rep who cannot see the end cannot tell\n a short lens from a long one. Tabular, because the numbers change. */\n.lb-pager{display:flex;align-items:center;gap:0.75rem;flex-wrap:wrap}\n.lb-pager .lb-spacer{flex:1 1 auto}\n.lb-pager-range{font-size:0.8125rem;line-height:1.4;color:var(--lb-muted);\nfont-variant-numeric:tabular-nums;white-space:nowrap}\n/* \\u2500\\u2500 Metrics + chart \\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\n A manager dashboard reports before it lists: a row of figures, then the\n trend behind them, then the per-rep table. Tiles are for the few numbers\n that ARE the point \\u2014 a tile per field turns a dashboard into a wall. */\n.lb-tiles{display:grid;gap:0.75rem;\ngrid-template-columns:repeat(auto-fit,minmax(min(9rem,100%),1fr))}\n.lb-tile{display:grid;gap:0.25rem;padding:0.75rem 0.875rem;\nbackground-color:var(--lb-field);border:1px solid var(--lb-border);\nborder-radius:1.375rem;corner-shape:squircle}\n.lb-tile-label{font-size:0.75rem;font-weight:700;letter-spacing:.08em;\ntext-transform:uppercase;color:var(--lb-muted);line-height:1.4}\n.lb-tile-value{font-size:1.5rem;font-weight:700;line-height:1.15;\ncolor:var(--lb-fg);font-variant-numeric:tabular-nums}\n/* The chart draws from the theme tokens, so it reads in light and dark alike;\n a hardcoded stroke disappears on one of the two. Inline SVG rather than a\n CDN library: a sparse weekly series does not earn 200KB, and an artifact\n that silently fails to load its chart shows nothing at all. */\n.lb-chart{display:block;width:100%;height:auto}\n.lb-chart .lb-chart-grid{stroke:var(--lb-border);stroke-width:1}\n.lb-chart .lb-chart-line{fill:none;stroke:var(--color-blue-foreground);stroke-width:2;\nstroke-linejoin:round;stroke-linecap:round}\n.lb-chart .lb-chart-area{fill:var(--color-blue-background);opacity:.55}\n.lb-chart .lb-chart-dot{fill:var(--color-blue-foreground)}\n/* Axis labels are UI text and take the same 12px floor as everything else \\u2014\n a chart is not a licence to shrink type below what is readable. */\n.lb-chart text{fill:var(--lb-muted);font-family:var(--lb-font);font-size:0.75rem}\n/* An empty series is a real answer, not a failure: say so in place of the\n chart rather than drawing empty axes that look broken. */\n.lb-empty{display:grid;place-items:center;gap:0.25rem;padding:1.5rem 1rem;\nbackground-color:var(--lb-field);border:1px dashed var(--lb-border);\nborder-radius:1.375rem;corner-shape:squircle;text-align:center}\n.lb-empty-title{font-size:0.8125rem;font-weight:600;color:var(--lb-fg);line-height:1.4}\n.lb-empty-hint{font-size:0.78125rem;color:var(--lb-muted);line-height:1.45;max-width:44ch}\n/* A page flip replaces the whole deck, so the rows must read as pending or the\n rep cannot tell a slow page from a finished one. Dim and lock the deck\n rather than blanking it: keeping the old rows on screen preserves the\n scroll position and the sense of place. */\n.lb-deck[data-lb-state=loading]{opacity:.55;pointer-events:none}\n/* The head must be able to wrap. Both children default to flex:0 1 auto, so\n without this they shrink together and a long company name is crushed to three\n lines while the chips keep full width. flex-basis:11rem is a content breakpoint:\n below ~176px for the title, the chips drop to their own line instead. */\n.lb-card-head{display:flex;flex-wrap:wrap;justify-content:space-between;\nalign-items:baseline;gap:var(--lb-gap)}\n/* An email or URL has no break opportunity \\u2014 browsers do not break at "@" or\n ".", so without this a company address escapes the card and the chat host\n clips it with no way to recover the tail. */\n.lb-title{font-size:0.875rem;font-weight:600;line-height:1.3;color:var(--lb-fg);\noverflow-wrap:break-word;min-width:0;flex:1 1 11rem}\n/* pretty stops a lone word landing on the last line of a why-it-fits sentence\n or a fact \\u2014 the orphan that makes a card look unfinished. */\n.lb-sub{font-size:0.8125rem;line-height:1.45;color:var(--lb-muted);\ntext-wrap:pretty;overflow-wrap:break-word;max-width:68ch}\n/* An empty fact line is a 30px void that reads as a rendering bug. */\n.lb-sub:empty{display:none}\n/* The tightest group on the card: consecutive data lines (the contact, then\n the company switchboard) are one block, so they sit at HALF the section\'s\n own 8px. That 2x ratio is what makes them read as a unit rather than as\n separate facts \\u2014 the same rule .lb-section applies one level up against\n .lb-sections\' 16px. The scale halves at each level: 16 \\u2192 8 \\u2192 4. */\n.lb-facts{display:grid;gap:0.25rem}\n/* The contract\'s canonical skeleton already emits data-why; the sheet just did\n not honour it, so consumers hand-patched an inline font-style. */\n.lb-sub[data-why]{font-style:italic;color:var(--lb-fg)}\n/* Icon column: the glyph gets its own cell so a wrapping line hangs on one\n shared text edge instead of running back under the emoji. */\n.lb-fact{display:grid;grid-template-columns:1.15rem 1fr;gap:0.35rem;align-items:baseline}\n.lb-row{display:flex;align-items:center;gap:var(--lb-gap);flex-wrap:wrap}\n/* row-gap matters once the row wraps: without it the wrapped line sits flush\n against the one above. */\n.lb-row{row-gap:0.5rem}\n/* 8px, matching .lb-section \\u2014 a stack inside a section must not space its\n controls wider than the section spaces its own children. */\n.lb-stack{display:grid;gap:0.5rem}\n/* A select is border-box by UA default; a text input is content-box. Given the\n same width, padding and border, the input therefore renders ~2rem wider \\u2014 the\n padding lands outside its box and inside the select\'s. Neither is wrong on its\n own; they just cannot be sized together until they agree. Every control the\n kit styles is border-box, so a declared width is the width that shows. */\n.lb-btn,.lb-select,.lb-input{box-sizing:border-box}\n.lb-select,.lb-input{font:inherit;font-family:var(--lb-font);font-size:0.8125rem;color:var(--lb-fg);\nbackground-color:var(--lb-field);border:1px solid var(--lb-control-border);\nborder-radius:var(--lb-radius-sm);corner-shape:squircle;padding:0.4rem 0.55rem;min-height:2.125rem}\n/* Geometry, states and motion ported from the product\'s Button component\n (packages/ui/components/Button) so an artifact button and an app button are\n the same object. MUI spacing is 8px/unit, so its size=medium (py .875,\n px .875, borderRadius .875) is 7px/7px/7px and large (py 1.75, px 2,\n borderRadius 1.25) is 14px/16px/10px. A control sitting in a row beside a\n select reads as medium, so that is the default here; .lb-btn-lg opts into\n large. The app\'s default variant is secondary \\u2014 white ground, gray-5\n border, black text \\u2014 which is what an unadorned .lb-btn already was. */\n.lb-btn{font:inherit;font-family:var(--lb-font);font-size:0.8125rem;font-weight:600;\ncolor:var(--color-black);background-color:var(--color-white);\nborder:1px solid var(--color-gray-5);\nborder-radius:0.4375rem;corner-shape:squircle;padding:0.4375rem 0.4375rem;min-height:2.125rem;\ncursor:pointer;user-select:none;-webkit-user-select:none;text-wrap:nowrap;\nfont-variant-numeric:tabular-nums;\ntransition:background-color .16s ease,border .16s ease,color .16s ease,\nopacity .16s ease,transform .16s cubic-bezier(0.23,1,0.32,1)}\n/* The app hovers the GROUND to gray-2, not the border. */\n@media (hover:hover){\n.lb-btn:hover:not([disabled]):not([data-lb-state=loading]){\nbackground-color:var(--color-gray-2)}}\n/* Front-loaded press, so the tap leads the colour crossfade. */\n.lb-btn:active:not([disabled]):not([data-lb-state=loading]){transform:scale(0.97)}\n.lb-btn[disabled]{opacity:.4;cursor:default}\n/* A text button with a label + icon: the app lays the content out as a flex row\n with a 6px gap (its content style uses gap 0.75). */\n.lb-btn{display:inline-flex;align-items:center;justify-content:center;gap:0.375rem}\n.lb-btn>svg{display:block;flex-shrink:0;width:1.05rem;height:1.05rem}\n/* Opt-in large, for a button that stands alone rather than in a control row. */\n.lb-btn-lg{border-radius:0.625rem;padding:0.875rem 1rem}\n/* A SUBMIT is not a toggle. Like/Dislike are independent switches; "Set status"\n commits the value sitting in the select beside it. Rendered identically, the\n row reads as five peers and the rep cannot see which control ends the task.\n The accent border + tinted ground marks it as the commit without making it a\n loud filled button \\u2014 the state styles above still win when they apply. */\n/* INVERTED, not recoloured. A normal button is --lb-fg on --lb-field; the\n submit swaps them. That introduces no new hue, and it themes for free: light\n gives near-black on white, dark gives white on near-black \\u2014 the polarity flip\n reads as "this one commits" in both, without competing with the semantic\n state colours (success green / error red) that still override it. */\n/* This is the app\'s primary variant verbatim: black ground, white text, and a\n hover that mixes 32% gray-8 into the black rather than lightening opacity. */\n.lb-btn-submit{background-color:var(--lb-fg);color:var(--lb-field);\nborder-color:var(--lb-fg)}\n@media (hover:hover){\n.lb-btn-submit:hover:not([disabled]):not([data-lb-state=loading]){\nbackground-color:color-mix(in oklch,var(--lb-fg),var(--color-gray-8) 32%);\nborder-color:color-mix(in oklch,var(--lb-fg),var(--color-gray-8) 32%)}}\n/* The app\'s ai variant \\u2014 what QualifyButton/Requalify wears. Purple ground,\n purple-foreground text, border at 65% transparency of the foreground; hover\n mixes 7% black into the ground. Tokens mirror the product\'s style package. */\n.lb-btn-ai{background-color:var(--color-purple-background);\nborder-color:var(--color-purple-border);color:var(--color-purple-foreground)}\n@media (hover:hover){\n.lb-btn-ai:hover:not([disabled]):not([data-lb-state=loading]){\nbackground-color:color-mix(in oklch,var(--color-purple-background),black 7%)}}\n/* Toggles that act on the same axis belong in one visual unit, so the row reads\n as "taste | status | inspect" rather than five equal buttons. The gap inside\n a group is half the gap between groups \\u2014 the 2x rule, applied horizontally. */\n.lb-group{display:inline-flex;align-items:center;gap:0.375rem;flex-wrap:wrap}\n/* Square icon button. Only for actions whose glyph is unambiguous on its own \\u2014\n thumbs up/down qualify, "Set status" does not. It MUST carry an aria-label\n and a title: with no text the icon is the entire affordance, so an unlabelled\n one is unreadable to a screen reader and to anyone who does not know the\n glyph. Same 2.125rem box as a text button, so it keeps the row\'s baseline. */\n.lb-btn-icon{padding:0;width:2.125rem;justify-content:center;display:inline-flex;\nalign-items:center}\n.lb-btn-icon svg{width:1.05rem;height:1.05rem;flex-shrink:0}\n/* Pressed state. The taste chip carries the durable fact; this is the control\n reflecting it, and it must not rely on colour alone \\u2014 aria-pressed is the\n accessible half and the fill is the visible half. */\n/* A heart that stays hollow does not read as "liked" \\u2014 fill it from the same\n currentColor the stroke uses, so one rule covers both themes. */\n.lb-btn-icon[aria-pressed=true] svg{fill:currentColor}\n.lb-btn-icon[aria-pressed=true]{border-color:var(--color-red-like);\ncolor:var(--color-red-like);\nbackground-color:color-mix(in srgb,var(--color-red-like) 10%,var(--lb-field))}\n.lb-btn-icon[data-taste=disliked][aria-pressed=true]{border-color:var(--lb-muted);\ncolor:var(--lb-muted);\nbackground-color:color-mix(in srgb,var(--lb-muted) 10%,var(--lb-field))}\n/* A glyph-only control has no text to widen its hit area, so extend the target\n past the 34px box without inflating the row. */\n.lb-btn-icon{position:relative}\n.lb-btn-icon::before{content:"";position:absolute;inset:-5px}\n.lb-btn:focus-visible,.lb-select:focus-visible,.lb-input:focus-visible,\n.lb-link:focus-visible{\noutline:2px solid var(--color-blue-foreground);outline-offset:1px;\nborder-radius:var(--lb-radius-sm)}\n/* Forced colours replaces every background and custom outline with a system\n colour, collapsing the state styling above into one flat control. */\n@media(forced-colors:active){\n.lb-btn,.lb-select,.lb-input,.lb-chip{border:1px solid CanvasText}\n.lb-btn:focus-visible,.lb-select:focus-visible,.lb-input:focus-visible,\n.lb-link:focus-visible,.lb-link-out:focus-visible{outline:2px solid Highlight}\n.lb-link-out{opacity:1}}\n/* Each state carries a glyph as well as a hue: success and error were two\n pills with identical labels, indistinguishable to a red-green colour-blind\n reader and identical under forced colours. */\n.lb-btn[data-lb-state=loading]{opacity:.55;cursor:progress}\n.lb-btn[data-lb-state=loading]::after{content:"\\u2026";margin-inline-start:.35rem}\n/* An icon button has no room for a trailing glyph \\u2014 it would push the icon\n off-centre. Its states read through border and fill, which the forced-colors\n block below keeps distinguishable. */\n.lb-btn-icon::after{content:none!important}\n.lb-btn[data-lb-state=success]::after{content:"\\u2713";margin-inline-start:.35rem}\n.lb-btn[data-lb-state=error]::after{content:"\\u2715";margin-inline-start:.35rem}\n.lb-btn[data-lb-state=unavailable]::after{content:"\\u26A0";margin-inline-start:.35rem}\n/* With save-on-change there is no button to reflect the write, so the select\n itself must. Only error was styled before; loading and success were invisible\n on a select, leaving the rep unsure whether the pick had landed. */\n.lb-select[data-lb-state=loading]{opacity:.55;cursor:progress}\n.lb-select[data-lb-state=success]{border-color:var(--color-green-foreground)}\n.lb-msg[data-tone=error]::before{content:"\\u2715 "}\n.lb-msg[data-tone=ok]::before{content:"\\u2713 "}\n.lb-btn[data-lb-state=success]{background-color:var(--color-green-background);\nborder-color:var(--color-green-foreground);color:var(--color-green-foreground)}\n.lb-btn[data-lb-state=error],.lb-select[data-lb-state=error]{\nbackground-color:var(--color-red-background);border-color:var(--color-red-foreground);\ncolor:var(--color-red-foreground)}\n.lb-btn[data-lb-state=unavailable],.lb-btn[disabled]{opacity:.5;cursor:not-allowed}\n.lb-msg{font-size:0.8125rem;line-height:1.45;color:var(--lb-muted)}\n/* Screen-reader-only text: control labels, unit suffixes, "opens in a new tab". */\n.lb-vh{position:absolute;width:1px;height:1px;margin:-1px;padding:0;\noverflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}\n.lb-msg[data-tone=error]{color:var(--color-red-foreground)}\n.lb-msg[data-tone=ok]{color:var(--color-green-foreground)}\n.lb-chip{display:inline-flex;align-items:center;gap:.25rem;white-space:nowrap;\nfont-size:0.75rem;font-weight:600;line-height:1rem;padding:0.125rem 0.5rem;\nborder-radius:var(--lb-radius-sm);corner-shape:squircle;\nbackground-color:var(--lb-chip-bg);color:var(--lb-muted)}\n.lb-chip[data-status=WANTED]{background-color:var(--color-blue-background);color:var(--color-blue-foreground)}\n.lb-chip[data-status=WON]{background-color:var(--color-green-background);color:var(--color-green-foreground)}\n.lb-chip[data-status=LOST]{background-color:var(--color-red-background);color:var(--color-red-foreground)}\n.lb-chip[data-status=UNWANTED]{background-color:var(--lb-chip-bg);color:var(--lb-muted)}\n.lb-chip[data-taste=liked]{background-color:var(--color-cherry-background);color:var(--color-red-like)}\n.lb-chip[data-taste=disliked]{background-color:var(--lb-chip-bg);color:var(--lb-muted)}\n.lb-chips{display:flex;align-items:center;gap:0.5rem;flex-wrap:wrap}\n/* \\u2500\\u2500 Tag rows \\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\n Two kinds, deliberately different so they never read as the same axis.\n FIRMOGRAPHIC (.lb-tags-plain): what the company IS \\u2014 location, size, sector.\n Quiet grey, because it is context the rep skims.\n INTENT (.lb-tags-intent): what the qualifier FOUND \\u2014 a buying signal. Teal,\n matching the product\'s own taste-profile tags, because it is the reason the\n lead is on screen. Both wrap and both sit on the section\'s 8px. */\n.lb-tags-plain,.lb-tags-intent{display:flex;flex-wrap:wrap;gap:0.5rem}\n/* Both tags round at 0.375rem: they are the innermost surface, and a tag whose\n radius drifts from its neighbours reads as a different kind of object. Their\n own padding is small enough that concentric math against the card does not\n apply \\u2014 past a point the layers are separate surfaces, each chosen on its\n own. */\n.lb-tags-plain>*{display:inline-flex;align-items:center;\nbackground-color:var(--lb-surface);border:1px solid var(--lb-border);\ncolor:var(--lb-muted);border-radius:0.375rem;padding:0.125rem 0.375rem;\nfont-size:0.75rem;font-weight:500;line-height:1.5;white-space:nowrap}\n.lb-tags-intent>*{display:inline-flex;align-items:center;\nbackground-color:var(--color-teal-background);border:1px solid var(--color-teal-border);\ncolor:var(--color-teal-foreground);border-radius:0.375rem;padding:0.1875rem 0.4375rem;\nfont-size:0.75rem;line-height:1.4}\n/* The honest empty state: a blank tag row reads as a rendering bug, so say\n what is missing and what fixes it. */\n.lb-tags-empty{font-size:0.78125rem;line-height:1.45;color:var(--lb-muted);\nfont-style:italic}\n/* The chips row is empty until a taste or a status lands. Left in flow it is a\n zero-height element that still consumes the gap above the first section, so\n hide it while it holds nothing \\u2014 set the hidden attribute from the code that\n paints the chips, since it is that code which knows. */\n.lb-chips[hidden]{display:none}\n.lb-chip[hidden]{display:none}\n.lb-table{width:100%;border-collapse:collapse;font-family:var(--lb-font);color:var(--lb-fg)}\n.lb-table th,.lb-table td{text-align:start;padding:0.5rem 0.4rem;\nborder-bottom:1px solid var(--lb-border);vertical-align:middle;font-size:0.8125rem}\n.lb-table th{font-size:0.75rem;font-weight:600;color:var(--lb-muted);\ntext-transform:uppercase;letter-spacing:.04em}\n/* Counts line up only when the digits do; a leaderboard whose numbers jitter\n column-to-column cannot be scanned down. */\n.lb-table td[data-num],.lb-table th[data-num]{text-align:end;\nfont-variant-numeric:tabular-nums}\n/* A sortable header is a control: it must look clickable and say which way it\n is sorting, in text as well as by arrow \\u2014 aria-sort is the accessible half. */\n.lb-table th[aria-sort]{cursor:pointer;user-select:none;color:var(--lb-fg)}\n.lb-table th[aria-sort]:hover{text-decoration:underline}\n.lb-table th[aria-sort=ascending]::after{content:" \\\\2191"}\n.lb-table th[aria-sort=descending]::after{content:" \\\\2193"}\n.lb-table th[aria-sort=none]::after{content:" \\\\2195";opacity:.35}\n/* The row a manager is acting on. */\n.lb-table tbody tr[aria-selected=true]{background-color:var(--lb-chip-bg)}\n.lb-link{color:var(--color-blue-foreground);text-decoration:none}\n.lb-link:hover{text-decoration:underline}\n/* Quiet text link out of the artifact. Button-height so it shares the row\'s\n baseline; understated so it never competes with the actions beside it. The\n arrow is a bare diagonal stroke \\u2014 an escape-hatch marker, not an icon that\n asks to be read. */\n.lb-link-out{display:inline-flex;align-items:center;gap:.3rem;\nfont-size:0.75rem;line-height:1rem;min-height:2.125rem;\ncolor:var(--lb-fg);text-decoration:none;opacity:.65;transition:opacity .15s}\n.lb-link-out:hover{opacity:1;text-decoration:underline}\n.lb-link-out:focus-visible{outline:2px solid var(--color-blue-foreground);outline-offset:1px;\nborder-radius:var(--lb-radius-sm)}\n.lb-link-out svg{width:.85em;height:.85em;flex-shrink:0}\n/* Pushes whatever follows it to the right edge of an .lb-row, so a trailing\n link sits on the SAME baseline as the row\'s buttons instead of on its own\n line below them. */\n/* A spacer only aligns items on its OWN flex line. .lb-row wraps, so once the\n link falls to a second line the spacer stays behind and the link renders\n left-aligned \\u2014 the opposite of what the contract promises. The auto margin\n re-anchors it to the trailing edge of whichever line it lands on, and is a\n no-op while the row is unwrapped. */\n.lb-spacer{flex:1 1 auto;min-width:0}\n.lb-row>.lb-link-out{margin-inline-start:auto}\n.lb-spinner{display:inline-block;width:.7em;height:.7em;border:2px solid var(--lb-border);\nborder-top-color:var(--color-blue-foreground);border-radius:50%;animation:lb-spin .8s linear infinite}\n@keyframes lb-spin{to{transform:rotate(1turn)}}\n/* animation:none left a static ring \\u2014 under reduced motion "sending" and\n "cannot click" looked identical. An opacity pulse is the sanctioned\n substitute. The 150ms colour fade is fine and stays. */\n@media(prefers-reduced-motion:reduce){.lb-spinner{animation:lb-pulse 1.4s ease-in-out infinite}}\n@keyframes lb-pulse{50%{opacity:.35}}\n`,F="lb-styles";var ve="2026-01-26";function Z(e,t){return Object.assign(new Error(e),{name:"LbError",code:t})}function J(){return typeof window<"u"&&window.parent!=null&&window.parent!==window}function X(e,t={parent:window.parent,self:window}){let n=new Map,r=1,o=null,a=c=>t.parent.postMessage({jsonrpc:"2.0",...c},"*");function i(c,s){let d=r++;return new Promise((g,h)=>{n.set(d,{resolve:g,reject:h}),a({id:d,method:c,params:s})})}function l(c){if(c.source!==t.parent)return;let s=c.data;if(!s||typeof s!="object"||s.jsonrpc!=="2.0")return;if(typeof s.method=="string"){if(s.id===void 0)return;s.method==="ping"||s.method==="ui/resource-teardown"?a({id:s.id,result:{}}):a({id:s.id,error:{code:-32601,message:`Method not found: ${s.method}`}});return}let d=n.get(s.id);d&&(n.delete(s.id),s.error?d.reject(Z(String(s.error.message||"The host refused the call"),"host_error")):d.resolve(s.result))}function u(){return o||(o=(async()=>{t.self.addEventListener("message",l);let c=r,s=i("ui/initialize",{appInfo:{name:"Leadbay",version:e},appCapabilities:{},protocolVersion:ve}),d,g=new Promise((h,f)=>{d=setTimeout(()=>{n.delete(c),f(Z("Leadbay is not reachable from this page \\u2014 the host never answered the MCP Apps handshake.","unavailable"))},5e3)});try{await Promise.race([s,g])}finally{d&&clearTimeout(d)}a({method:"ui/notifications/initialized",params:{}}),xe(a),_e(i)})(),o.catch(()=>{o=null})),o}return async(c,s)=>(await u(),i("tools/call",{name:c,arguments:s}))}function xe(e){if(typeof document>"u"||typeof ResizeObserver>"u")return;let t=!1,n=0,r=0,o=()=>{t||(t=!0,requestAnimationFrame(()=>{t=!1;let i=document.documentElement,l=i.style.height;i.style.height="max-content";let u=Math.ceil(i.getBoundingClientRect().height);i.style.height=l;let c=Math.ceil(window.innerWidth);c===n&&u===r||(n=c,r=u,e({method:"ui/notifications/size-changed",params:{width:c,height:u}}))}))};o();let a=new ResizeObserver(o);a.observe(document.documentElement),a.observe(document.body)}function _e(e){typeof document>"u"||document.addEventListener("click",t=>{let n=t.target,r=n&&typeof n.closest=="function"?n.closest("a[href]"):null;if(!r)return;let o=r.href;/^https?:\\/\\//i.test(o)&&(t.preventDefault(),e("ui/open-link",{url:o}).catch(()=>{window.open(o,"_blank","noopener")}))},!0)}var G="0.6.0",C=class extends Error{constructor(n,r={}){super(n);b(this,"code");b(this,"raw");this.name="LbError",this.code=r.code,this.raw=r.raw}},te=null,O=3e4,ne="Leadbay",re=ne;function oe(){let e=globalThis.cowork;if(e&&typeof e.callMcpTool=="function")return(n,r)=>e.callMcpTool(n,r);let t=globalThis.claude;return t&&typeof t.use=="function"?async(n,r)=>{let o=await Se(t.use);if(!o||typeof o.callTool!="function")throw new C("Leadbay is not reachable from this page \\u2014 the artifact must declare the Leadbay connector in its capabilities, and the viewer must have it enabled.",{code:"unavailable"});let a=await o.callTool(re,n,r);return a&&"payload"in a&&a.payload!==void 0?a.payload:a}:J()?(N||(N=X(G)),N):null}var N=null,M=null;function Se(e){return M||(M=Promise.resolve(e("mcp")).catch(()=>null)),M}var ae="leadbay_report_artifact_error",Te=40,j=new Set,U=0,K=!0;function Ee(e){K=e}function wt(){j.clear(),U=0,K=!0,A=null,P="call"}function T(e){if(!K||U>=Te)return;let t=`${e.kind}|${e.surface}|${e.tool??""}|${e.code??""}`;if(j.has(t))return;j.add(t),U++;let n=oe();if(n)try{let r=n(ae,{kind:e.kind,surface:e.surface,kit_version:G,...e.tool?{tool:e.tool}:{},...e.code?{code:e.code}:{}});r&&typeof r.catch=="function"&&r.catch(()=>{})}catch{}}var P="call",A=null;function q(e,t,n){let r=P,o=A;P=e,A=n??null;try{return t()}finally{P=r,A=o}}function Ae(e,t,n){let r=ie(n);T({kind:r==="timeout"?"call_timeout":r==="unavailable"?"bridge_unavailable":"call_failed",surface:e,tool:t,code:r})}function ee(e){if(e&&typeof e=="object"&&"content"in e){let t=e.content;if(Array.isArray(t)&&t[0]&&typeof t[0].text=="string")return t[0].text}return null}function Ce(e,t,n="call"){if(!e||typeof e!="object")return e;let r=e;if(r.isError)throw new C(ee(e)??"tool call failed",{raw:e});if("structuredContent"in r&&r.structuredContent!=null)return r.structuredContent;let o=ee(e);if(o!=null)try{return JSON.parse(o)}catch{return T({kind:"parse_failed",surface:n,tool:t}),o}return e}function V(e){if(e instanceof Error)return e.message;if(e&&typeof e=="object"){let t=e.message;if(typeof t=="string"&&t)return t;try{return JSON.stringify(e)}catch{}}return String(e)}function ie(e){if(e instanceof C)return e.code;if(e&&typeof e=="object"){let t=e.code;if(typeof t=="string"&&t)return t}}function D(e){let t=ie(e);return{message:V(e),unavailable:t==="unavailable",code:t}}function Le(e={}){te=e.call??null,O=e.timeoutMs??3e4,re=e.server??ne,M=null,N=null,B.clear()}function Ie(){if(typeof document>"u"||!document.head)return null;let e=document.getElementById(F);if(e)return e;let t=document.createElement("style");return t.id=F,t.textContent=Y,document.head.appendChild(t),t}async function Re(e,t){if(!O||O<=0)return e;let n,r=new Promise((o,a)=>{n=setTimeout(()=>a(new C(`"${t}" timed out after ${O}ms`,{code:"timeout"})),O)});try{return await Promise.race([e,r])}finally{n&&clearTimeout(n)}}async function p(e,t={}){let n=e===ae,r=P;!n&&A&&A.tool===void 0&&(A.tool=e);let o=te??oe();if(!o)throw n||T({kind:"bridge_unavailable",surface:r,tool:e,code:"unavailable"}),new C(\'Leadbay bridge unavailable \\u2014 no window.cowork, no window.claude.use("mcp") and no MCP Apps host\',{code:"unavailable"});try{return Ce(await Re(Promise.resolve(o(e,t)),e),n?void 0:e,r)}catch(a){throw n||Ae(r,e,a),a}}var I=class{constructor(){b(this,"subs",new Set)}subscribe(t){return this.subs.add(t),t(this),()=>this.subs.delete(t)}emit(){for(let t of this.subs)t(this)}};function Oe(e){return Array.isArray(e)?e.map(t=>t&&typeof t=="object"?t:{value:t,label:String(t)}):[]}var S=class extends I{constructor(n={}){super();b(this,"kind");b(this,"value");b(this,"options",[]);b(this,"loading",!1);b(this,"error",null);b(this,"ready",!1);b(this,"cfg");b(this,"depUnsubs",[]);b(this,"seq",0);this.cfg=n,this.kind=n.kind,this.value=n.value??"";for(let r of n.dependsOn??[]){let o=r.value;this.depUnsubs.push(r.subscribe(()=>{r.value!==o&&(o=r.value,this.cfg.load&&this.load())}))}n.load&&(n.autoLoad??!0)&&this.load()}async load(){if(!this.cfg.load)return;let n=++this.seq;this.loading=!0,this.error=null,this.emit();try{let r={},o=await q("field",()=>this.cfg.load(),r);if(n!==this.seq)return;this.options=this.cfg.options?this.cfg.options(o):Oe(o),this.ready=!0,this.options.length===0&&T({kind:"options_empty",surface:"field",tool:r.tool});let a=this.value==null?"":String(this.value);this.options.length&&(a===""||!this.options.some(i=>String(i.value)===a))&&(this.value=this.options[0].value)}catch(r){if(n!==this.seq)return;this.options=[],this.error=D(r)}finally{n===this.seq&&(this.loading=!1,this.emit())}}setValue(n){this.value=n;let r=this.validate();this.error=r?{message:r,unavailable:!1}:null,this.emit()}validate(){return this.cfg.validate?this.cfg.validate(this.value):null}get valid(){return this.validate()==null}reset(){this.value=this.cfg.value??"",this.error=null,this.emit()}dispose(){for(let n of this.depUnsubs)n();this.depUnsubs=[]}};function Pe(e){if(!e||typeof e!="object")return null;let t=e;if(t.error!==!0)return null;let n=typeof t.message=="string"&&t.message?t.message:"tool call failed",r=typeof t.hint=="string"&&t.hint?` \\u2014 ${t.hint}`:"";return`${n}${r}`}var v=class extends I{constructor(n){super();b(this,"loading",!1);b(this,"error",null);b(this,"lastResult",null);b(this,"cfg");this.cfg=n}async run(){if(this.loading)return;for(let o of this.cfg.fields??[]){let a=o.validate();if(a!=null){this.error={message:a,unavailable:!1},this.emit(),T({kind:"action_blocked",surface:"action",tool:this.cfg.tool});return}}if(this.cfg.confirm){if(typeof globalThis.confirm!="function"){this.error={message:"This action needs confirmation, which this page cannot show.",unavailable:!1},this.emit(),T({kind:"action_blocked",surface:"action",tool:this.cfg.tool});return}if(!globalThis.confirm(this.cfg.confirm))return}this.loading=!0,this.error=null,this.emit();let n;try{let o=typeof this.cfg.args=="function"?this.cfg.args():this.cfg.args??{};n=await q("action",()=>p(this.cfg.tool,o))}catch(o){this.error=D(o),this.loading=!1,this.emit(),this.cfg.onError?.(this.error);return}let r=Pe(n)??this.cfg.checkResult?.(n)??null;if(r!=null){this.error={message:r,unavailable:!1},this.loading=!1,this.emit();let o=n&&typeof n=="object"?n.code:void 0;T({kind:"result_rejected",surface:"action",tool:this.cfg.tool,...typeof o=="string"&&o?{code:o}:{}}),this.cfg.onError?.(this.error);return}return this.lastResult=n,this.loading=!1,this.emit(),this.cfg.onSuccess?.(n),n}reset(){this.error=null,this.lastResult=null,this.emit()}},x=class extends I{constructor(n){super();b(this,"data",null);b(this,"loading",!1);b(this,"refreshing",!1);b(this,"error",null);b(this,"done",!1);b(this,"cfg");b(this,"timer",null);b(this,"seq",0);this.cfg=n,(n.autoLoad??!0)&&this.load()}async load(){this.clearTimer();let n=++this.seq;this.data==null?this.loading=!0:this.refreshing=!0,this.error=null,this.emit();try{let o=await q("resource",()=>this.cfg.load());if(n!==this.seq)return;this.data=o,this.done=this.cfg.until?this.cfg.until(o):!0,this.cfg.pollEvery&&!this.done&&(this.timer=setTimeout(()=>void this.load(),this.cfg.pollEvery))}catch(o){if(n!==this.seq)return;this.error=D(o)}finally{n===this.seq&&(this.loading=!1,this.refreshing=!1,this.emit())}}refresh(){return this.load()}stop(){this.clearTimer()}clearTimer(){this.timer&&(clearTimeout(this.timer),this.timer=null)}},R=class extends I{constructor(n){super();b(this,"items",[]);b(this,"page",0);b(this,"pageSize");b(this,"total",0);b(this,"loading",!1);b(this,"error",null);b(this,"cfg");b(this,"seq",0);this.cfg=n,this.pageSize=n.pageSize??20,(n.autoLoad??!0)&&this.loadPage(0)}async loadPage(n){let r=++this.seq;this.loading=!0,this.error=null,this.emit();try{let o=await q("list",()=>this.cfg.load({page:n,pageSize:this.pageSize}));if(r!==this.seq)return;this.items=o.items??[],this.total=o.total??this.items.length,this.page=n}catch(o){if(r!==this.seq)return;this.error=D(o)}finally{r===this.seq&&(this.loading=!1,this.emit())}}next(){return this.loadPage(this.page+1)}prev(){return this.loadPage(Math.max(0,this.page-1))}get hasMore(){return(this.page+1)*this.pageSize<this.total}};function Ne(e,t){let n=t.error?.unavailable?"unavailable":t.loading?"loading":t.error?"error":"ready";e.setAttribute("data-lb-state",n),t.error?e.setAttribute("data-lb-error",t.error.message):e.removeAttribute("data-lb-error")}function Me(e,t){let n=()=>t.setValue(e.value);e.addEventListener("change",n);let r=t.subscribe(()=>{Ne(e,t),e.disabled=t.loading,e.innerHTML="";for(let o of t.options){let a=document.createElement("option");a.value=String(o.value),a.textContent=o.label,e.appendChild(a)}e.value=t.value==null?"":String(t.value)});return()=>{e.removeEventListener("change",n),r()}}function ze(e,t){let n=e.type==="checkbox",r=e.tagName==="SELECT"?"change":"input",o=()=>t.setValue(n?e.checked:e.value);e.addEventListener(r,o);let a=t.subscribe(()=>{if(n)e.checked=!!t.value;else{let i=t.value==null?"":String(t.value);e.value!==i&&(e.value=i)}e.setAttribute("data-lb-state",t.error?"error":"ready"),t.error?e.setAttribute("data-lb-error",t.error.message):e.removeAttribute("data-lb-error")});return()=>{e.removeEventListener(r,o),a()}}function qe(e,t){let n=a=>{a.preventDefault(),t.run()};e.addEventListener("click",n);let r,o=t.subscribe(()=>{let a=t.error?.unavailable?"unavailable":t.loading?"loading":t.error?"error":t.lastResult!=null?"success":"ready";e.setAttribute("data-lb-state",a),"disabled"in e&&(e.disabled=t.loading),e.setAttribute("aria-busy",String(t.loading)),t.error?e.setAttribute("data-lb-error",t.error.message):e.removeAttribute("data-lb-error"),r&&clearTimeout(r),a==="success"&&(r=setTimeout(()=>{!t.loading&&!t.error&&e.setAttribute("data-lb-state","ready")},1600))});return()=>{e.removeEventListener("click",n),o(),r&&clearTimeout(r)}}var $=["STILL_CHASING","COULD_NOT_REACH_STILL_TRYING","INTEREST_VALIDATED_OR_MEETING_PLANED","NOT_INTERESTED_LOST"],H=[{value:"",label:"Default ranking"},{value:"SCORE:DESC",label:"Score \\u2193"},{value:"SCORE:ASC",label:"Score \\u2191"},{value:"NAME:ASC",label:"Name A\\u2192Z"},{value:"NAME:DESC",label:"Name Z\\u2192A"},{value:"SIZE:DESC",label:"Size \\u2193"},{value:"SIZE:ASC",label:"Size \\u2191"},{value:"SECTOR:ASC",label:"Sector A\\u2192Z"},{value:"STATUS:ASC",label:"Status A\\u2192Z"},{value:"CONTACT_COUNT:DESC",label:"Contacts \\u2193"},{value:"LAST_PROSPECTING_ACTION_AT:DESC",label:"Last action \\u2193"},{value:"LAST_PROSPECTING_ACTION_AT:ASC",label:"Last action \\u2191"},{value:"EPILOGUE_STATUS_SET_AT:DESC",label:"Outcome set \\u2193"},{value:"LIKED:DESC",label:"Liked first"},{value:"DISLIKED:DESC",label:"Disliked first"}];function De(e){let t=String(e??"").trim().toUpperCase(),n=H.some(r=>r.value===t);return new S({kind:"select",value:n?t:"",load:async()=>H.slice()})}var z=[{value:"WANTED",label:"Wanted"},{value:"WON",label:"Won"},{value:"LOST",label:"Lost"},{value:"UNWANTED",label:"Unwanted"}],Fe={value:"",label:"Pick a status"};function le(e){let t=String(e??"").trim().toUpperCase(),n=z.some(r=>r.value===t);return new S({kind:"select",value:n?t:"",validate:r=>String(r??"")===""?"Pick a status":null,load:async()=>n?z.slice():[Fe,...z]})}function se(e){let t=()=>{let n=typeof e.leadIds=="function"?e.leadIds():e.leadIds;return Array.isArray(n)?n:e.leadId?[e.leadId]:[]};return new v({tool:"leadbay_set_lead_status",fields:e.date?[e.status,e.date]:[e.status],confirm:e.confirm,args:()=>({lead_ids:t(),status:e.status.value,...e.date&&e.date.value?{status_date:e.date.value}:{},...e.ask?{_triggered_by:e.ask}:{}}),checkResult:n=>{let r=n?.failed;if(!Array.isArray(r)||r.length===0)return null;let o=t().length,a=r[0]?.message??"write rejected";return r.length===o?`Status not applied: ${a}`:`${r.length} of ${o} leads failed: ${a}`}})}function je(e){return new S({kind:"select",load:()=>p("leadbay_list_campaigns",{_triggered_by:e}),options:t=>(t?.campaigns??[]).map(r=>{let o=r?.campaign??r;return o?.id?{value:o.id,label:o.name??o.ai_generated_name??String(o.id)}:null}).filter(r=>r!=null)})}function ce(e){return new v({tool:"leadbay_report_outreach",fields:e.note?[e.note]:[],args:()=>({lead_id:e.leadId,...e.status?{epilogue_status:e.status.value}:{},note:e.note?e.note.value:"",verification:{source:"user_confirmed",ref:e.ref??"logged from artifact"},_triggered_by:e.ask})})}function Ue(e){return new v({tool:"leadbay_add_note",fields:[e.note],args:()=>({leadId:e.leadId,note:e.note.value})})}function de(e){return new v({tool:"leadbay_like_lead",args:{lead_id:e}})}function ue(e){return new v({tool:"leadbay_dislike_lead",args:{lead_id:e}})}function he(e){let t=e??{},n=t.ai_agent_lead_score;if(typeof n=="number"&&n>0)return"Requalify";let r=t.qualification_summary?.answered;return typeof r=="number"&&r>0?"Requalify":"Qualify"}function ge(e){let t=()=>{let o=typeof e.leadIds=="function"?e.leadIds():e.leadIds;return Array.isArray(o)?o:e.leadId?[e.leadId]:[]},n=0,r=new v({tool:"leadbay_bulk_qualify_leads",confirm:e.confirm,args:()=>{let o=t();return n=o.length,{leadIds:o,wait_for_completion:!1,...e.ask?{_triggered_by:e.ask}:{}}},checkResult:o=>{let a=o??{},i=Array.isArray(a.failed)?a.failed:[],l=n;if(i.length>0){let u=i[0]?.error??"launch rejected";return i.length>=l?`Qualification did not start: ${u}`:`${i.length} of ${l} leads did not start: ${u}`}if(a.quota_exceeded){let u=a.launched_count??0;return u>0?`Quota reached \\u2014 ${u} of ${l} launched, the rest were not started.`:"Quota reached \\u2014 no leads were queued."}return null}});return Object.defineProperty(r,"label",{enumerable:!0,get:()=>(typeof e.scored=="function"?e.scored():e.scored)?"Requalify":"Qualify"}),r}function $e(e,t,n=15e3){return new x({pollEvery:n,load:()=>p("leadbay_qualify_status",{...e?.notification_id?{notification_id:e.notification_id}:{},...e?.lead_ids?.length?{lead_ids:e.lead_ids}:{},...typeof e?.lens_id=="number"?{lens_id:e.lens_id}:{},...t?{_triggered_by:t}:{}}),until:r=>{let o=r??{};return Array.isArray(o.still_running)?o.still_running.length===0:o.status!=null&&o.status!=="running"}})}function He(e,t){return new x({autoLoad:!1,load:()=>p("leadbay_account_history",{leadId:e,_triggered_by:t})})}function Be(e,t){return new x({autoLoad:!1,load:()=>p("leadbay_research_lead_by_id",{leadId:e,_triggered_by:t})})}var B=new Map;function be(e={}){let t=e.lang??"",n=B.get(t);return n||(n=(async()=>{try{let r=await p("leadbay_list_sectors",{...e.lang?{lang:e.lang}:{}}),o=Array.isArray(r)?r:Array.isArray(r?.sectors)?r.sectors:[],a={};for(let i of o){let l=i??{};l.id!=null&&typeof l.label=="string"&&l.label&&(a[String(l.id)]=l.label)}return a}catch{return{}}})(),B.set(t,n)),n}function fe(e,t={}){let n=e??{},r=i=>typeof i=="string"&&i.trim()&&i.trim()!=="null"?i.trim():void 0,o=n.sector_id!=null?t[String(n.sector_id)]:void 0,a=Array.isArray(n.phone_numbers)?n.phone_numbers:[];return{summary:r(n.short_description)??r(n.description)??o,sector:o,phone:a.map(r).find(Boolean),email:r(n.email)}}function Ge(e){let t=()=>{let a=e.kind;return typeof a=="string"?a:typeof a=="function"?a():String(a?.value??"followups")||"followups"},n=()=>{let a=e.campaignId,i=typeof a=="string"?a:a?.value;return i?String(i):void 0},r=()=>typeof e.order=="string"?e.order:String(e.order?.value??""),o=new R({pageSize:e.pageSize??20,load:async({page:a,pageSize:i})=>{let l=t(),u;if(l==="campaign"){let d=n();if(!d)return{items:[],total:0};u=await p("leadbay_campaign_call_sheet",{campaign_id:d,page:a,count:i,_triggered_by:e.ask})}else l==="discover"?u=await p("leadbay_pull_leads",{page:a,count:i,...e.lensId?{lensId:e.lensId}:{},...r()?{order:r()}:{},_triggered_by:e.ask}):u=await p("leadbay_pull_followups",{page:a,count:i,...e.city?{city:e.city}:{},...r()?{order:r()}:{},_triggered_by:e.ask});let c=u??{},s=c.leads??c.items??[];return{items:s,total:c.pagination?.total??c.total_leads??s.length}}});return Object.assign(o,{leadUrl:a=>{let i=a??{},l=encodeURIComponent(String(i.id??"")),u=t();if(u==="campaign"){let s=n();if(s)return`https://leadbay.app/app/campaign?campaign=${encodeURIComponent(s)}&lead=${l}`}return`https://leadbay.app/app/${u==="discover"||i.in_monitor===!1?"discover":"monitor"}?lead=${l}`}})}function Ke(e){let t=e?.location?.pos;if(!Array.isArray(t)||t.length<2)return null;let[n,r]=t;return typeof n!="number"||typeof r!="number"||!Number.isFinite(n)||!Number.isFinite(r)||n===0&&r===0||n<-90||n>90||r<-180||r>180?null:[n,r]}function W(e,t){let n=Math.PI/180,r=(t[0]-e[0])*n,o=(t[1]-e[1])*n,a=Math.sin(r/2)**2+Math.cos(e[0]*n)*Math.cos(t[0]*n)*Math.sin(o/2)**2;return 6371*2*Math.atan2(Math.sqrt(a),Math.sqrt(1-a))}var me=11;function Ve(e){let t=e.filter(a=>Array.isArray(a?.pos)&&a.pos.length===2);if(t.length===0)return null;let n=t.slice(0,me),r=n.map(a=>a.pos.join(",")),o=new URLSearchParams({api:"1",travelmode:"driving"});return r.length===1?o.set("destination",r[0]):(o.set("origin",r[0]),o.set("destination",r[r.length-1]),r.length>2&&o.set("waypoints",r.slice(1,-1).join("|"))),{url:`https://www.google.com/maps/dir/?${o.toString()}`,used:n.length,truncated:t.length-n.length}}function We(e){let t=0;for(let n=1;n<e.length;n++)t+=W(e[n-1].pos,e[n].pos);return t}function Qe(e,t){let n=e.slice();if(n.length<=2)return n;let r=[],o=t??n[0].pos;for(;n.length;){let a=0,i=1/0;for(let u=0;u<n.length;u++){let c=W(o,n[u].pos);c<i&&(i=c,a=u)}let[l]=n.splice(a,1);r.push(l),o=l.pos}return r}function Ye(e){let t=le(e.currentStatus),n=new S({kind:"select",value:$[0],load:async()=>$.map(i=>({value:i,label:pe[i]??i}))}),r=new S({validate:i=>String(i??"").trim()?null:"Add a note before logging"}),o=new x({autoLoad:!1,load:async()=>{let i=await p("leadbay_research_lead_by_id",{leadId:e.leadId,_triggered_by:e.ask}),l=Array.isArray(i?.contacts?.reachable)?i.contacts.reachable:[],u=Array.isArray(i?.contacts?.candidates)?i.contacts.candidates:[],c=new Set,s=[];for(let g of[...l,...u]){let h=g?.id??g?.contact_id;h&&c.has(h)||(h&&c.add(h),s.push(g))}let d=i?.engagement?.recommended_contact?.contact_id;return s.map(g=>Je(g,d))}}),a=new x({load:async()=>fe(e.lead,await be())});return{leadId:e.leadId,contacts:o,context:a,status:t,saveStatus:se({leadId:e.leadId,status:t,ask:e.ask}),epilogue:n,note:r,logOutreach:ce({leadId:e.leadId,ask:e.ask,status:n,note:r}),like:de(e.leadId),dislike:ue(e.leadId),qualify:ge({leadId:e.leadId,ask:e.ask,scored:he(e.lead)==="Requalify"})}}function Ze(e){let t=r=>typeof r=="function"?r():r!==!1,n=new S({value:"ok",validate:()=>t(e.email)||t(e.phone)?null:"Pick email, phone, or both."});return new v({tool:"leadbay_enrich_contacts",fields:[n],confirm:e.confirm===""?void 0:e.confirm??"Reveal this contact? It uses enrichment quota.",args:()=>({leadId:e.leadId,contactId:e.contactId,email:t(e.email),phone:t(e.phone),...e.ask?{_triggered_by:e.ask}:{}}),checkResult:r=>{let o=r??{};return o.error?o.message??"Enrichment failed":null},onSuccess:()=>e.onDone?.()})}var pe={STILL_CHASING:"Still chasing",COULD_NOT_REACH_STILL_TRYING:"Could not reach \\u2014 still trying",INTEREST_VALIDATED_OR_MEETING_PLANED:"Interested / meeting planned",NOT_INTERESTED_LOST:"Not interested \\u2014 lost"};function Je(e,t){let n=e??{},r=i=>typeof i=="string"&&i.trim()&&i!=="null"?i.trim():void 0,o=[r(n.first_name),r(n.last_name)].filter(Boolean).join(" ")||r(n.name)||"Unnamed contact",a=r(n.id)??r(n.contact_id);return{contactId:a,name:o,title:r(n.job_title)??r(n.title),email:r(n.email),phone:r(n.phone)??r(n.phone_number)??r((n.phone_numbers??[])[0]),linkedin:r(n.linkedin_page),recommended:n.recommended===!0||t!=null&&a===t,enriched:n.enrichment_done===!0}}function Xe(e){let t=null;return new x({...e.autoLoad!==void 0?{autoLoad:e.autoLoad}:{},pollEvery:e.pollEvery??4e3,until:n=>!!n?.all_done,load:async()=>{if(!t){let n=await p("leadbay_enrich_titles",{...e.leadIds?{leadIds:e.leadIds}:{},titles:e.titles,...e.email!==void 0?{email:e.email}:{},...e.phone!==void 0?{phone:e.phone}:{},...e.confirm!==void 0?{confirm:e.confirm}:{},_triggered_by:e.ask}),r=Array.isArray(n?.lead_ids)?n.lead_ids:[],o=n?.notification_id??null;if(t=o||r.length>0?{notification_id:o,lead_ids:r}:null,!t)return{...n,all_done:!0,no_job:!0}}return p("leadbay_bulk_enrich_status",{...t.notification_id?{notification_id:t.notification_id}:{},...t.lead_ids.length>0?{lead_ids:t.lead_ids}:{},...e.titles?{titles:e.titles}:{},...e.email!==void 0?{email:e.email}:{},...e.phone!==void 0?{phone:e.phone}:{},_triggered_by:e.ask})}})}function et(e){let t=()=>typeof e.order=="string"?e.order:String(e.order?.value??"");return new R({pageSize:e.pageSize??20,load:async({page:n,pageSize:r})=>{let o=await p("leadbay_pull_leads",{page:n,count:r,...e.lensId?{lensId:e.lensId}:{},...t()?{order:t()}:{},_triggered_by:e.ask}),a=o.leads??[];return{items:a,total:o.pagination?.total??a.length}}})}function tt(e){let t=e.source??"followups",n=()=>typeof e.order=="string"?e.order:String(e.order?.value??"");return new R({pageSize:e.pageSize??20,load:async({page:r,pageSize:o})=>{let i=t==="campaign"?await p("leadbay_campaign_call_sheet",{campaign_id:e.campaignId,page:r,count:o,_triggered_by:e.ask}):await p("leadbay_pull_followups",{page:r,count:o,...e.city?{city:e.city}:{},...n()?{order:n()}:{},_triggered_by:e.ask}),l=i.leads??i.items??[];return{items:l,total:i.total_leads??i.pagination?.total??l.length}}})}async function nt(e){let t=await p("leadbay_pull_followups",{count:e.sample??200,filtered:!1,...e.personal===void 0?{}:{personal:e.personal},_triggered_by:e.ask}),n=new Map;for(let o of t.leads??[]){let a=o?.sector_id;if(a==null||a==="")continue;let i=String(a);n.set(i,(n.get(i)??0)+1)}let r=e.sectors??{};return[...n.entries()].map(([o,a])=>{let i=r[o];return{id:o,label:i??`Sector ${o}`,sampled:a,resolved:i!=null}}).sort((o,a)=>a.sampled-o.sampled||o.id.localeCompare(a.id))}async function Q(e){let t=await p("leadbay_pull_followups",{count:1,set_filter:{criteria:e.criteria},...e.city?{city:e.city}:{},...e.cityId?{city_id:e.cityId}:{},...e.personal===void 0?{}:{personal:e.personal},_triggered_by:e.ask}),n=t.active_filters?.criteria??[],r=d=>typeof d?.type=="string"?d.type:null,o=new Set;for(let d of e.criteria){let g=r(d);g&&o.add(g)}(e.city||e.cityId)&&o.add("location_ids");let a=new Set(n.map(r).filter(d=>d!=null)),i=[...o].every(d=>a.has(d)),l=[...a].every(d=>o.has(d)),u=new Set(["location_ids"]),c=(d,g)=>d.filter(h=>r(h)===g).map(h=>JSON.stringify(Object.keys(h).filter(f=>f!=="type").sort().map(f=>[f,h[f]]))).sort().join("|"),s=[...o].every(d=>u.has(d)||c(e.criteria,d)===c(n,d));return{total:k(t.pagination?.total),applied:n,trusted:i&&l&&s}}async function rt(e){let t=[];return e.sectorIds?.length&&t.push({type:"sector_ids",sectors:e.sectorIds,is_excluded:!1}),Q({criteria:t,personal:e.personal,ask:e.ask,city:e.city,cityId:e.cityId})}async function ot(e){let t=[],n=e.buckets.length;for(let r of e.buckets){let o;try{let a=await Q({criteria:r.criterion?[r.criterion]:[],personal:e.personal,ask:e.ask});o={...r,total:a.total,trusted:a.trusted}}catch(a){o={...r,total:0,trusted:!1,error:V(a)}}t.push(o),e.onProgress?.(t.length,n,o)}return t}async function at(e){try{let t=await Q({criteria:[],personal:e.personal,ask:e.ask});return{id:"__all__",label:"Whole book",total:t.total,trusted:t.trusted}}catch(t){return{id:"__all__",label:"Whole book",total:0,trusted:!1,error:V(t)}}}async function it(e){let t=await p("leadbay_pull_followups",{count:e.sample??200,filtered:!1,...e.personal===void 0?{}:{personal:e.personal},_triggered_by:e.ask}),n=new Map;for(let a of t.leads??[]){let i=a?.[e.field];if(i==null||i===""||i==="null")continue;let l=String(i);n.set(l,(n.get(l)??0)+1)}let r=e.labels??{},o=[...n.entries()].map(([a,i])=>({id:a,label:r[a]??`${e.field} ${a}`,sampled:i,...e.criterion?{criterion:e.criterion(a)}:{}})).sort((a,i)=>i.sampled-a.sampled||a.id.localeCompare(i.id));return e.limit!=null?o.slice(0,e.limit):o}function ye(e){let t=e??{},n=l=>typeof l=="string"&&l&&l!=="null"?l:null,r=Array.isArray(t.phone_numbers)?t.phone_numbers:[],o=t.has_phone===!0||r.some(l=>n(l)!=null),a=n(t.email)!=null;return o||a?"reachable":k(t.contacts_count)+k(t.org_contacts_count)>0?"contacts_only":"empty"}async function lt(e){let t=e.sample??200,n=await p("leadbay_pull_followups",{count:t,filtered:!1,...e.personal===void 0?{}:{personal:e.personal},_triggered_by:e.ask}),r=Array.isArray(n.leads)?n.leads:[],o={reachable:0,contacts_only:0,empty:0};for(let i of r)o[ye(i)]++;let a=[["reachable","Callable now"],["contacts_only","Contacts, no channel"],["empty","No contacts"]];return{sampled:r.length,bookTotal:k(n.pagination?.total),rows:a.map(([i,l])=>({id:i,label:l,total:o[i],trusted:!0,sampled:o[i]}))}}function st(e){return new x({load:()=>p("leadbay_team_activity",{weeks:e.weeks??4,_triggered_by:e.ask})})}var ct="http://www.w3.org/2000/svg",E=(e,t)=>{let n=document.createElementNS(ct,e);for(let[r,o]of Object.entries(t))n.setAttribute(r,String(o));return n};function k(e){return typeof e=="number"&&isFinite(e)?e:0}function dt(e,t={}){let n=Array.isArray(e)?e:[];if(n.length===0){let m=document.createElement("div");m.className="lb-empty";let w=document.createElement("div");if(w.className="lb-empty-title",w.textContent=t.emptyTitle??"Nothing in this window",m.appendChild(w),t.emptyHint){let L=document.createElement("div");L.className="lb-empty-hint",L.textContent=t.emptyHint,m.appendChild(L)}return m}let r=t.width??640,o=t.height??160,a=40,i=8,l=12,u=26,c=r-a-i,s=o-l-u,d=Math.max(1,...n.map(m=>k(m.count))),g=m=>n.length===1?a+c/2:a+m/(n.length-1)*c,h=m=>l+s-k(m)/d*s,f=E("svg",{class:"lb-chart",viewBox:`0 0 ${r} ${o}`,preserveAspectRatio:"none",role:"img","aria-label":t.label??`Trend across ${n.length} points, peak ${d}`});for(let m of[0,d]){f.appendChild(E("line",{class:"lb-chart-grid",x1:a,x2:r-i,y1:h(m),y2:h(m)}));let w=E("text",{x:a-6,y:h(m)+4,"text-anchor":"end"});w.textContent=String(m),f.appendChild(w)}let y=n.map((m,w)=>`${g(w)},${h(m.count)}`);f.appendChild(E("path",{class:"lb-chart-area",d:`M${g(0)},${h(0)} L${y.join(" L")} L${g(n.length-1)},${h(0)} Z`})),f.appendChild(E("path",{class:"lb-chart-line",d:`M${y.join(" L")}`})),n.forEach((m,w)=>{f.appendChild(E("circle",{class:"lb-chart-dot",cx:g(w),cy:h(m.count),r:3}))});let _=n.length===1?[[0,"middle"]]:[[0,"start"],[n.length-1,"end"]];for(let[m,w]of _){let L=E("text",{x:g(m),y:o-8,"text-anchor":w});L.textContent=String(n[m].date??"").slice(0,10),f.appendChild(L)}return f}function ut(e){let t=document.createElement("div");t.className="lb-tiles";for(let n of e){let r=document.createElement("div");r.className="lb-tile";let o=document.createElement("span");o.className="lb-tile-label",o.textContent=n.label;let a=document.createElement("span");a.className="lb-tile-value",a.textContent=String(n.value),r.append(o,a),t.appendChild(r)}return t}function ht(e){let{rows:t,columns:n}=e;if(!t||t.length===0){let u=document.createElement("div");u.className="lb-empty";let c=document.createElement("div");if(c.className="lb-empty-title",c.textContent=e.emptyTitle??"Nothing to show",u.appendChild(c),e.emptyHint){let s=document.createElement("div");s.className="lb-empty-hint",s.textContent=e.emptyHint,u.appendChild(s)}return u}let r=e.sortKey??n[0].key,o=e.sortDir??"descending",a=document.createElement("table");a.className="lb-table";let i=()=>{a.textContent="";let u=document.createElement("thead"),c=document.createElement("tr");for(let g of n){let h=document.createElement("th");h.textContent=g.label,g.num&&h.setAttribute("data-num",""),h.setAttribute("aria-sort",g.key===r?o:"none"),h.setAttribute("tabindex","0"),h.setAttribute("role","button");let f=()=>{r===g.key?o=o==="ascending"?"descending":"ascending":(r=g.key,o=g.num?"descending":"ascending"),i(),e.onSort?.(r,o)};h.addEventListener("click",f),h.addEventListener("keydown",y=>{(y.key==="Enter"||y.key===" ")&&(y.preventDefault(),f())}),c.appendChild(h)}u.appendChild(c),a.appendChild(u);let s=t.slice().sort((g,h)=>{let f=g[r],y=h[r];if(typeof f=="string"||typeof y=="string"){let _=String(f??"").localeCompare(String(y??""));return o==="ascending"?_:-_}return o==="ascending"?k(f)-k(y):k(y)-k(f)}),d=document.createElement("tbody");for(let g of s){let h=document.createElement("tr");h.setAttribute("aria-selected","false");for(let f of n){let y=document.createElement("td");f.num&&y.setAttribute("data-num","");let _=f.cell?.(g);_==null?y.textContent=f.num?String(k(g[f.key])):String(g[f.key]??"\\u2014"):typeof _=="string"?y.textContent=_:y.appendChild(_),h.appendChild(y)}d.appendChild(h)}a.appendChild(d)};i();let l=document.createElement("div");return l.style.overflowX="auto",l.appendChild(a),l}var gt={VERSION:G,configure:Le,styles:Ie,call:p,report:T,setTelemetry:Ee,field:e=>new S(e),action:e=>new v(e),resource:e=>new x(e),list:e=>new R(e),bindSelect:Me,bindValue:ze,bindAction:qe,sparkline:dt,tiles:ut,leaderboard:ht,campaigns:je,segmentCount:rt,portfolioSectors:nt,coverage:ot,coverageBuckets:it,coverageTotal:at,reachCoverage:lt,leadReach:ye,outreach:ce,note:Ue,like:de,dislike:ue,qualify:ge,qualifyLabel:he,qualifyStatus:$e,leadStatus:le,setStatus:se,relanceRow:Ye,enrichContact:Ze,sectorLabels:be,leadContext:fe,leadPos:Ke,distanceKm:W,routeUrl:Ve,routeDistanceKm:We,orderByProximity:Qe,GOOGLE_MAPS_STOP_LIMIT:me,EPILOGUE_LABELS:pe,sortOrder:De,leadHistory:He,leadProfile:Be,enrichment:Xe,callList:tt,leadList:et,leadSource:Ge,teamActivity:st,EPILOGUE_STATUSES:$,LEAD_STATUSES:z,SORT_ORDERS:H};typeof globalThis<"u"&&(globalThis.LeadbayArtifacts=gt);})();</script>\n<script>(function () {\n const lb = window.LeadbayArtifacts\n const SERVER = "Leadbay"\n const PAGE_SIZE = 100\n // Every write this page makes is a rep pressing one of its controls; this is\n // what those calls cite as their trigger. The same for every user, because\n // the page is.\n const ASK = "Route planner board"\n const ROUTE_STORAGE_KEY = "route-planner:stops"\n const GOOGLE_MAPS_STOP_LIMIT = 11\n\n const STATUS_LABELS = { WANTED: "Wanted", WON: "Won", LOST: "Lost", UNWANTED: "Unwanted" }\n const PROSPECTING_ACTIONS = [\n { value: "INTEREST_VALIDATED_OR_MEETING_PLANED", label: "Meeting planned" },\n { value: "STILL_CHASING", label: "Still chasing" },\n { value: "COULD_NOT_REACH_STILL_TRYING", label: "Couldn\'t reach" },\n { value: "NOT_INTERESTED_LOST", label: "Not interested" },\n ]\n const CHANNELS = [\n { value: "In-person visit", label: "In-person visit" },\n { value: "Call", label: "Call" },\n { value: "Email", label: "Email" },\n { value: "Message", label: "Message" },\n ]\n\n const state = {\n leadsById: new Map(),\n leadOrder: [],\n total: 0,\n page: -1,\n loading: false,\n city: "",\n cityId: "",\n activeCriteria: [],\n selectedId: null,\n route: readRoute(),\n workedToday: new Map(),\n }\n\n let mcp = null\n let lastConnectorError = null\n\n lb.configure({ call: callLeadbay, timeoutMs: 60000 })\n lb.styles()\n\n // MAP\n // zoomSnap 0.25: at whole zoom steps fitBounds settles one level short in the\n // half-width pane and leaves France small in a wide margin; quarter steps let\n // it fill the pane, centred.\n const map = L.map("map", { zoomControl: true, attributionControl: true, preferCanvas: false, zoomSnap: 0.25 })\n // A workspace serves exactly ONE country, and every Leadbay result says\n // which one in _meta.region. The map follows it: a US rep planning Austin\n // must not open on France with their pins floating over the Atlantic.\n //\n // Per region: the outline file published beside the page, the bounds the\n // opening view fits (the country\'s main landmass \u2014 Corsica included for\n // France; the lower 48 for the US, so Alaska and Hawaii sit off-screen\n // rather than shrinking the country to a strip), where to centre it, and\n // the outline\'s source.\n const REGIONS = {\n fr: {\n bounds: L.latLngBounds([41.3, -5.2], [51.1, 9.6]), // Corsen\u2192Italy, Bonifacio\u2192Dunkerque\n center: [46.6, 2.5],\n cityExample: "Grenoble",\n attribution: \'Boundaries: <a href="https://github.com/gregoiredavid/france-geojson" target="_blank" rel="noopener">france-geojson</a>\',\n },\n us: {\n bounds: L.latLngBounds([24.5, -124.8], [49.4, -66.9]), // Key West\u2192Maine, San Diego\u2192Washington\n center: [37.0, -95.8],\n cityExample: "Austin",\n attribution: \'Boundaries: <a href="https://www.census.gov/geographies/mapping-files/time-series/geo/cartographic-boundary.html" target="_blank" rel="noopener">US Census Bureau</a>\',\n },\n }\n let region = null\n // Until the first answer says which country this is, hold a neutral view\n // rather than guess France and flash it at a US rep.\n map.setView([40, -30], 2)\n map.attributionControl.setPrefix(false)\n\n // The home view is the whole country, just fitting the pane. The zoom is\n // computed from the pane\'s size, and the host often sizes the artifact\n // frame a beat AFTER the page runs \u2014 so the first fit can be for a\n // near-empty box, and invalidateSize alone never re-zooms. While the map is\n // still on the home view, every resize re-frames it; the first move the\n // rep (or the page) makes ends that.\n let homeView = true\n let framing = false\n function showHome(options) {\n if (!region) return\n framing = true\n homeView = true\n map.setView(region.center, map.getBoundsZoom(region.bounds), options)\n framing = false\n }\n map.on("movestart", () => {\n if (!framing) homeView = false\n })\n\n // Called once, from the first answer. _meta.region is authoritative; a\n // lead\'s own country is the fallback; France is the last resort, as the\n // original tenant.\n function adoptRegion(result, leads) {\n if (region) return\n const fromMeta = result && result._meta && String(result._meta.region || "").toLowerCase()\n const fromLead = (leads.find((lead) => lead && lead.location && lead.location.country) || {}).location\n const key = REGIONS[fromMeta] ? fromMeta : fromLead && String(fromLead.country).toLowerCase() === "us" ? "us" : "fr"\n region = REGIONS[key]\n map.attributionControl.addAttribution(region.attribution)\n const cityInput = document.getElementById("city-input")\n if (cityInput) cityInput.placeholder = "City, e.g. " + region.cityExample\n showHome({ animate: false })\n }\n document.getElementById("fit-leads").addEventListener("click", fitToLeads)\n const markerLayer = L.layerGroup().addTo(map)\n const markersById = new Map()\n let routeLine = null\n\n let declutterFrame = 0\n map.on("moveend", scheduleLabelDeclutter)\n\n const mapFrameObserver = new ResizeObserver(handleMapResize)\n mapFrameObserver.observe(document.getElementById("map"))\n\n document.getElementById("city-form").addEventListener("submit", handleCitySubmit)\n document.getElementById("city-clear").addEventListener("click", handleCityClear)\n\n renderPanel()\n renderRouteLine()\n boot()\n\n // CONNECTOR\n\n async function boot() {\n const claudeRuntime = window.claude\n mcp = claudeRuntime && typeof claudeRuntime.use === "function" ? await claudeRuntime.use("mcp") : null\n if (!mcp) {\n setTally("Leadbay isn\'t available here")\n showNotice(\n "This planner needs the Leadbay connector. Open it in claude.ai with Leadbay connected under Settings \u2192 Connectors.",\n "error",\n )\n return\n }\n loadBasemap()\n const start = readBoardConfig()\n if (start.city) {\n state.city = start.city\n const input = document.getElementById("city-input")\n if (input) input.value = start.city\n }\n loadFollowups({ reset: true })\n }\n\n // The board\'s one editable part, set by the agent that published it. A\n // missing or malformed block is the same as an empty one.\n function readBoardConfig() {\n try {\n const raw = document.getElementById("lb-board-config")\n const parsed = raw ? JSON.parse(raw.textContent || "{}") : {}\n return { city: typeof parsed.city === "string" ? parsed.city.trim() : "" }\n } catch (_) {\n return { city: "" }\n }\n }\n\n async function callLeadbay(tool, args) {\n if (!mcp) {\n const unavailable = new Error("Leadbay isn\'t reachable from this view")\n unavailable.code = "unavailable"\n throw unavailable\n }\n lastConnectorError = null\n try {\n const res = await mcp.callTool(SERVER, tool, { _origin: "artifact", ...args })\n // `payload` is the documented home of the answer (structuredContent, or\n // the text parsed as JSON) \u2014 the same unwrap the kit\'s own bridge does.\n return res && "payload" in res && res.payload !== undefined ? res.payload : res\n } catch (error) {\n lastConnectorError = error\n throw error\n }\n }\n\n function describeConnectorError(error, kind) {\n const code = (lastConnectorError && lastConnectorError.code) || (error && error.code)\n if (code === "needs_reauth") return "Your Leadbay connection has expired. Reconnect Leadbay in claude.ai Settings \u2192 Connectors, then reload."\n if (code === "server_not_connected" || code === "selection_required")\n return "Leadbay isn\'t connected for you. Add Leadbay in claude.ai Settings \u2192 Connectors, then reload."\n if (code === "not_in_manifest") return "Leadbay is turned off for this page. Allow it from the page\'s connector prompt, then reload."\n if (code === "blocked_by_policy" || code === "approval_required") return "Your organization\'s policy blocks this Leadbay action."\n if (code === "timeout" || code === "server_unavailable") {\n // The call timeout (60s here, via lb.configure) is a Promise.race: it\n // abandons the call, it does not cancel it. The request carries on, reaches the backend, and a write\n // usually lands anyway \u2014 which is why a rep sees this message and then\n // finds the action applied in the app. "Try again" would write it twice.\n return kind === "write"\n ? "Leadbay is slow to confirm \u2014 your change was most likely saved. Reload before retrying, or you may log it twice."\n : "Leadbay took too long to answer. Try again in a moment."\n }\n return (error && error.message) || "Leadbay couldn\'t complete the request."\n }\n\n // DATA\n\n async function loadFollowups({ reset, setFilter }) {\n if (state.loading) return\n state.loading = true\n lastConnectorError = null\n const page = reset ? 0 : state.page + 1\n setMapStatus(reset ? "Loading follow-ups\u2026" : "Loading more follow-ups\u2026")\n const args = { count: PAGE_SIZE, page, _triggered_by: ASK }\n if (setFilter) args.set_filter = setFilter\n else if (state.cityId) args.city_id = state.cityId\n else if (state.city) args.city = state.city\n\n try {\n const result = await lb.call("leadbay_followups_map", args)\n if (result && result.status === "ambiguous_locations") {\n adoptRegion(result, [])\n renderAmbiguousLocations(result.location_ambiguities)\n return\n }\n clearNotice()\n const leads = Array.isArray(result && result.leads) ? result.leads : []\n adoptRegion(result, leads)\n state.activeCriteria = (result && result.active_filters && result.active_filters.criteria) || []\n state.total = (result && result.pagination && result.pagination.total) || leads.length\n if (reset) {\n state.leadsById.clear()\n state.leadOrder = []\n }\n for (const lead of leads) {\n if (!lead || !lead.id) continue\n if (!state.leadsById.has(lead.id)) state.leadOrder.push(lead.id)\n state.leadsById.set(lead.id, lead)\n }\n state.page = page\n syncRouteWithLeads()\n renderMarkers()\n if (state.selectedId && !state.leadsById.has(state.selectedId)) state.selectedId = null\n renderPanel()\n } catch (error) {\n showNotice(describeConnectorError(error), "error")\n } finally {\n state.loading = false\n setMapStatus(null)\n renderTally()\n }\n }\n\n // The country outline comes from Leadbay (leadbay_get_basemap), for the\n // workspace\'s own region, so the page needs no file beside it. Without it\n // the pins still work; only the grey country shape is missing.\n async function loadBasemap() {\n try {\n const res = await lb.call("leadbay_get_basemap", {})\n if (!res || !res.geojson) throw new Error("no outline in the answer")\n adoptRegion({ _meta: { region: res.region } }, [])\n // Sent as a JSON string (see leadbay_get_basemap) \u2014 parse it here.\n const outline = typeof res.geojson === "string" ? JSON.parse(res.geojson) : res.geojson\n const basemap = L.geoJSON(outline, { style: { className: "dept" }, interactive: false }).addTo(map)\n basemap.bringToBack()\n } catch (error) {\n console.warn("Basemap unavailable", error)\n }\n }\n\n function readRoute() {\n try {\n const stored = JSON.parse(localStorage.getItem(ROUTE_STORAGE_KEY) || "[]")\n return Array.isArray(stored) ? stored.filter((stop) => stop && stop.id && isValidPosition(stop.pos)) : []\n } catch {\n return []\n }\n }\n\n function saveRoute() {\n try {\n localStorage.setItem(ROUTE_STORAGE_KEY, JSON.stringify(state.route))\n } catch {\n /* per-viewer convenience only */\n }\n }\n\n // Keep saved stops in step with fresh lead data (name, status) when the lead is loaded again.\n function syncRouteWithLeads() {\n for (const stop of state.route) {\n const lead = state.leadsById.get(stop.id)\n if (lead) Object.assign(stop, stopFromLead(lead))\n }\n saveRoute()\n }\n\n // HELPERS\n\n function h(tag, props, ...children) {\n const element = document.createElement(tag)\n for (const [key, value] of Object.entries(props || {})) {\n if (value === undefined || value === null || value === false) continue\n if (key === "class") element.className = value\n else if (key === "text") element.textContent = value\n else if (key.startsWith("on")) element.addEventListener(key.slice(2).toLowerCase(), value)\n else element.setAttribute(key, value === true ? "" : String(value))\n }\n for (const child of children.flat()) {\n if (child === null || child === undefined || child === false) continue\n element.append(child instanceof Node ? child : document.createTextNode(String(child)))\n }\n return element\n }\n\n function svgIcon(paths) {\n const wrapper = document.createElement("span")\n wrapper.setAttribute("aria-hidden", "true")\n wrapper.style.display = "contents"\n wrapper.innerHTML =\n \'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">\' +\n paths +\n "</svg>"\n return wrapper\n }\n\n const ICONS = {\n close: \'<line x1="18" y1="6" x2="6" y2="18"/><line x1="6" y1="6" x2="18" y2="18"/>\',\n up: \'<polyline points="18 15 12 9 6 15"/>\',\n down: \'<polyline points="6 9 12 15 18 9"/>\',\n remove: \'<line x1="5" y1="12" x2="19" y2="12"/>\',\n out: \'<line x1="7" y1="17" x2="17" y2="7"/><polyline points="7 7 17 7 17 17"/>\',\n }\n\n function escapeHtml(text) {\n return String(text).replace(/[&<>"\']/g, (character) => `&#${character.charCodeAt(0)};`)\n }\n\n function realValue(value) {\n return value && value !== "null" ? value : null\n }\n\n function isValidPosition(position) {\n return (\n Array.isArray(position) &&\n position.length >= 2 &&\n Number.isFinite(position[0]) &&\n Number.isFinite(position[1]) &&\n !(position[0] === 0 && position[1] === 0)\n )\n }\n\n function leadPosition(lead) {\n const position = lead && lead.location && lead.location.pos\n return isValidPosition(position) ? [position[0], position[1]] : null\n }\n\n function leadStatus(lead) {\n const status = String((lead && lead.state && lead.state.status) || "").toUpperCase()\n return STATUS_LABELS[status] ? status : "DEFAULT"\n }\n\n // Today\'s prospecting actions as the button values ("STILL_CHASING"...).\n // The field is absent on a lead nobody has actioned \u2014 that is an empty set.\n function todaysActions(lead) {\n const list = lead && Array.isArray(lead.epilogue_today_statuses) ? lead.epilogue_today_statuses : []\n return new Set(list.map((entry) => String(entry.type || "").replace(/^EPILOGUE_/, "")))\n }\n\n // The most recent action ever set, for the "Last:" line only. Not a\n // selection: a deselect does not clear it.\n function currentEpilogue(lead) {\n const raw = lead && lead.epilogue_status\n return typeof raw === "string" && raw ? raw.replace(/^EPILOGUE_/, "") : null\n }\n\n function shortDate(iso) {\n const date = new Date(iso)\n return Number.isNaN(date.getTime()) ? "" : date.toLocaleDateString(undefined, { day: "numeric", month: "short" })\n }\n\n function leadPlace(lead) {\n const location = (lead && lead.location) || {}\n return [realValue(location.city), realValue(location.state)].filter(Boolean).join(", ")\n }\n\n function leadSize(lead) {\n const size = lead && lead.size\n if (!size || (!size.min && !size.max)) return null\n if (size.min && size.max) return `${size.min}\u2013${size.max} employees`\n return `${size.min || size.max}+ employees`\n }\n\n function isToday(isoDate) {\n if (!isoDate) return false\n const date = new Date(isoDate)\n const now = new Date()\n return date.getFullYear() === now.getFullYear() && date.getMonth() === now.getMonth() && date.getDate() === now.getDate()\n }\n\n function workedTodayLabel(lead) {\n const sessionAction = state.workedToday.get(lead.id)\n if (sessionAction) return sessionAction\n const todayStatuses = Array.isArray(lead.epilogue_today_statuses) ? lead.epilogue_today_statuses : []\n if (todayStatuses.length) {\n const latestType = String(todayStatuses[todayStatuses.length - 1].type || "").replace(/^EPILOGUE_/, "")\n const known = PROSPECTING_ACTIONS.find((action) => action.value === latestType)\n return known ? known.label : "Worked today"\n }\n if (isToday(lead.last_prospecting_action_at)) return "Worked today"\n return null\n }\n\n function distanceKm(from, to) {\n const radians = Math.PI / 180\n const deltaLat = (to[0] - from[0]) * radians\n const deltaLng = (to[1] - from[1]) * radians\n const haversine =\n Math.sin(deltaLat / 2) ** 2 + Math.cos(from[0] * radians) * Math.cos(to[0] * radians) * Math.sin(deltaLng / 2) ** 2\n return 6371 * 2 * Math.atan2(Math.sqrt(haversine), Math.sqrt(1 - haversine))\n }\n\n function formatKm(kilometres) {\n return kilometres < 10 ? `${kilometres.toFixed(1)} km` : `${Math.round(kilometres)} km`\n }\n\n function leadbayUrl(leadId) {\n return `https://leadbay.app/app/monitor?lead=${encodeURIComponent(leadId)}`\n }\n\n function googleMapsPlaceUrl(lead) {\n const address = realValue(lead.location && lead.location.full)\n const position = leadPosition(lead)\n const query = address ? `${lead.name || ""} ${address}`.trim() : position.join(",")\n return `https://www.google.com/maps/search/?api=1&query=${encodeURIComponent(query)}`\n }\n\n function googleMapsRouteUrl(stops) {\n const usable = stops.slice(0, GOOGLE_MAPS_STOP_LIMIT)\n const coordinates = usable.map((stop) => stop.pos.join(","))\n const params = new URLSearchParams({ api: "1", travelmode: "driving" })\n if (coordinates.length === 1) {\n params.set("destination", coordinates[0])\n } else {\n params.set("origin", coordinates[0])\n params.set("destination", coordinates[coordinates.length - 1])\n if (coordinates.length > 2) params.set("waypoints", coordinates.slice(1, -1).join("|"))\n }\n return `https://www.google.com/maps/dir/?${params.toString()}`\n }\n\n function stopFromLead(lead) {\n return { id: lead.id, name: lead.name || "Unnamed company", place: leadPlace(lead), pos: leadPosition(lead), status: leadStatus(lead) }\n }\n\n function routeIndex(leadId) {\n return state.route.findIndex((stop) => stop.id === leadId)\n }\n\n // CHROME\n\n function setTally(text) {\n document.getElementById("tally").textContent = text\n }\n\n function renderTally() {\n const loaded = state.leadOrder.length\n if (!loaded && state.page < 0) return\n const unmapped = state.leadOrder.filter((leadId) => !leadPosition(state.leadsById.get(leadId))).length\n const scope = state.city ? ` in ${state.city}` : ""\n const unmappedText = unmapped ? ` \xB7 ${unmapped} without an address on the map` : ""\n setTally(`${loaded.toLocaleString()} of ${state.total.toLocaleString()} follow-ups${scope}${unmappedText}`)\n document.getElementById("city-clear").hidden = !state.city\n }\n\n function setMapStatus(text) {\n const status = document.getElementById("map-status")\n status.hidden = !text\n if (text) document.getElementById("map-status-text").textContent = text\n }\n\n function showNotice(message, tone, ...extra) {\n const notice = document.getElementById("notice")\n notice.dataset.tone = tone || ""\n notice.replaceChildren(h("span", { text: message }), ...extra)\n }\n\n function clearNotice() {\n document.getElementById("notice").replaceChildren()\n }\n\n function renderAmbiguousLocations(candidates) {\n const options = (Array.isArray(candidates) ? candidates : [])\n .map((candidate) => ({\n id: candidate && (candidate.id ?? candidate.admin_area_id ?? candidate.city_id),\n label: candidate && (candidate.display_name || candidate.name || candidate.label || candidate.full_name),\n }))\n .filter((candidate) => candidate.id !== undefined && candidate.id !== null && candidate.label)\n\n if (!options.length) {\n const hint = region === REGIONS.us ? "Add the state, e.g. \\"Springfield, IL\\"." : "Add the d\xE9partement or region, e.g. \\"Valence, Dr\xF4me\\"."\n showNotice(`Several places match "${state.city}". ${hint}`, "error")\n return\n }\n const buttons = options.map((option) =>\n h("button", { class: "lb-btn", type: "button", text: option.label, onClick: handleAmbiguityPick(option) }),\n )\n showNotice(`Which "${state.city}" do you mean?`, "", ...buttons)\n }\n\n function handleAmbiguityPick(option) {\n return function handlePick() {\n state.cityId = String(option.id)\n state.city = option.label\n clearNotice()\n loadFollowups({ reset: true })\n }\n }\n\n function handleCitySubmit(event) {\n event.preventDefault()\n const city = document.getElementById("city-input").value.trim()\n if (!city) {\n handleCityClear()\n return\n }\n state.city = city\n state.cityId = ""\n state.selectedId = null\n loadFollowups({ reset: true })\n }\n\n // Drop only the location criterion so the rest of the rep\'s Monitor filter survives.\n function handleCityClear() {\n state.city = ""\n state.cityId = ""\n state.selectedId = null\n document.getElementById("city-input").value = ""\n const remainingCriteria = state.activeCriteria.filter((criterion) => criterion && criterion.type !== "location_ids")\n loadFollowups({ reset: true, setFilter: { criteria: remainingCriteria } })\n }\n\n function handleMapResize() {\n // pan:false, so the resize itself does not count as the rep moving away.\n map.invalidateSize({ pan: false })\n if (homeView) showHome({ animate: false })\n scheduleLabelDeclutter()\n }\n\n // LABELS\n\n function scheduleLabelDeclutter() {\n cancelAnimationFrame(declutterFrame)\n declutterFrame = requestAnimationFrame(declutterLabels)\n }\n\n function labelPriority(leadId) {\n if (state.selectedId === leadId) return 0\n return routeIndex(leadId) >= 0 ? 1 : 2\n }\n\n // Show every label that fits; overlapping ones yield to the selected lead, then route stops, then list order.\n function declutterLabels() {\n const mapSize = map.getSize()\n const entries = []\n for (const leadId of state.leadOrder) {\n const marker = markersById.get(leadId)\n const label = marker && marker.getElement() && marker.getElement().querySelector(".pin-label")\n if (label) entries.push({ leadId, marker, label })\n }\n for (const entry of entries) entry.label.dataset.visible = "yes"\n for (const entry of entries) {\n const rect = entry.label.getBoundingClientRect()\n const origin = map.getContainer().getBoundingClientRect()\n entry.box = { left: rect.left - origin.left, top: rect.top - origin.top, right: rect.right - origin.left, bottom: rect.bottom - origin.top }\n }\n entries.sort((first, second) => labelPriority(first.leadId) - labelPriority(second.leadId))\n\n const placed = []\n for (const entry of entries) {\n const box = entry.box\n const onScreen = box.right > 0 && box.bottom > 0 && box.left < mapSize.x && box.top < mapSize.y\n const collides = placed.some(\n (other) => box.left < other.right + 2 && box.right + 2 > other.left && box.top < other.bottom + 1 && box.bottom + 1 > other.top,\n )\n const forced = labelPriority(entry.leadId) < 2\n const visible = onScreen && (forced || !collides)\n entry.label.dataset.visible = visible ? "yes" : "no"\n if (visible) placed.push(box)\n }\n }\n\n // MARKERS\n\n function pinIcon(lead) {\n const stopNumber = routeIndex(lead.id) + 1\n const isSelected = state.selectedId === lead.id\n const size = stopNumber ? 26 : isSelected ? 20 : 16\n const html =\n `<span class="pin" data-status="${leadStatus(lead)}" data-acted="${workedTodayLabel(lead) ? "yes" : "no"}"` +\n ` data-selected="${isSelected ? "yes" : "no"}" data-stop="${stopNumber ? "yes" : "no"}">${stopNumber || ""}</span>` +\n `<span class="pin-label">${escapeHtml(lead.name || "Unnamed company")}</span>`\n return L.divIcon({ className: "pin-wrap", html, iconSize: [size, size], iconAnchor: [size / 2, size / 2] })\n }\n\n function markerZIndex(lead) {\n if (state.selectedId === lead.id) return 1000\n return routeIndex(lead.id) >= 0 ? 500 : 0\n }\n\n function renderMarkers() {\n const seen = new Set()\n for (const leadId of state.leadOrder) {\n const lead = state.leadsById.get(leadId)\n const position = leadPosition(lead)\n if (!position) continue\n seen.add(leadId)\n const existing = markersById.get(leadId)\n if (existing) {\n existing.setIcon(pinIcon(lead))\n existing.setZIndexOffset(markerZIndex(lead))\n continue\n }\n const marker = L.marker(position, {\n icon: pinIcon(lead),\n title: lead.name || "Lead",\n alt: lead.name || "Lead",\n keyboard: true,\n riseOnHover: true,\n zIndexOffset: markerZIndex(lead),\n })\n marker.on("click", handleMarkerClick(leadId))\n marker.addTo(markerLayer)\n markersById.set(leadId, marker)\n }\n for (const [leadId, marker] of markersById) {\n if (!seen.has(leadId)) {\n markerLayer.removeLayer(marker)\n markersById.delete(leadId)\n }\n }\n renderRouteLine()\n scheduleLabelDeclutter()\n }\n\n function handleMarkerClick(leadId) {\n return function handleClick() {\n selectLead(leadId, { fly: false })\n }\n }\n\n function refreshMarker(leadId) {\n const lead = state.leadsById.get(leadId)\n const marker = markersById.get(leadId)\n if (!lead || !marker) return\n marker.setIcon(pinIcon(lead))\n marker.setZIndexOffset(markerZIndex(lead))\n scheduleLabelDeclutter()\n }\n\n function renderRouteLine() {\n const positions = state.route.map((stop) => stop.pos)\n if (routeLine) {\n map.removeLayer(routeLine)\n routeLine = null\n }\n if (positions.length >= 2) {\n routeLine = L.polyline(positions, { className: "route-line", interactive: false }).addTo(map)\n }\n }\n\n // Framing the leads is now something the rep ASKS for, via "Fit to leads".\n // It used to run itself on first load, which meant the board opened on\n // whatever region the book clustered in rather than on France.\n function fitToLeads() {\n const positions = state.leadOrder.map((leadId) => leadPosition(state.leadsById.get(leadId))).filter(Boolean)\n if (!positions.length) {\n showHome()\n return\n }\n map.fitBounds(L.latLngBounds(positions).pad(0.15), { maxZoom: 11 })\n }\n\n // SELECTION\n\n function selectLead(leadId, { fly }) {\n const previous = state.selectedId\n state.selectedId = leadId\n if (previous) refreshMarker(previous)\n refreshMarker(leadId)\n renderPanel()\n const position = leadPosition(state.leadsById.get(leadId))\n if (fly && position) map.flyTo(position, Math.max(map.getZoom(), 11), { duration: prefersReducedMotion() ? 0 : 0.6 })\n }\n\n function prefersReducedMotion() {\n return window.matchMedia && window.matchMedia("(prefers-reduced-motion: reduce)").matches\n }\n\n function handleClosePanel() {\n const previous = state.selectedId\n state.selectedId = null\n if (previous) refreshMarker(previous)\n renderPanel()\n }\n\n // PANEL\n\n function renderPanel() {\n const panel = document.getElementById("panel")\n const lead = state.selectedId && state.leadsById.get(state.selectedId)\n panel.replaceChildren(...(lead ? renderLeadDetail(lead) : renderOverview()))\n panel.scrollTop = 0\n }\n\n function renderOverview() {\n return [renderRouteSection(), renderLeadListSection()]\n }\n\n function renderRouteSection() {\n const stops = state.route\n let totalKm = 0\n for (let index = 1; index < stops.length; index++) totalKm += distanceKm(stops[index - 1].pos, stops[index].pos)\n\n const header = h(\n "div",\n { class: "section" },\n h("h2", { class: "section-title" }, h("span", { text: "Today\'s route" }), h("span", { text: stops.length ? `${stops.length} stops` : "" })),\n )\n if (!stops.length) {\n header.append(h("div", { class: "empty", text: "Click a pin, then Add to route. Stops keep their order here and on the map." }))\n return header\n }\n\n const list = h("div", { class: "rows" })\n stops.forEach((stop, index) => {\n const legKm = index ? distanceKm(stops[index - 1].pos, stop.pos) : null\n list.append(\n h(\n "div",\n { class: "stop" },\n h("span", { class: "stop-num", text: String(index + 1), "aria-hidden": "true" }),\n h(\n "div",\n { class: "row-main" },\n h("button", { class: "stop-name", type: "button", text: stop.name, onClick: handleStopOpen(stop.id), "aria-label": `Stop ${index + 1}: ${stop.name}` }),\n h("span", { class: "row-sub", text: [stop.place, legKm !== null ? `+${formatKm(legKm)}` : "Start"].filter(Boolean).join(" \xB7 ") }),\n ),\n h(\n "div",\n { class: "stop-tools" },\n h("button", { class: "icon-btn", type: "button", title: "Move up", "aria-label": `Move ${stop.name} up`, disabled: index === 0, onClick: handleStopMove(index, -1) }, svgIcon(ICONS.up)),\n h("button", { class: "icon-btn", type: "button", title: "Move down", "aria-label": `Move ${stop.name} down`, disabled: index === stops.length - 1, onClick: handleStopMove(index, 1) }, svgIcon(ICONS.down)),\n h("button", { class: "icon-btn", type: "button", title: "Remove from route", "aria-label": `Remove ${stop.name} from route`, onClick: handleStopRemove(stop.id) }, svgIcon(ICONS.remove)),\n ),\n ),\n )\n })\n\n const overLimit = stops.length > GOOGLE_MAPS_STOP_LIMIT\n header.append(\n list,\n h("div", { class: "summary", text: `${formatKm(totalKm)} as the crow flies${overLimit ? ` \xB7 Google Maps takes the first ${GOOGLE_MAPS_STOP_LIMIT} stops` : ""}` }),\n h(\n "div",\n { class: "actions" },\n h("a", { class: "lb-btn lb-btn-submit", href: googleMapsRouteUrl(stops), target: "_blank", rel: "noopener", text: "Drive it in Google Maps" }),\n stops.length > 2 ? h("button", { class: "lb-btn", type: "button", text: "Shortest order", title: "Reorder by nearest next stop, keeping stop 1 as the start", onClick: handleRouteOptimise }) : null,\n h("button", { class: "lb-btn", type: "button", text: "Clear route", onClick: handleRouteClear }),\n ),\n )\n return header\n }\n\n function renderLeadListSection() {\n const section = h(\n "div",\n { class: "section" },\n h("h2", { class: "section-title" }, h("span", { text: "Follow-ups on the map" }), h("span", { text: state.leadOrder.length ? String(state.leadOrder.length) : "" })),\n )\n if (!state.leadOrder.length) {\n section.append(h("div", { class: "empty", text: state.loading || state.page < 0 ? "Loading your follow-ups\u2026" : "No follow-ups match. Try another city, or All areas." }))\n return section\n }\n const list = h("div", { class: "rows" })\n for (const leadId of state.leadOrder) {\n const lead = state.leadsById.get(leadId)\n const onMap = Boolean(leadPosition(lead))\n const worked = workedTodayLabel(lead)\n const stopNumber = routeIndex(leadId) + 1\n list.append(\n h(\n "button",\n { class: "row-btn", type: "button", onClick: handleLeadRowClick(leadId) },\n h("span", { class: "dot", "data-status": leadStatus(lead), "data-acted": worked ? "yes" : "no", "aria-hidden": "true" }),\n h(\n "span",\n { class: "row-main" },\n h("span", { class: "row-name", text: lead.name || "Unnamed company" }),\n h("span", { class: "row-sub", text: [leadPlace(lead) || "No address", worked].filter(Boolean).join(" \xB7 ") }),\n ),\n h("span", { class: "row-meta", text: stopNumber ? `Stop ${stopNumber}` : onMap ? "" : "Not on map" }),\n ),\n )\n }\n section.append(list)\n if (state.leadOrder.length < state.total) {\n section.append(\n h("button", { class: "lb-btn", type: "button", disabled: state.loading, text: `Load ${Math.min(PAGE_SIZE, state.total - state.leadOrder.length)} more`, onClick: handleLoadMore }),\n )\n }\n return section\n }\n\n function renderLeadDetail(lead) {\n const name = lead.name || "Unnamed company"\n const position = leadPosition(lead)\n const address = realValue(lead.location && lead.location.full)\n const contact = lead.recommended_contact\n const contactName = contact ? [contact.first_name, contact.last_name].filter(Boolean).join(" ") : ""\n const phone = realValue((lead.phone_numbers || [])[0])\n const email = realValue(lead.email)\n const companyChannels = [phone && `\u260E ${phone}`, email && `\u2709 ${email}`].filter(Boolean).join(" \xB7 ")\n\n const chips = h("div", { class: "chips", id: "lead-chips" })\n fillChips(chips, lead)\n\n const head = h(\n "div",\n { class: "section" },\n h(\n "div",\n { class: "panel-head" },\n h("h2", { text: name }),\n h("button", { class: "icon-btn", type: "button", title: "Close", "aria-label": `Close ${name}`, onClick: handleClosePanel }, svgIcon(ICONS.close)),\n ),\n chips,\n h(\n "div",\n { class: "facts" },\n h("span", { class: "address", text: address || leadPlace(lead) || "No address on file" }),\n leadSize(lead) ? h("span", { text: leadSize(lead) }) : null,\n h("span", { text: contactName ? `Contact: ${contactName}${contact.job_title ? " \xB7 " + contact.job_title : ""}` : "No contact yet \u2014 enrich to find one" }),\n h("span", { text: companyChannels ? `Company line: ${companyChannels}` : "No company phone or email \u2014 enrich to look for them" }),\n ),\n h(\n "div",\n { class: "actions" },\n position ? h("button", { class: "lb-btn", type: "button", text: "Locate on map", onClick: handleLocate(lead.id) }) : null,\n position ? renderRouteToggle(lead) : null,\n ),\n h(\n "div",\n { class: "links" },\n position ? h("a", { class: "lb-link-out", href: googleMapsPlaceUrl(lead), target: "_blank", rel: "noopener", "aria-label": `Open ${name} in Google Maps` }, "Google Maps ", svgIcon(ICONS.out)) : null,\n h("a", { class: "lb-link-out", href: leadbayUrl(lead.id), target: "_blank", rel: "noopener", "aria-label": `Open ${name} in Leadbay` }, "Open in Leadbay ", svgIcon(ICONS.out)),\n ),\n )\n\n return [head, renderStatusSection(lead), renderProspectingSection(lead), renderOutreachSection(lead), renderNearbySection(lead)]\n }\n\n function fillChips(container, lead) {\n const status = leadStatus(lead)\n const worked = workedTodayLabel(lead)\n // replaceChildren is NOT h(): its signature is (Node or DOMString)..., so a\n // null argument is stringified into the text node "null" rather than\n // skipped. Filter before passing, never pass a conditional straight in.\n const chips = [h("span", { class: "chip", "data-status": status }, h("i", { "aria-hidden": "true" }), STATUS_LABELS[status] || "No status")]\n if (worked) chips.push(h("span", { class: "chip acted" }, h("i", { "aria-hidden": "true" }), worked))\n container.replaceChildren(...chips)\n }\n\n function refreshLeadViews(leadId) {\n refreshMarker(leadId)\n const lead = state.leadsById.get(leadId)\n const chips = document.getElementById("lead-chips")\n if (chips && state.selectedId === leadId && lead) fillChips(chips, lead)\n const stopIndex = routeIndex(leadId)\n if (stopIndex >= 0 && lead) {\n Object.assign(state.route[stopIndex], stopFromLead(lead))\n saveRoute()\n }\n }\n\n function renderRouteToggle(lead) {\n const inRoute = routeIndex(lead.id) >= 0\n return h("button", {\n class: inRoute ? "lb-btn" : "lb-btn lb-btn-submit",\n type: "button",\n text: inRoute ? `Remove stop ${routeIndex(lead.id) + 1}` : "Add to route",\n onClick: handleRouteToggle(lead.id),\n })\n }\n\n function renderStatusSection(lead) {\n const name = lead.name || "this lead"\n const select = h("select", { class: "lb-select", id: `status-${lead.id}`, "aria-label": `Lead status for ${name}` })\n const message = h("div", { class: "msg", role: "status", "aria-live": "polite" })\n const statusField = lb.leadStatus(leadStatus(lead) === "DEFAULT" ? "" : leadStatus(lead))\n const saveStatus = lb.setStatus({ leadId: lead.id, status: statusField, ask: ASK })\n let appliedResult = null\n\n lb.bindSelect(select, statusField)\n select.addEventListener("change", handleStatusChange)\n saveStatus.subscribe(handleStatusState)\n\n function handleStatusChange() {\n saveStatus.run()\n }\n\n function handleStatusState(action) {\n select.setAttribute("data-lb-state", action.loading ? "loading" : action.error ? "error" : action.lastResult ? "success" : "ready")\n message.dataset.tone = action.error ? "error" : action.lastResult ? "ok" : ""\n if (action.loading) {\n message.textContent = "Saving\u2026"\n return\n }\n if (action.error) {\n message.textContent = describeConnectorError(action.error, "write")\n return\n }\n if (action.lastResult && action.lastResult !== appliedResult) {\n appliedResult = action.lastResult\n lead.state = Object.assign({}, lead.state, { status: statusField.value })\n message.textContent = `Set to ${STATUS_LABELS[statusField.value] || statusField.value} for everyone in your org`\n refreshLeadViews(lead.id)\n }\n }\n\n return h("div", { class: "section" }, h("h3", { class: "section-title", text: "Status" }), select, message)\n }\n\n function renderProspectingSection(lead) {\n // Same model as the web app\'s Prospection cell: the four actions are a\n // MULTI-select over the lead\'s `epilogue_today_statuses`. Several can be\n // on for one day, and each tap turns one on or off on its own. What is\n // selected comes from that list, never from `epilogue_status` \u2014 a\n // deselect takes the type out of today\'s list and leaves epilogue_status\n // untouched, so reading epilogue_status would bring a removed action back\n // on the next open.\n const name = lead.name || "this lead"\n const message = h("div", { class: "msg", role: "status", "aria-live": "polite" })\n const buttons = PROSPECTING_ACTIONS.map((prospectingAction) =>\n h("button", {\n class: "choice",\n type: "button",\n role: "checkbox",\n text: prospectingAction.label,\n "data-value": prospectingAction.value,\n "aria-label": `${prospectingAction.label} for ${name}`,\n onClick: handleProspectingToggle(lead, prospectingAction),\n }),\n )\n const grid = h("div", { class: "choices", role: "group", "aria-label": `Prospecting actions for ${name}` }, buttons)\n // With nothing on today, say what was last set and when \u2014 as the web app\n // does \u2014 so the rep is not left thinking the lead was never worked.\n const last = h("div", { class: "summary" })\n paint()\n\n function paint() {\n const today = todaysActions(lead)\n for (const button of buttons) button.setAttribute("aria-checked", today.has(button.dataset.value) ? "true" : "false")\n const previous = currentEpilogue(lead)\n const option = PROSPECTING_ACTIONS.find((action) => action.value === previous)\n last.textContent = !today.size && option ? `Last: ${option.label}${lead.epilogue_status_set_at ? " \xB7 " + shortDate(lead.epilogue_status_set_at) : ""}` : ""\n last.hidden = !last.textContent\n }\n\n function handleProspectingToggle(targetLead, prospectingAction) {\n return async function handleToggle() {\n const selected = !todaysActions(targetLead).has(prospectingAction.value)\n for (const button of buttons) button.disabled = true\n message.dataset.tone = ""\n message.textContent = "Saving\u2026"\n try {\n await lb.call("leadbay_set_prospecting_action", {\n lead_id: targetLead.id,\n action: prospectingAction.value,\n selected,\n _triggered_by: ASK,\n })\n applyToggle(targetLead, prospectingAction.value, selected)\n message.dataset.tone = "ok"\n message.textContent = selected ? `\u201C${prospectingAction.label}\u201D on` : `\u201C${prospectingAction.label}\u201D off`\n } catch (error) {\n message.dataset.tone = "error"\n // Until the hosted server carries leadbay_set_prospecting_action (the\n // 0.41 release) the toggle cannot run. There is deliberately no\n // fallback through report_outreach: that path waits 60s on a\n // confirmation prompt a page cannot show.\n message.textContent = isToolMissing(error)\n ? "Needs the next Leadbay release \u2014 set it in the web app for now."\n : describeConnectorError(error, "write")\n } finally {\n for (const button of buttons) button.disabled = false\n paint()\n }\n }\n }\n\n return h("div", { class: "section" }, h("h3", { class: "section-title", text: "Prospecting action" }), grid, last, message)\n }\n\n // Mirror the write onto the lead so every view that reads it \u2014 this panel on\n // reopen, the pin\'s ring, the list \u2014 agrees without a reload.\n function applyToggle(lead, value, selected) {\n const type = "EPILOGUE_" + value\n const list = Array.isArray(lead.epilogue_today_statuses) ? lead.epilogue_today_statuses : []\n if (selected) {\n lead.epilogue_today_statuses = list.concat({ type, added_at: new Date().toISOString() })\n lead.epilogue_status = type\n lead.epilogue_status_set_at = new Date().toISOString()\n } else {\n lead.epilogue_today_statuses = list.filter((entry) => entry.type !== type)\n }\n // The session label would otherwise outlive a deselect; let the chip and\n // the ring derive from the lead\'s own data from here on.\n state.workedToday.delete(lead.id)\n refreshLeadViews(lead.id)\n }\n\n // A tool the hosted server does not know yet arrives as a tool error naming\n // it; anything else is a real failure the rep should see.\n function isToolMissing(error) {\n const text = String((error && (error.message || error.code)) || "")\n return /unknown tool|\btool\b[^.]*\bnot found|not_in_manifest|no such tool/i.test(text)\n }\n\n function renderOutreachSection(lead) {\n const name = lead.name || "this lead"\n const channelSelect = h(\n "select",\n { class: "lb-select", id: `channel-${lead.id}`, "aria-label": `Outreach channel for ${name}` },\n CHANNELS.map((channel) => h("option", { value: channel.value, text: channel.label })),\n )\n const noteInput = h("textarea", { class: "lb-input", id: `note-${lead.id}`, placeholder: "What happened? e.g. Met the store manager, wants a demo next week", "aria-label": `Outreach note for ${name}` })\n const submit = h("button", { class: "lb-btn lb-btn-submit", type: "submit", text: "Log outreach" })\n const message = h("div", { class: "msg", role: "status", "aria-live": "polite" })\n const hint = h("div", { class: "summary", text: "Sets no status \u2014 use Prospecting action above for that." })\n const form = h("form", { class: "section", onSubmit: handleOutreachSubmit }, h("h3", { class: "section-title", text: "Log outreach" }), channelSelect, noteInput, submit, hint, message)\n\n function handleOutreachSubmit(event) {\n event.preventDefault()\n const noteText = noteInput.value.trim()\n if (!noteText) {\n message.dataset.tone = "error"\n message.textContent = "Add a short note so your team knows what happened."\n noteInput.focus()\n return\n }\n // A plain note, as the web app\'s note field writes one \u2014 not\n // report_outreach. That tool asks a human to confirm a user_confirmed\n // outreach, and a page cannot show the prompt: the call waited 60s and\n // wrote anyway. It must keep asking, because the server cannot tell a\n // page from an agent that claims to be one; so the page, which the rep\n // is operating directly, uses the web app\'s own path instead. No status\n // here either: the Prospecting action toggles own that.\n const write = lb.note({\n leadId: lead.id,\n note: lb.field({ value: `${channelSelect.value}: ${noteText}` }),\n })\n write.subscribe(handleWriteState)\n write.run()\n\n function handleWriteState(action) {\n submit.disabled = action.loading\n submit.setAttribute("data-lb-state", action.loading ? "loading" : action.error ? "error" : action.lastResult ? "success" : "ready")\n message.dataset.tone = action.error ? "error" : action.lastResult ? "ok" : ""\n if (action.loading) message.textContent = "Logging\u2026"\n else if (action.error) message.textContent = describeConnectorError(action.error, "write")\n else if (action.lastResult) {\n state.workedToday.set(lead.id, `${channelSelect.value} logged`)\n noteInput.value = ""\n message.textContent = `${channelSelect.value} logged on ${name}`\n refreshLeadViews(lead.id)\n }\n }\n }\n\n return form\n }\n\n function renderNearbySection(lead) {\n const origin = leadPosition(lead)\n const section = h("div", { class: "section" }, h("h3", { class: "section-title", text: "Nearby follow-ups" }))\n if (!origin) {\n section.append(h("div", { class: "empty", text: "This lead has no position, so nearby leads can\'t be measured." }))\n return section\n }\n const nearby = state.leadOrder\n .filter((leadId) => leadId !== lead.id)\n .map((leadId) => state.leadsById.get(leadId))\n .map((candidate) => ({ candidate, position: leadPosition(candidate) }))\n .filter((entry) => entry.position)\n .map((entry) => ({ candidate: entry.candidate, kilometres: distanceKm(origin, entry.position) }))\n .sort((first, second) => first.kilometres - second.kilometres)\n .slice(0, 6)\n\n if (!nearby.length) {\n section.append(h("div", { class: "empty", text: "No other loaded follow-ups have a position yet." }))\n return section\n }\n const list = h("div", { class: "rows" })\n for (const entry of nearby) {\n const worked = workedTodayLabel(entry.candidate)\n list.append(\n h(\n "button",\n { class: "row-btn", type: "button", onClick: handleLeadRowClick(entry.candidate.id) },\n h("span", { class: "dot", "data-status": leadStatus(entry.candidate), "data-acted": worked ? "yes" : "no", "aria-hidden": "true" }),\n h("span", { class: "row-main" }, h("span", { class: "row-name", text: entry.candidate.name || "Unnamed company" }), h("span", { class: "row-sub", text: leadPlace(entry.candidate) })),\n h("span", { class: "row-meta", text: formatKm(entry.kilometres) }),\n ),\n )\n }\n section.append(list, h("div", { class: "summary", text: "Straight-line distance, among the follow-ups loaded on the map." }))\n return section\n }\n\n // HANDLERS\n\n function handleLeadRowClick(leadId) {\n return function handleClick() {\n selectLead(leadId, { fly: true })\n }\n }\n\n function handleStopOpen(leadId) {\n return function handleClick() {\n if (state.leadsById.has(leadId)) {\n selectLead(leadId, { fly: true })\n return\n }\n const stop = state.route.find((routeStop) => routeStop.id === leadId)\n if (stop) map.flyTo(stop.pos, Math.max(map.getZoom(), 11))\n }\n }\n\n function handleLocate(leadId) {\n return function handleClick() {\n const position = leadPosition(state.leadsById.get(leadId))\n if (position) map.flyTo(position, 14, { duration: prefersReducedMotion() ? 0 : 0.8 })\n }\n }\n\n function handleRouteToggle(leadId) {\n return function handleClick() {\n const index = routeIndex(leadId)\n if (index >= 0) state.route.splice(index, 1)\n else state.route.push(stopFromLead(state.leadsById.get(leadId)))\n afterRouteChange()\n renderPanel()\n }\n }\n\n function handleStopMove(index, direction) {\n return function handleClick() {\n const target = index + direction\n if (target < 0 || target >= state.route.length) return\n const [moved] = state.route.splice(index, 1)\n state.route.splice(target, 0, moved)\n afterRouteChange()\n renderPanel()\n }\n }\n\n function handleStopRemove(leadId) {\n return function handleClick() {\n const index = routeIndex(leadId)\n if (index >= 0) state.route.splice(index, 1)\n afterRouteChange()\n renderPanel()\n }\n }\n\n // Nearest-next-stop ordering from the first stop: good enough for a day of visits.\n function handleRouteOptimise() {\n const remaining = state.route.slice(1)\n const ordered = [state.route[0]]\n while (remaining.length) {\n const last = ordered[ordered.length - 1]\n let nearestIndex = 0\n for (let index = 1; index < remaining.length; index++) {\n if (distanceKm(last.pos, remaining[index].pos) < distanceKm(last.pos, remaining[nearestIndex].pos)) nearestIndex = index\n }\n ordered.push(remaining.splice(nearestIndex, 1)[0])\n }\n state.route = ordered\n afterRouteChange()\n renderPanel()\n }\n\n function handleRouteClear() {\n state.route = []\n afterRouteChange()\n renderPanel()\n }\n\n function afterRouteChange() {\n saveRoute()\n renderMarkers()\n }\n\n function handleLoadMore() {\n loadFollowups({ reset: false })\n }\n})()</script>\n' }, "triage_board": { "title": "Lead Triage Board", "icon": "list", "description": "Today's leads from your lens as cards you can like, give a status, tick a prospecting action on, note and requalify.", "tools": ["leadbay_pull_leads", "leadbay_like_lead", "leadbay_dislike_lead", "leadbay_set_lead_status", "leadbay_set_prospecting_action", "leadbay_add_note", "leadbay_bulk_qualify_leads", "leadbay_report_artifact_error"], "html": '<title>Lead Triage Board</title>\n<style>\n /* Only what the skin does not ship. Colours are the skin\'s tokens. */\n body { margin: 0; background: var(--color-gray-2); color: var(--lb-fg); font-family: var(--lb-font); }\n .page { max-width: 1180px; margin: 0 auto; padding: 16px; box-sizing: border-box; display: flex; flex-direction: column; gap: 12px; }\n .page-head h1 { margin: 0; font-size: 18px; font-weight: 700; letter-spacing: -0.01em; }\n .page-head p { margin: 2px 0 0; font-size: 13px; color: var(--lb-muted); }\n .deck { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 12px; align-items: start; }\n\n .fit { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }\n .bar { font-size: 14px; letter-spacing: 1px; background: none; padding: 0; color: var(--lb-fg); }\n .verdict { font-size: 12px; font-weight: 600; color: var(--lb-muted); }\n .verdict[data-v="boosted"] { color: var(--color-green-foreground); }\n .verdict[data-v="penalised"] { color: var(--color-red-foreground); }\n .excerpt { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }\n\n /* Prospecting actions: the web app\'s per-action colours (ProspectionCell).\n The foreground is for the dot and the border only \u2014 yellow\'s is too light\n to read as text. */\n .actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }\n .lb-action { font: inherit; font-size: 13px; text-align: start; display: flex; align-items: center; gap: 8px;\n padding: 8px 10px; border-radius: var(--lb-radius-sm); border: 1px solid var(--lb-border);\n background: var(--lb-field); color: var(--lb-fg); cursor: pointer; transition: background-color .12s ease; }\n .lb-action::before { content: ""; flex: none; width: 8px; height: 8px; border-radius: 50%; background: var(--action-fg); }\n .lb-action:hover { background: var(--lb-chip-bg); }\n .lb-action[aria-checked="true"] { background: var(--action-bg); border-color: var(--action-fg); }\n .lb-action[disabled] { opacity: .6; cursor: progress; }\n .lb-action:focus-visible { outline: 2px solid var(--color-blue-foreground); outline-offset: 2px; }\n .lb-action[data-value="STILL_CHASING"] { --action-bg: var(--color-blue-background); --action-fg: var(--color-blue-foreground); }\n .lb-action[data-value="INTEREST_VALIDATED_OR_MEETING_PLANED"] { --action-bg: var(--color-green-background); --action-fg: var(--color-green-foreground); }\n .lb-action[data-value="COULD_NOT_REACH_STILL_TRYING"] { --action-bg: var(--color-yellow-background); --action-fg: var(--color-yellow-foreground); }\n .lb-action[data-value="NOT_INTERESTED_LOST"] { --action-bg: var(--color-red-background); --action-fg: var(--color-red-foreground); }\n @media (prefers-reduced-motion: reduce) { .lb-action { transition: none; } }\n .lb-row .lb-input { flex: 1; min-width: 0; }\n @media (max-width: 420px) { .actions { grid-template-columns: 1fr; } }\n</style>\n<div class="page">\n <header class="page-head">\n <h1>Today\'s leads</h1>\n <p>From your active lens. Like, set a status, tick a prospecting action \u2014 every control writes to Leadbay.</p>\n </header>\n\n <div class="lb-toolbar">\n <span class="lb-tally" id="tally"></span>\n <span class="lb-group">\n <label class="lb-field"><span class="lb-field-label">Taste</span>\n <select class="lb-select" id="f-taste" aria-label="Filter by taste">\n <option value="all">All</option><option value="liked">Liked</option><option value="disliked">Disliked</option><option value="none">Not rated</option>\n </select>\n </label>\n <label class="lb-field"><span class="lb-field-label">Verdict</span>\n <select class="lb-select" id="f-verdict" aria-label="Filter by qualifier verdict">\n <option value="all">All</option><option value="boosted">AI boosted</option><option value="neutral">No adjustment</option><option value="penalised">AI penalised</option>\n </select>\n </label>\n </span>\n <span class="lb-spacer"></span>\n <span class="lb-group">\n <label class="lb-field lb-field-inline"><input type="checkbox" id="select-all"><span class="lb-field-label">Select all</span></label>\n <select class="lb-select" id="bulk-status" aria-label="Status for selected leads"></select>\n <button class="lb-btn lb-btn-submit" id="bulk-apply" type="button">Apply to selected</button>\n </span>\n <div class="lb-msg" id="bulk-msg" role="status" aria-live="polite" style="flex:1 0 100%"></div>\n </div>\n\n <main class="deck" id="deck" data-lb-state="ready"></main>\n\n <div class="lb-pager">\n <button class="lb-btn" id="prev" type="button">Previous</button>\n <button class="lb-btn" id="next" type="button">Next</button>\n <span class="lb-spacer"></span>\n <span class="lb-pager-range" id="range"></span>\n </div>\n</div>\n<script>"use strict";(()=>{var we=Object.defineProperty;var ke=(e,t,n)=>t in e?we(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var b=(e,t,n)=>ke(e,typeof t!="symbol"?t+"":t,n);var Y=`\n:root{\n--color-black:#191919;--color-white:#fff;\n--color-gray-1:#f9f9f9;--color-gray-2:#f0f0f0;--color-gray-3:#e0e0e0;--color-gray-4:#cecece;\n--color-gray-5:#c4c4c4;--color-gray-6:#8d8d8d;--color-gray-7:#787878;--color-gray-8:#646464;\n--color-gray-9:#202020;\n--color-linkedin:#0a66c2;\n--color-blue-background:oklch(0.947 0.029 251);--color-blue-foreground:oklch(0.564 0.181 251);\n--color-green-background:oklch(0.947 0.029 141);--color-green-foreground:oklch(0.564 0.181 141);\n--color-red-background:oklch(0.947 0.029 26);--color-red-foreground:oklch(0.564 0.191 26);\n--color-gold-background:oklch(0.972 0.049 91);--color-gold-foreground:oklch(0.667 0.177 91);\n/* Yellow is the web app\'s "Could not reach" prospecting action. Its\n foreground is light (0.864) by design: the web app uses it for icons and\n borders on the tinted background, never as text on white. */\n--color-yellow-background:oklch(0.972 0.054 91);--color-yellow-foreground:oklch(0.864 0.181 91);\n--color-yellow-border:color-mix(in oklch,var(--color-yellow-foreground),transparent 65%);\n--color-cherry-background:oklch(0.947 0.029 15);--color-cherry-foreground:oklch(0.44 0.146 15);\n/* Purple carries the product\'s "AI" affordance (Qualify / Requalify). The\n border is the foreground at 65% transparency, exactly as the style package\n derives every *-border token. */\n--color-purple-background:oklch(0.947 0.029 288);--color-purple-foreground:oklch(0.464 0.181 288);\n--color-purple-border:color-mix(in oklch,var(--color-purple-foreground),transparent 65%);\n/* Teal carries the qualifier\'s intent tags, as the product\'s taste-profile\n tags do. Border derived at 65% transparency, like every *-border token. */\n--color-teal-background:oklch(0.977 0.019 180);--color-teal-foreground:oklch(0.574 0.182 180);\n--color-teal-border:color-mix(in oklch,var(--color-teal-foreground),transparent 65%);\n--color-red-like:var(--color-cherry-foreground);\n--lb-font:"Nikkei Maru",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;\n/* Concentric: outer = inner + padding (0.625 + 0.875 = 1.5rem). The card\'s\n padding is what closes this equation, so the two move together \\u2014 see\n .lb-card, which pads 0.875rem for exactly this reason. */\n--lb-radius:1.5rem;--lb-radius-sm:0.625rem;--lb-gap:0.75rem;\n--lb-surface:var(--color-gray-1);--lb-border:var(--color-gray-3);\n--lb-fg:var(--color-black);--lb-muted:var(--color-gray-8);--lb-field:var(--color-white);\n/* Chips and shadows need their own aliases: a chip painted with a raw ramp\n value cannot theme, and a shadow tinted with --color-gray-9 is invisible in\n dark because gray-9 IS the dark surface. */\n--lb-chip-bg:var(--color-gray-2);\n--lb-control-border:var(--color-gray-6);\n--lb-shadow:0 0.5rem 1.5rem oklch(0 0 0/.06),0 0.125rem 0.5rem oklch(0 0 0/.04);\ncolor-scheme:light;\n/* macOS renders text heavier than intended. This belongs once on the root,\n never per component \\u2014 an artifact that injects this sheet gets it for free\n instead of each page re-declaring it on its own body. */\n-webkit-font-smoothing:antialiased;\n-moz-osx-font-smoothing:grayscale;\n}\n:root[data-theme=dark],:root[data-lb-theme=dark]{\n--lb-surface:var(--color-gray-9);--lb-border:var(--color-gray-8);\n--lb-fg:var(--color-white);--lb-muted:var(--color-gray-3);\n/* --lb-field must NOT equal --lb-surface: a control needs its own ground or it\n reads as text on the card (was 1.00:1). */\n--lb-field:#2c2c2c;\n--lb-chip-bg:#3b3b3b;\n--lb-control-border:var(--color-gray-6);\n--lb-shadow:0 0.5rem 1.5rem oklch(0 0 0/.5),0 0.125rem 0.5rem oklch(0 0 0/.35);\ncolor-scheme:dark;\n--color-blue-background:oklch(0.30 0.055 251);--color-blue-foreground:oklch(0.80 0.11 251);\n--color-green-background:oklch(0.30 0.055 141);--color-green-foreground:oklch(0.80 0.13 141);\n--color-red-background:oklch(0.30 0.060 26);--color-red-foreground:oklch(0.80 0.11 26);\n--color-gold-background:oklch(0.30 0.055 91);--color-gold-foreground:oklch(0.82 0.13 91);\n--color-yellow-background:oklch(0.30 0.055 91);--color-yellow-foreground:oklch(0.86 0.14 91);\n--color-cherry-background:oklch(0.30 0.055 15);--color-cherry-foreground:oklch(0.82 0.10 15);\n--color-purple-background:oklch(0.30 0.055 288);--color-purple-foreground:oklch(0.82 0.11 288);\n--color-teal-background:oklch(0.30 0.055 180);--color-teal-foreground:oklch(0.82 0.11 180);\n}\n@media(prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-lb-theme=light]){\n--lb-surface:var(--color-gray-9);--lb-border:var(--color-gray-8);\n--lb-fg:var(--color-white);--lb-muted:var(--color-gray-3);\n/* --lb-field must NOT equal --lb-surface: a control needs its own ground or it\n reads as text on the card (was 1.00:1). */\n--lb-field:#2c2c2c;\n--lb-chip-bg:#3b3b3b;\n--lb-control-border:var(--color-gray-6);\n--lb-shadow:0 0.5rem 1.5rem oklch(0 0 0/.5),0 0.125rem 0.5rem oklch(0 0 0/.35);\ncolor-scheme:dark;\n--color-blue-background:oklch(0.30 0.055 251);--color-blue-foreground:oklch(0.80 0.11 251);\n--color-green-background:oklch(0.30 0.055 141);--color-green-foreground:oklch(0.80 0.13 141);\n--color-red-background:oklch(0.30 0.060 26);--color-red-foreground:oklch(0.80 0.11 26);\n--color-gold-background:oklch(0.30 0.055 91);--color-gold-foreground:oklch(0.82 0.13 91);\n--color-yellow-background:oklch(0.30 0.055 91);--color-yellow-foreground:oklch(0.86 0.14 91);\n--color-cherry-background:oklch(0.30 0.055 15);--color-cherry-foreground:oklch(0.82 0.10 15);\n--color-purple-background:oklch(0.30 0.055 288);--color-purple-foreground:oklch(0.82 0.11 288);\n--color-teal-background:oklch(0.30 0.055 180);--color-teal-foreground:oklch(0.82 0.11 180);\n}}\n/* 0.875rem padding is not arbitrary: it closes the concentric equation with\n --lb-radius (1.5rem) and --lb-radius-sm (0.625rem). Changing it without\n moving --lb-radius leaves a control\'s arc running wider than the card\'s in\n the corner. */\n.lb-card{display:grid;gap:var(--lb-gap);padding:0.875rem;\nbackground-color:var(--lb-surface);border:1px solid var(--lb-border);\nborder-radius:var(--lb-radius);corner-shape:squircle;color:var(--lb-fg);\nfont-family:var(--lb-font);\nbox-shadow:var(--lb-shadow)}\n/* \\u2500\\u2500 Card layout \\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\n A lead card is a stack of SECTIONS, each a titled block (Fit, Intent tags,\n Data, Status, Outreach). One wrapper owns the rhythm \\u2014 16px between\n sections, 8px between the items inside one \\u2014 so a section can be added,\n removed or reordered without touching spacing, and no margin can collapse.\n Every artifact that builds cards gets the same geometry from here rather\n than hand-rolling it. */\n.lb-sections{display:flex;flex-direction:column;gap:1rem}\n.lb-section{display:grid;gap:0.5rem}\n/* A section title: black, uppercase, tracked. It names the block below it, so\n it must sit at SECTION level \\u2014 nested inside a row it stops being a peer of\n the other titles and the card loses its scan order. */\n.lb-sec-title{font-size:0.75rem;font-weight:700;letter-spacing:.08em;\ntext-transform:uppercase;color:var(--lb-fg);line-height:1.4;\ntext-wrap:balance}\n/* Header row: leading control (a bulk checkbox), the title, then trailing\n controls (taste) pushed to the far edge. */\n.lb-card-top{display:flex;align-items:center;gap:0.625rem;flex-wrap:wrap}\n.lb-card-top>.lb-group{flex:0 0 auto;margin-inline-start:auto}\n.lb-card-top>input[type=checkbox]{flex:0 0 auto;width:1rem;height:1rem;margin:0}\n/* The company name. Bold and underlined so it reads as the card\'s subject and\n as a link, without competing with the uppercase section titles. */\n/* text-wrap:balance keeps a two-line company name from breaking one-word-over;\n the underline takes its position and thickness from the font\'s own metrics\n rather than wherever the browser puts them, and skip-ink clears descenders. */\n.lb-lead-title{flex:1 1 9rem;min-width:0;font-size:0.9375rem;font-weight:700;\nline-height:1.3;color:var(--lb-fg);text-wrap:balance;text-decoration:underline;\ntext-underline-position:from-font;text-decoration-thickness:from-font;\ntext-underline-offset:2px;text-decoration-skip-ink:auto;overflow-wrap:break-word}\n.lb-lead-title a{color:inherit;text-decoration:inherit}\n/* Controls in a section stack, each spanning it, so every control on the card\n shares one leading edge and one width. Three different widths across a row\n read as three unrelated things. */\n.lb-section>.lb-select,.lb-section>.lb-input,\n.lb-stack>.lb-select,.lb-stack>.lb-input,.lb-stack>.lb-btn{width:100%;min-width:0}\n/* Footer: a leading action, a spacer, a trailing escape hatch. */\n.lb-card-foot{display:flex;align-items:center;gap:0.625rem;\npadding-block-start:0.875rem;border-block-start:1px solid var(--lb-border)}\n.lb-card-foot .lb-spacer{flex:1 1 auto}\n/* \\u2500\\u2500 Toolbar \\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\n The bar above a deck of cards: a tally, the controls that narrow what is\n shown, and the controls that act on a selection. Those are three different\n jobs, so they are three groups \\u2014 0.5rem within one, 1.5rem between \\u2014 rather\n than one flat row where "apply to selected" reads as another filter.\n Concentric: it pads 0.75rem around controls that round at 0.625rem, so it\n rounds at 1.375rem. */\n.lb-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:0.75rem 1.5rem;\npadding:0.75rem 1rem;background-color:var(--lb-surface);\nborder:1px solid var(--lb-border);border-radius:1.375rem;corner-shape:squircle;\nfont-family:var(--lb-font);color:var(--lb-fg)}\n.lb-toolbar .lb-group{gap:0.5rem}\n/* A labelled control stacks: caption above, control below, as a card section\n does. One label pattern across the whole artifact. */\n.lb-field{display:inline-flex;flex-direction:column;align-items:flex-start;\ngap:0.25rem;font-size:0.8125rem;line-height:1.4;color:var(--lb-muted);\nwhite-space:nowrap}\n/* A checkbox belongs BESIDE its words \\u2014 under a caption it reads as orphaned. */\n.lb-field-inline{flex-direction:row;align-items:center;gap:0.5rem}\n/* A control\'s caption is not body copy: it names the control, so it takes the\n same treatment as a card\'s section title. */\n.lb-field-label{font-size:0.75rem;font-weight:700;letter-spacing:.08em;\ntext-transform:uppercase;color:var(--lb-fg)}\n/* A labelled field sizes to its own content, so width:100% on the control\n inside only fills whatever the field already became. Two fields side by side\n still come out unequal \\u2014 they have no shared reference to be equal against.\n Give the FIELD the basis: flex:1 1 9rem makes every labelled field claim the\n same share of the row, so a select and a text input beside it match. */\n.lb-field{flex:1 1 9rem;min-width:9rem;max-width:16rem}\n.lb-field>.lb-select,.lb-field>.lb-input{width:100%;min-width:0}\n/* An inline field holds a checkbox, not a sized control: natural width, no floor. */\n.lb-field-inline{flex:0 0 auto;min-width:0;max-width:none}\n.lb-field-inline>*{min-width:0;width:auto;flex:0 0 auto}\n/* Readouts sit on the control baseline, not the caption\'s. */\n.lb-toolbar .lb-tally,.lb-toolbar .lb-status{align-self:center}\n.lb-tally{font-size:0.8125rem;line-height:1.4;color:var(--lb-muted);\nfont-variant-numeric:tabular-nums;white-space:nowrap}\n/* Connection state, never carried by colour alone: live is a filled dot, dead\n a hollow ring, so the two differ in shape as well as hue \\u2014 a red and a green\n circle are the same circle to a colour-blind reader, and identical under\n forced colours. */\n.lb-status{display:inline-flex;align-items:center;gap:0.5rem;\nfont-size:0.75rem;line-height:1.4;color:var(--lb-muted);white-space:nowrap}\n.lb-status-dot{width:0.5rem;height:0.5rem;border-radius:50%;flex:none;\nbackground-color:var(--color-gray-5);border:2px solid transparent}\n.lb-status[data-live=yes] .lb-status-dot{background-color:var(--color-green-foreground)}\n.lb-status[data-live=no] .lb-status-dot{background-color:transparent;\nborder-color:var(--color-red-foreground)}\n/* \\u2500\\u2500 Pager \\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\n Below a deck, never above it: the rep reads the rows, then decides whether\n to go on. The range ("21\\u201340 of 60") is the honest label \\u2014 "page 2" alone\n does not say how much is left, and a rep who cannot see the end cannot tell\n a short lens from a long one. Tabular, because the numbers change. */\n.lb-pager{display:flex;align-items:center;gap:0.75rem;flex-wrap:wrap}\n.lb-pager .lb-spacer{flex:1 1 auto}\n.lb-pager-range{font-size:0.8125rem;line-height:1.4;color:var(--lb-muted);\nfont-variant-numeric:tabular-nums;white-space:nowrap}\n/* \\u2500\\u2500 Metrics + chart \\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\n A manager dashboard reports before it lists: a row of figures, then the\n trend behind them, then the per-rep table. Tiles are for the few numbers\n that ARE the point \\u2014 a tile per field turns a dashboard into a wall. */\n.lb-tiles{display:grid;gap:0.75rem;\ngrid-template-columns:repeat(auto-fit,minmax(min(9rem,100%),1fr))}\n.lb-tile{display:grid;gap:0.25rem;padding:0.75rem 0.875rem;\nbackground-color:var(--lb-field);border:1px solid var(--lb-border);\nborder-radius:1.375rem;corner-shape:squircle}\n.lb-tile-label{font-size:0.75rem;font-weight:700;letter-spacing:.08em;\ntext-transform:uppercase;color:var(--lb-muted);line-height:1.4}\n.lb-tile-value{font-size:1.5rem;font-weight:700;line-height:1.15;\ncolor:var(--lb-fg);font-variant-numeric:tabular-nums}\n/* The chart draws from the theme tokens, so it reads in light and dark alike;\n a hardcoded stroke disappears on one of the two. Inline SVG rather than a\n CDN library: a sparse weekly series does not earn 200KB, and an artifact\n that silently fails to load its chart shows nothing at all. */\n.lb-chart{display:block;width:100%;height:auto}\n.lb-chart .lb-chart-grid{stroke:var(--lb-border);stroke-width:1}\n.lb-chart .lb-chart-line{fill:none;stroke:var(--color-blue-foreground);stroke-width:2;\nstroke-linejoin:round;stroke-linecap:round}\n.lb-chart .lb-chart-area{fill:var(--color-blue-background);opacity:.55}\n.lb-chart .lb-chart-dot{fill:var(--color-blue-foreground)}\n/* Axis labels are UI text and take the same 12px floor as everything else \\u2014\n a chart is not a licence to shrink type below what is readable. */\n.lb-chart text{fill:var(--lb-muted);font-family:var(--lb-font);font-size:0.75rem}\n/* An empty series is a real answer, not a failure: say so in place of the\n chart rather than drawing empty axes that look broken. */\n.lb-empty{display:grid;place-items:center;gap:0.25rem;padding:1.5rem 1rem;\nbackground-color:var(--lb-field);border:1px dashed var(--lb-border);\nborder-radius:1.375rem;corner-shape:squircle;text-align:center}\n.lb-empty-title{font-size:0.8125rem;font-weight:600;color:var(--lb-fg);line-height:1.4}\n.lb-empty-hint{font-size:0.78125rem;color:var(--lb-muted);line-height:1.45;max-width:44ch}\n/* A page flip replaces the whole deck, so the rows must read as pending or the\n rep cannot tell a slow page from a finished one. Dim and lock the deck\n rather than blanking it: keeping the old rows on screen preserves the\n scroll position and the sense of place. */\n.lb-deck[data-lb-state=loading]{opacity:.55;pointer-events:none}\n/* The head must be able to wrap. Both children default to flex:0 1 auto, so\n without this they shrink together and a long company name is crushed to three\n lines while the chips keep full width. flex-basis:11rem is a content breakpoint:\n below ~176px for the title, the chips drop to their own line instead. */\n.lb-card-head{display:flex;flex-wrap:wrap;justify-content:space-between;\nalign-items:baseline;gap:var(--lb-gap)}\n/* An email or URL has no break opportunity \\u2014 browsers do not break at "@" or\n ".", so without this a company address escapes the card and the chat host\n clips it with no way to recover the tail. */\n.lb-title{font-size:0.875rem;font-weight:600;line-height:1.3;color:var(--lb-fg);\noverflow-wrap:break-word;min-width:0;flex:1 1 11rem}\n/* pretty stops a lone word landing on the last line of a why-it-fits sentence\n or a fact \\u2014 the orphan that makes a card look unfinished. */\n.lb-sub{font-size:0.8125rem;line-height:1.45;color:var(--lb-muted);\ntext-wrap:pretty;overflow-wrap:break-word;max-width:68ch}\n/* An empty fact line is a 30px void that reads as a rendering bug. */\n.lb-sub:empty{display:none}\n/* The tightest group on the card: consecutive data lines (the contact, then\n the company switchboard) are one block, so they sit at HALF the section\'s\n own 8px. That 2x ratio is what makes them read as a unit rather than as\n separate facts \\u2014 the same rule .lb-section applies one level up against\n .lb-sections\' 16px. The scale halves at each level: 16 \\u2192 8 \\u2192 4. */\n.lb-facts{display:grid;gap:0.25rem}\n/* The contract\'s canonical skeleton already emits data-why; the sheet just did\n not honour it, so consumers hand-patched an inline font-style. */\n.lb-sub[data-why]{font-style:italic;color:var(--lb-fg)}\n/* Icon column: the glyph gets its own cell so a wrapping line hangs on one\n shared text edge instead of running back under the emoji. */\n.lb-fact{display:grid;grid-template-columns:1.15rem 1fr;gap:0.35rem;align-items:baseline}\n.lb-row{display:flex;align-items:center;gap:var(--lb-gap);flex-wrap:wrap}\n/* row-gap matters once the row wraps: without it the wrapped line sits flush\n against the one above. */\n.lb-row{row-gap:0.5rem}\n/* 8px, matching .lb-section \\u2014 a stack inside a section must not space its\n controls wider than the section spaces its own children. */\n.lb-stack{display:grid;gap:0.5rem}\n/* A select is border-box by UA default; a text input is content-box. Given the\n same width, padding and border, the input therefore renders ~2rem wider \\u2014 the\n padding lands outside its box and inside the select\'s. Neither is wrong on its\n own; they just cannot be sized together until they agree. Every control the\n kit styles is border-box, so a declared width is the width that shows. */\n.lb-btn,.lb-select,.lb-input{box-sizing:border-box}\n.lb-select,.lb-input{font:inherit;font-family:var(--lb-font);font-size:0.8125rem;color:var(--lb-fg);\nbackground-color:var(--lb-field);border:1px solid var(--lb-control-border);\nborder-radius:var(--lb-radius-sm);corner-shape:squircle;padding:0.4rem 0.55rem;min-height:2.125rem}\n/* Geometry, states and motion ported from the product\'s Button component\n (packages/ui/components/Button) so an artifact button and an app button are\n the same object. MUI spacing is 8px/unit, so its size=medium (py .875,\n px .875, borderRadius .875) is 7px/7px/7px and large (py 1.75, px 2,\n borderRadius 1.25) is 14px/16px/10px. A control sitting in a row beside a\n select reads as medium, so that is the default here; .lb-btn-lg opts into\n large. The app\'s default variant is secondary \\u2014 white ground, gray-5\n border, black text \\u2014 which is what an unadorned .lb-btn already was. */\n.lb-btn{font:inherit;font-family:var(--lb-font);font-size:0.8125rem;font-weight:600;\ncolor:var(--color-black);background-color:var(--color-white);\nborder:1px solid var(--color-gray-5);\nborder-radius:0.4375rem;corner-shape:squircle;padding:0.4375rem 0.4375rem;min-height:2.125rem;\ncursor:pointer;user-select:none;-webkit-user-select:none;text-wrap:nowrap;\nfont-variant-numeric:tabular-nums;\ntransition:background-color .16s ease,border .16s ease,color .16s ease,\nopacity .16s ease,transform .16s cubic-bezier(0.23,1,0.32,1)}\n/* The app hovers the GROUND to gray-2, not the border. */\n@media (hover:hover){\n.lb-btn:hover:not([disabled]):not([data-lb-state=loading]){\nbackground-color:var(--color-gray-2)}}\n/* Front-loaded press, so the tap leads the colour crossfade. */\n.lb-btn:active:not([disabled]):not([data-lb-state=loading]){transform:scale(0.97)}\n.lb-btn[disabled]{opacity:.4;cursor:default}\n/* A text button with a label + icon: the app lays the content out as a flex row\n with a 6px gap (its content style uses gap 0.75). */\n.lb-btn{display:inline-flex;align-items:center;justify-content:center;gap:0.375rem}\n.lb-btn>svg{display:block;flex-shrink:0;width:1.05rem;height:1.05rem}\n/* Opt-in large, for a button that stands alone rather than in a control row. */\n.lb-btn-lg{border-radius:0.625rem;padding:0.875rem 1rem}\n/* A SUBMIT is not a toggle. Like/Dislike are independent switches; "Set status"\n commits the value sitting in the select beside it. Rendered identically, the\n row reads as five peers and the rep cannot see which control ends the task.\n The accent border + tinted ground marks it as the commit without making it a\n loud filled button \\u2014 the state styles above still win when they apply. */\n/* INVERTED, not recoloured. A normal button is --lb-fg on --lb-field; the\n submit swaps them. That introduces no new hue, and it themes for free: light\n gives near-black on white, dark gives white on near-black \\u2014 the polarity flip\n reads as "this one commits" in both, without competing with the semantic\n state colours (success green / error red) that still override it. */\n/* This is the app\'s primary variant verbatim: black ground, white text, and a\n hover that mixes 32% gray-8 into the black rather than lightening opacity. */\n.lb-btn-submit{background-color:var(--lb-fg);color:var(--lb-field);\nborder-color:var(--lb-fg)}\n@media (hover:hover){\n.lb-btn-submit:hover:not([disabled]):not([data-lb-state=loading]){\nbackground-color:color-mix(in oklch,var(--lb-fg),var(--color-gray-8) 32%);\nborder-color:color-mix(in oklch,var(--lb-fg),var(--color-gray-8) 32%)}}\n/* The app\'s ai variant \\u2014 what QualifyButton/Requalify wears. Purple ground,\n purple-foreground text, border at 65% transparency of the foreground; hover\n mixes 7% black into the ground. Tokens mirror the product\'s style package. */\n.lb-btn-ai{background-color:var(--color-purple-background);\nborder-color:var(--color-purple-border);color:var(--color-purple-foreground)}\n@media (hover:hover){\n.lb-btn-ai:hover:not([disabled]):not([data-lb-state=loading]){\nbackground-color:color-mix(in oklch,var(--color-purple-background),black 7%)}}\n/* Toggles that act on the same axis belong in one visual unit, so the row reads\n as "taste | status | inspect" rather than five equal buttons. The gap inside\n a group is half the gap between groups \\u2014 the 2x rule, applied horizontally. */\n.lb-group{display:inline-flex;align-items:center;gap:0.375rem;flex-wrap:wrap}\n/* Square icon button. Only for actions whose glyph is unambiguous on its own \\u2014\n thumbs up/down qualify, "Set status" does not. It MUST carry an aria-label\n and a title: with no text the icon is the entire affordance, so an unlabelled\n one is unreadable to a screen reader and to anyone who does not know the\n glyph. Same 2.125rem box as a text button, so it keeps the row\'s baseline. */\n.lb-btn-icon{padding:0;width:2.125rem;justify-content:center;display:inline-flex;\nalign-items:center}\n.lb-btn-icon svg{width:1.05rem;height:1.05rem;flex-shrink:0}\n/* Pressed state. The taste chip carries the durable fact; this is the control\n reflecting it, and it must not rely on colour alone \\u2014 aria-pressed is the\n accessible half and the fill is the visible half. */\n/* A heart that stays hollow does not read as "liked" \\u2014 fill it from the same\n currentColor the stroke uses, so one rule covers both themes. */\n.lb-btn-icon[aria-pressed=true] svg{fill:currentColor}\n.lb-btn-icon[aria-pressed=true]{border-color:var(--color-red-like);\ncolor:var(--color-red-like);\nbackground-color:color-mix(in srgb,var(--color-red-like) 10%,var(--lb-field))}\n.lb-btn-icon[data-taste=disliked][aria-pressed=true]{border-color:var(--lb-muted);\ncolor:var(--lb-muted);\nbackground-color:color-mix(in srgb,var(--lb-muted) 10%,var(--lb-field))}\n/* A glyph-only control has no text to widen its hit area, so extend the target\n past the 34px box without inflating the row. */\n.lb-btn-icon{position:relative}\n.lb-btn-icon::before{content:"";position:absolute;inset:-5px}\n.lb-btn:focus-visible,.lb-select:focus-visible,.lb-input:focus-visible,\n.lb-link:focus-visible{\noutline:2px solid var(--color-blue-foreground);outline-offset:1px;\nborder-radius:var(--lb-radius-sm)}\n/* Forced colours replaces every background and custom outline with a system\n colour, collapsing the state styling above into one flat control. */\n@media(forced-colors:active){\n.lb-btn,.lb-select,.lb-input,.lb-chip{border:1px solid CanvasText}\n.lb-btn:focus-visible,.lb-select:focus-visible,.lb-input:focus-visible,\n.lb-link:focus-visible,.lb-link-out:focus-visible{outline:2px solid Highlight}\n.lb-link-out{opacity:1}}\n/* Each state carries a glyph as well as a hue: success and error were two\n pills with identical labels, indistinguishable to a red-green colour-blind\n reader and identical under forced colours. */\n.lb-btn[data-lb-state=loading]{opacity:.55;cursor:progress}\n.lb-btn[data-lb-state=loading]::after{content:"\\u2026";margin-inline-start:.35rem}\n/* An icon button has no room for a trailing glyph \\u2014 it would push the icon\n off-centre. Its states read through border and fill, which the forced-colors\n block below keeps distinguishable. */\n.lb-btn-icon::after{content:none!important}\n.lb-btn[data-lb-state=success]::after{content:"\\u2713";margin-inline-start:.35rem}\n.lb-btn[data-lb-state=error]::after{content:"\\u2715";margin-inline-start:.35rem}\n.lb-btn[data-lb-state=unavailable]::after{content:"\\u26A0";margin-inline-start:.35rem}\n/* With save-on-change there is no button to reflect the write, so the select\n itself must. Only error was styled before; loading and success were invisible\n on a select, leaving the rep unsure whether the pick had landed. */\n.lb-select[data-lb-state=loading]{opacity:.55;cursor:progress}\n.lb-select[data-lb-state=success]{border-color:var(--color-green-foreground)}\n.lb-msg[data-tone=error]::before{content:"\\u2715 "}\n.lb-msg[data-tone=ok]::before{content:"\\u2713 "}\n.lb-btn[data-lb-state=success]{background-color:var(--color-green-background);\nborder-color:var(--color-green-foreground);color:var(--color-green-foreground)}\n.lb-btn[data-lb-state=error],.lb-select[data-lb-state=error]{\nbackground-color:var(--color-red-background);border-color:var(--color-red-foreground);\ncolor:var(--color-red-foreground)}\n.lb-btn[data-lb-state=unavailable],.lb-btn[disabled]{opacity:.5;cursor:not-allowed}\n.lb-msg{font-size:0.8125rem;line-height:1.45;color:var(--lb-muted)}\n/* Screen-reader-only text: control labels, unit suffixes, "opens in a new tab". */\n.lb-vh{position:absolute;width:1px;height:1px;margin:-1px;padding:0;\noverflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}\n.lb-msg[data-tone=error]{color:var(--color-red-foreground)}\n.lb-msg[data-tone=ok]{color:var(--color-green-foreground)}\n.lb-chip{display:inline-flex;align-items:center;gap:.25rem;white-space:nowrap;\nfont-size:0.75rem;font-weight:600;line-height:1rem;padding:0.125rem 0.5rem;\nborder-radius:var(--lb-radius-sm);corner-shape:squircle;\nbackground-color:var(--lb-chip-bg);color:var(--lb-muted)}\n.lb-chip[data-status=WANTED]{background-color:var(--color-blue-background);color:var(--color-blue-foreground)}\n.lb-chip[data-status=WON]{background-color:var(--color-green-background);color:var(--color-green-foreground)}\n.lb-chip[data-status=LOST]{background-color:var(--color-red-background);color:var(--color-red-foreground)}\n.lb-chip[data-status=UNWANTED]{background-color:var(--lb-chip-bg);color:var(--lb-muted)}\n.lb-chip[data-taste=liked]{background-color:var(--color-cherry-background);color:var(--color-red-like)}\n.lb-chip[data-taste=disliked]{background-color:var(--lb-chip-bg);color:var(--lb-muted)}\n.lb-chips{display:flex;align-items:center;gap:0.5rem;flex-wrap:wrap}\n/* \\u2500\\u2500 Tag rows \\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\n Two kinds, deliberately different so they never read as the same axis.\n FIRMOGRAPHIC (.lb-tags-plain): what the company IS \\u2014 location, size, sector.\n Quiet grey, because it is context the rep skims.\n INTENT (.lb-tags-intent): what the qualifier FOUND \\u2014 a buying signal. Teal,\n matching the product\'s own taste-profile tags, because it is the reason the\n lead is on screen. Both wrap and both sit on the section\'s 8px. */\n.lb-tags-plain,.lb-tags-intent{display:flex;flex-wrap:wrap;gap:0.5rem}\n/* Both tags round at 0.375rem: they are the innermost surface, and a tag whose\n radius drifts from its neighbours reads as a different kind of object. Their\n own padding is small enough that concentric math against the card does not\n apply \\u2014 past a point the layers are separate surfaces, each chosen on its\n own. */\n.lb-tags-plain>*{display:inline-flex;align-items:center;\nbackground-color:var(--lb-surface);border:1px solid var(--lb-border);\ncolor:var(--lb-muted);border-radius:0.375rem;padding:0.125rem 0.375rem;\nfont-size:0.75rem;font-weight:500;line-height:1.5;white-space:nowrap}\n.lb-tags-intent>*{display:inline-flex;align-items:center;\nbackground-color:var(--color-teal-background);border:1px solid var(--color-teal-border);\ncolor:var(--color-teal-foreground);border-radius:0.375rem;padding:0.1875rem 0.4375rem;\nfont-size:0.75rem;line-height:1.4}\n/* The honest empty state: a blank tag row reads as a rendering bug, so say\n what is missing and what fixes it. */\n.lb-tags-empty{font-size:0.78125rem;line-height:1.45;color:var(--lb-muted);\nfont-style:italic}\n/* The chips row is empty until a taste or a status lands. Left in flow it is a\n zero-height element that still consumes the gap above the first section, so\n hide it while it holds nothing \\u2014 set the hidden attribute from the code that\n paints the chips, since it is that code which knows. */\n.lb-chips[hidden]{display:none}\n.lb-chip[hidden]{display:none}\n.lb-table{width:100%;border-collapse:collapse;font-family:var(--lb-font);color:var(--lb-fg)}\n.lb-table th,.lb-table td{text-align:start;padding:0.5rem 0.4rem;\nborder-bottom:1px solid var(--lb-border);vertical-align:middle;font-size:0.8125rem}\n.lb-table th{font-size:0.75rem;font-weight:600;color:var(--lb-muted);\ntext-transform:uppercase;letter-spacing:.04em}\n/* Counts line up only when the digits do; a leaderboard whose numbers jitter\n column-to-column cannot be scanned down. */\n.lb-table td[data-num],.lb-table th[data-num]{text-align:end;\nfont-variant-numeric:tabular-nums}\n/* A sortable header is a control: it must look clickable and say which way it\n is sorting, in text as well as by arrow \\u2014 aria-sort is the accessible half. */\n.lb-table th[aria-sort]{cursor:pointer;user-select:none;color:var(--lb-fg)}\n.lb-table th[aria-sort]:hover{text-decoration:underline}\n.lb-table th[aria-sort=ascending]::after{content:" \\\\2191"}\n.lb-table th[aria-sort=descending]::after{content:" \\\\2193"}\n.lb-table th[aria-sort=none]::after{content:" \\\\2195";opacity:.35}\n/* The row a manager is acting on. */\n.lb-table tbody tr[aria-selected=true]{background-color:var(--lb-chip-bg)}\n.lb-link{color:var(--color-blue-foreground);text-decoration:none}\n.lb-link:hover{text-decoration:underline}\n/* Quiet text link out of the artifact. Button-height so it shares the row\'s\n baseline; understated so it never competes with the actions beside it. The\n arrow is a bare diagonal stroke \\u2014 an escape-hatch marker, not an icon that\n asks to be read. */\n.lb-link-out{display:inline-flex;align-items:center;gap:.3rem;\nfont-size:0.75rem;line-height:1rem;min-height:2.125rem;\ncolor:var(--lb-fg);text-decoration:none;opacity:.65;transition:opacity .15s}\n.lb-link-out:hover{opacity:1;text-decoration:underline}\n.lb-link-out:focus-visible{outline:2px solid var(--color-blue-foreground);outline-offset:1px;\nborder-radius:var(--lb-radius-sm)}\n.lb-link-out svg{width:.85em;height:.85em;flex-shrink:0}\n/* Pushes whatever follows it to the right edge of an .lb-row, so a trailing\n link sits on the SAME baseline as the row\'s buttons instead of on its own\n line below them. */\n/* A spacer only aligns items on its OWN flex line. .lb-row wraps, so once the\n link falls to a second line the spacer stays behind and the link renders\n left-aligned \\u2014 the opposite of what the contract promises. The auto margin\n re-anchors it to the trailing edge of whichever line it lands on, and is a\n no-op while the row is unwrapped. */\n.lb-spacer{flex:1 1 auto;min-width:0}\n.lb-row>.lb-link-out{margin-inline-start:auto}\n.lb-spinner{display:inline-block;width:.7em;height:.7em;border:2px solid var(--lb-border);\nborder-top-color:var(--color-blue-foreground);border-radius:50%;animation:lb-spin .8s linear infinite}\n@keyframes lb-spin{to{transform:rotate(1turn)}}\n/* animation:none left a static ring \\u2014 under reduced motion "sending" and\n "cannot click" looked identical. An opacity pulse is the sanctioned\n substitute. The 150ms colour fade is fine and stays. */\n@media(prefers-reduced-motion:reduce){.lb-spinner{animation:lb-pulse 1.4s ease-in-out infinite}}\n@keyframes lb-pulse{50%{opacity:.35}}\n`,F="lb-styles";var ve="2026-01-26";function Z(e,t){return Object.assign(new Error(e),{name:"LbError",code:t})}function J(){return typeof window<"u"&&window.parent!=null&&window.parent!==window}function X(e,t={parent:window.parent,self:window}){let n=new Map,r=1,o=null,a=c=>t.parent.postMessage({jsonrpc:"2.0",...c},"*");function i(c,s){let d=r++;return new Promise((g,h)=>{n.set(d,{resolve:g,reject:h}),a({id:d,method:c,params:s})})}function l(c){if(c.source!==t.parent)return;let s=c.data;if(!s||typeof s!="object"||s.jsonrpc!=="2.0")return;if(typeof s.method=="string"){if(s.id===void 0)return;s.method==="ping"||s.method==="ui/resource-teardown"?a({id:s.id,result:{}}):a({id:s.id,error:{code:-32601,message:`Method not found: ${s.method}`}});return}let d=n.get(s.id);d&&(n.delete(s.id),s.error?d.reject(Z(String(s.error.message||"The host refused the call"),"host_error")):d.resolve(s.result))}function u(){return o||(o=(async()=>{t.self.addEventListener("message",l);let c=r,s=i("ui/initialize",{appInfo:{name:"Leadbay",version:e},appCapabilities:{},protocolVersion:ve}),d,g=new Promise((h,f)=>{d=setTimeout(()=>{n.delete(c),f(Z("Leadbay is not reachable from this page \\u2014 the host never answered the MCP Apps handshake.","unavailable"))},5e3)});try{await Promise.race([s,g])}finally{d&&clearTimeout(d)}a({method:"ui/notifications/initialized",params:{}}),xe(a),_e(i)})(),o.catch(()=>{o=null})),o}return async(c,s)=>(await u(),i("tools/call",{name:c,arguments:s}))}function xe(e){if(typeof document>"u"||typeof ResizeObserver>"u")return;let t=!1,n=0,r=0,o=()=>{t||(t=!0,requestAnimationFrame(()=>{t=!1;let i=document.documentElement,l=i.style.height;i.style.height="max-content";let u=Math.ceil(i.getBoundingClientRect().height);i.style.height=l;let c=Math.ceil(window.innerWidth);c===n&&u===r||(n=c,r=u,e({method:"ui/notifications/size-changed",params:{width:c,height:u}}))}))};o();let a=new ResizeObserver(o);a.observe(document.documentElement),a.observe(document.body)}function _e(e){typeof document>"u"||document.addEventListener("click",t=>{let n=t.target,r=n&&typeof n.closest=="function"?n.closest("a[href]"):null;if(!r)return;let o=r.href;/^https?:\\/\\//i.test(o)&&(t.preventDefault(),e("ui/open-link",{url:o}).catch(()=>{window.open(o,"_blank","noopener")}))},!0)}var G="0.6.0",C=class extends Error{constructor(n,r={}){super(n);b(this,"code");b(this,"raw");this.name="LbError",this.code=r.code,this.raw=r.raw}},te=null,O=3e4,ne="Leadbay",re=ne;function oe(){let e=globalThis.cowork;if(e&&typeof e.callMcpTool=="function")return(n,r)=>e.callMcpTool(n,r);let t=globalThis.claude;return t&&typeof t.use=="function"?async(n,r)=>{let o=await Se(t.use);if(!o||typeof o.callTool!="function")throw new C("Leadbay is not reachable from this page \\u2014 the artifact must declare the Leadbay connector in its capabilities, and the viewer must have it enabled.",{code:"unavailable"});let a=await o.callTool(re,n,r);return a&&"payload"in a&&a.payload!==void 0?a.payload:a}:J()?(N||(N=X(G)),N):null}var N=null,M=null;function Se(e){return M||(M=Promise.resolve(e("mcp")).catch(()=>null)),M}var ae="leadbay_report_artifact_error",Te=40,j=new Set,U=0,K=!0;function Ee(e){K=e}function wt(){j.clear(),U=0,K=!0,A=null,P="call"}function T(e){if(!K||U>=Te)return;let t=`${e.kind}|${e.surface}|${e.tool??""}|${e.code??""}`;if(j.has(t))return;j.add(t),U++;let n=oe();if(n)try{let r=n(ae,{kind:e.kind,surface:e.surface,kit_version:G,...e.tool?{tool:e.tool}:{},...e.code?{code:e.code}:{}});r&&typeof r.catch=="function"&&r.catch(()=>{})}catch{}}var P="call",A=null;function q(e,t,n){let r=P,o=A;P=e,A=n??null;try{return t()}finally{P=r,A=o}}function Ae(e,t,n){let r=ie(n);T({kind:r==="timeout"?"call_timeout":r==="unavailable"?"bridge_unavailable":"call_failed",surface:e,tool:t,code:r})}function ee(e){if(e&&typeof e=="object"&&"content"in e){let t=e.content;if(Array.isArray(t)&&t[0]&&typeof t[0].text=="string")return t[0].text}return null}function Ce(e,t,n="call"){if(!e||typeof e!="object")return e;let r=e;if(r.isError)throw new C(ee(e)??"tool call failed",{raw:e});if("structuredContent"in r&&r.structuredContent!=null)return r.structuredContent;let o=ee(e);if(o!=null)try{return JSON.parse(o)}catch{return T({kind:"parse_failed",surface:n,tool:t}),o}return e}function V(e){if(e instanceof Error)return e.message;if(e&&typeof e=="object"){let t=e.message;if(typeof t=="string"&&t)return t;try{return JSON.stringify(e)}catch{}}return String(e)}function ie(e){if(e instanceof C)return e.code;if(e&&typeof e=="object"){let t=e.code;if(typeof t=="string"&&t)return t}}function D(e){let t=ie(e);return{message:V(e),unavailable:t==="unavailable",code:t}}function Le(e={}){te=e.call??null,O=e.timeoutMs??3e4,re=e.server??ne,M=null,N=null,B.clear()}function Ie(){if(typeof document>"u"||!document.head)return null;let e=document.getElementById(F);if(e)return e;let t=document.createElement("style");return t.id=F,t.textContent=Y,document.head.appendChild(t),t}async function Re(e,t){if(!O||O<=0)return e;let n,r=new Promise((o,a)=>{n=setTimeout(()=>a(new C(`"${t}" timed out after ${O}ms`,{code:"timeout"})),O)});try{return await Promise.race([e,r])}finally{n&&clearTimeout(n)}}async function p(e,t={}){let n=e===ae,r=P;!n&&A&&A.tool===void 0&&(A.tool=e);let o=te??oe();if(!o)throw n||T({kind:"bridge_unavailable",surface:r,tool:e,code:"unavailable"}),new C(\'Leadbay bridge unavailable \\u2014 no window.cowork, no window.claude.use("mcp") and no MCP Apps host\',{code:"unavailable"});try{return Ce(await Re(Promise.resolve(o(e,t)),e),n?void 0:e,r)}catch(a){throw n||Ae(r,e,a),a}}var I=class{constructor(){b(this,"subs",new Set)}subscribe(t){return this.subs.add(t),t(this),()=>this.subs.delete(t)}emit(){for(let t of this.subs)t(this)}};function Oe(e){return Array.isArray(e)?e.map(t=>t&&typeof t=="object"?t:{value:t,label:String(t)}):[]}var S=class extends I{constructor(n={}){super();b(this,"kind");b(this,"value");b(this,"options",[]);b(this,"loading",!1);b(this,"error",null);b(this,"ready",!1);b(this,"cfg");b(this,"depUnsubs",[]);b(this,"seq",0);this.cfg=n,this.kind=n.kind,this.value=n.value??"";for(let r of n.dependsOn??[]){let o=r.value;this.depUnsubs.push(r.subscribe(()=>{r.value!==o&&(o=r.value,this.cfg.load&&this.load())}))}n.load&&(n.autoLoad??!0)&&this.load()}async load(){if(!this.cfg.load)return;let n=++this.seq;this.loading=!0,this.error=null,this.emit();try{let r={},o=await q("field",()=>this.cfg.load(),r);if(n!==this.seq)return;this.options=this.cfg.options?this.cfg.options(o):Oe(o),this.ready=!0,this.options.length===0&&T({kind:"options_empty",surface:"field",tool:r.tool});let a=this.value==null?"":String(this.value);this.options.length&&(a===""||!this.options.some(i=>String(i.value)===a))&&(this.value=this.options[0].value)}catch(r){if(n!==this.seq)return;this.options=[],this.error=D(r)}finally{n===this.seq&&(this.loading=!1,this.emit())}}setValue(n){this.value=n;let r=this.validate();this.error=r?{message:r,unavailable:!1}:null,this.emit()}validate(){return this.cfg.validate?this.cfg.validate(this.value):null}get valid(){return this.validate()==null}reset(){this.value=this.cfg.value??"",this.error=null,this.emit()}dispose(){for(let n of this.depUnsubs)n();this.depUnsubs=[]}};function Pe(e){if(!e||typeof e!="object")return null;let t=e;if(t.error!==!0)return null;let n=typeof t.message=="string"&&t.message?t.message:"tool call failed",r=typeof t.hint=="string"&&t.hint?` \\u2014 ${t.hint}`:"";return`${n}${r}`}var v=class extends I{constructor(n){super();b(this,"loading",!1);b(this,"error",null);b(this,"lastResult",null);b(this,"cfg");this.cfg=n}async run(){if(this.loading)return;for(let o of this.cfg.fields??[]){let a=o.validate();if(a!=null){this.error={message:a,unavailable:!1},this.emit(),T({kind:"action_blocked",surface:"action",tool:this.cfg.tool});return}}if(this.cfg.confirm){if(typeof globalThis.confirm!="function"){this.error={message:"This action needs confirmation, which this page cannot show.",unavailable:!1},this.emit(),T({kind:"action_blocked",surface:"action",tool:this.cfg.tool});return}if(!globalThis.confirm(this.cfg.confirm))return}this.loading=!0,this.error=null,this.emit();let n;try{let o=typeof this.cfg.args=="function"?this.cfg.args():this.cfg.args??{};n=await q("action",()=>p(this.cfg.tool,o))}catch(o){this.error=D(o),this.loading=!1,this.emit(),this.cfg.onError?.(this.error);return}let r=Pe(n)??this.cfg.checkResult?.(n)??null;if(r!=null){this.error={message:r,unavailable:!1},this.loading=!1,this.emit();let o=n&&typeof n=="object"?n.code:void 0;T({kind:"result_rejected",surface:"action",tool:this.cfg.tool,...typeof o=="string"&&o?{code:o}:{}}),this.cfg.onError?.(this.error);return}return this.lastResult=n,this.loading=!1,this.emit(),this.cfg.onSuccess?.(n),n}reset(){this.error=null,this.lastResult=null,this.emit()}},x=class extends I{constructor(n){super();b(this,"data",null);b(this,"loading",!1);b(this,"refreshing",!1);b(this,"error",null);b(this,"done",!1);b(this,"cfg");b(this,"timer",null);b(this,"seq",0);this.cfg=n,(n.autoLoad??!0)&&this.load()}async load(){this.clearTimer();let n=++this.seq;this.data==null?this.loading=!0:this.refreshing=!0,this.error=null,this.emit();try{let o=await q("resource",()=>this.cfg.load());if(n!==this.seq)return;this.data=o,this.done=this.cfg.until?this.cfg.until(o):!0,this.cfg.pollEvery&&!this.done&&(this.timer=setTimeout(()=>void this.load(),this.cfg.pollEvery))}catch(o){if(n!==this.seq)return;this.error=D(o)}finally{n===this.seq&&(this.loading=!1,this.refreshing=!1,this.emit())}}refresh(){return this.load()}stop(){this.clearTimer()}clearTimer(){this.timer&&(clearTimeout(this.timer),this.timer=null)}},R=class extends I{constructor(n){super();b(this,"items",[]);b(this,"page",0);b(this,"pageSize");b(this,"total",0);b(this,"loading",!1);b(this,"error",null);b(this,"cfg");b(this,"seq",0);this.cfg=n,this.pageSize=n.pageSize??20,(n.autoLoad??!0)&&this.loadPage(0)}async loadPage(n){let r=++this.seq;this.loading=!0,this.error=null,this.emit();try{let o=await q("list",()=>this.cfg.load({page:n,pageSize:this.pageSize}));if(r!==this.seq)return;this.items=o.items??[],this.total=o.total??this.items.length,this.page=n}catch(o){if(r!==this.seq)return;this.error=D(o)}finally{r===this.seq&&(this.loading=!1,this.emit())}}next(){return this.loadPage(this.page+1)}prev(){return this.loadPage(Math.max(0,this.page-1))}get hasMore(){return(this.page+1)*this.pageSize<this.total}};function Ne(e,t){let n=t.error?.unavailable?"unavailable":t.loading?"loading":t.error?"error":"ready";e.setAttribute("data-lb-state",n),t.error?e.setAttribute("data-lb-error",t.error.message):e.removeAttribute("data-lb-error")}function Me(e,t){let n=()=>t.setValue(e.value);e.addEventListener("change",n);let r=t.subscribe(()=>{Ne(e,t),e.disabled=t.loading,e.innerHTML="";for(let o of t.options){let a=document.createElement("option");a.value=String(o.value),a.textContent=o.label,e.appendChild(a)}e.value=t.value==null?"":String(t.value)});return()=>{e.removeEventListener("change",n),r()}}function ze(e,t){let n=e.type==="checkbox",r=e.tagName==="SELECT"?"change":"input",o=()=>t.setValue(n?e.checked:e.value);e.addEventListener(r,o);let a=t.subscribe(()=>{if(n)e.checked=!!t.value;else{let i=t.value==null?"":String(t.value);e.value!==i&&(e.value=i)}e.setAttribute("data-lb-state",t.error?"error":"ready"),t.error?e.setAttribute("data-lb-error",t.error.message):e.removeAttribute("data-lb-error")});return()=>{e.removeEventListener(r,o),a()}}function qe(e,t){let n=a=>{a.preventDefault(),t.run()};e.addEventListener("click",n);let r,o=t.subscribe(()=>{let a=t.error?.unavailable?"unavailable":t.loading?"loading":t.error?"error":t.lastResult!=null?"success":"ready";e.setAttribute("data-lb-state",a),"disabled"in e&&(e.disabled=t.loading),e.setAttribute("aria-busy",String(t.loading)),t.error?e.setAttribute("data-lb-error",t.error.message):e.removeAttribute("data-lb-error"),r&&clearTimeout(r),a==="success"&&(r=setTimeout(()=>{!t.loading&&!t.error&&e.setAttribute("data-lb-state","ready")},1600))});return()=>{e.removeEventListener("click",n),o(),r&&clearTimeout(r)}}var $=["STILL_CHASING","COULD_NOT_REACH_STILL_TRYING","INTEREST_VALIDATED_OR_MEETING_PLANED","NOT_INTERESTED_LOST"],H=[{value:"",label:"Default ranking"},{value:"SCORE:DESC",label:"Score \\u2193"},{value:"SCORE:ASC",label:"Score \\u2191"},{value:"NAME:ASC",label:"Name A\\u2192Z"},{value:"NAME:DESC",label:"Name Z\\u2192A"},{value:"SIZE:DESC",label:"Size \\u2193"},{value:"SIZE:ASC",label:"Size \\u2191"},{value:"SECTOR:ASC",label:"Sector A\\u2192Z"},{value:"STATUS:ASC",label:"Status A\\u2192Z"},{value:"CONTACT_COUNT:DESC",label:"Contacts \\u2193"},{value:"LAST_PROSPECTING_ACTION_AT:DESC",label:"Last action \\u2193"},{value:"LAST_PROSPECTING_ACTION_AT:ASC",label:"Last action \\u2191"},{value:"EPILOGUE_STATUS_SET_AT:DESC",label:"Outcome set \\u2193"},{value:"LIKED:DESC",label:"Liked first"},{value:"DISLIKED:DESC",label:"Disliked first"}];function De(e){let t=String(e??"").trim().toUpperCase(),n=H.some(r=>r.value===t);return new S({kind:"select",value:n?t:"",load:async()=>H.slice()})}var z=[{value:"WANTED",label:"Wanted"},{value:"WON",label:"Won"},{value:"LOST",label:"Lost"},{value:"UNWANTED",label:"Unwanted"}],Fe={value:"",label:"Pick a status"};function le(e){let t=String(e??"").trim().toUpperCase(),n=z.some(r=>r.value===t);return new S({kind:"select",value:n?t:"",validate:r=>String(r??"")===""?"Pick a status":null,load:async()=>n?z.slice():[Fe,...z]})}function se(e){let t=()=>{let n=typeof e.leadIds=="function"?e.leadIds():e.leadIds;return Array.isArray(n)?n:e.leadId?[e.leadId]:[]};return new v({tool:"leadbay_set_lead_status",fields:e.date?[e.status,e.date]:[e.status],confirm:e.confirm,args:()=>({lead_ids:t(),status:e.status.value,...e.date&&e.date.value?{status_date:e.date.value}:{},...e.ask?{_triggered_by:e.ask}:{}}),checkResult:n=>{let r=n?.failed;if(!Array.isArray(r)||r.length===0)return null;let o=t().length,a=r[0]?.message??"write rejected";return r.length===o?`Status not applied: ${a}`:`${r.length} of ${o} leads failed: ${a}`}})}function je(e){return new S({kind:"select",load:()=>p("leadbay_list_campaigns",{_triggered_by:e}),options:t=>(t?.campaigns??[]).map(r=>{let o=r?.campaign??r;return o?.id?{value:o.id,label:o.name??o.ai_generated_name??String(o.id)}:null}).filter(r=>r!=null)})}function ce(e){return new v({tool:"leadbay_report_outreach",fields:e.note?[e.note]:[],args:()=>({lead_id:e.leadId,...e.status?{epilogue_status:e.status.value}:{},note:e.note?e.note.value:"",verification:{source:"user_confirmed",ref:e.ref??"logged from artifact"},_triggered_by:e.ask})})}function Ue(e){return new v({tool:"leadbay_add_note",fields:[e.note],args:()=>({leadId:e.leadId,note:e.note.value})})}function de(e){return new v({tool:"leadbay_like_lead",args:{lead_id:e}})}function ue(e){return new v({tool:"leadbay_dislike_lead",args:{lead_id:e}})}function he(e){let t=e??{},n=t.ai_agent_lead_score;if(typeof n=="number"&&n>0)return"Requalify";let r=t.qualification_summary?.answered;return typeof r=="number"&&r>0?"Requalify":"Qualify"}function ge(e){let t=()=>{let o=typeof e.leadIds=="function"?e.leadIds():e.leadIds;return Array.isArray(o)?o:e.leadId?[e.leadId]:[]},n=0,r=new v({tool:"leadbay_bulk_qualify_leads",confirm:e.confirm,args:()=>{let o=t();return n=o.length,{leadIds:o,wait_for_completion:!1,...e.ask?{_triggered_by:e.ask}:{}}},checkResult:o=>{let a=o??{},i=Array.isArray(a.failed)?a.failed:[],l=n;if(i.length>0){let u=i[0]?.error??"launch rejected";return i.length>=l?`Qualification did not start: ${u}`:`${i.length} of ${l} leads did not start: ${u}`}if(a.quota_exceeded){let u=a.launched_count??0;return u>0?`Quota reached \\u2014 ${u} of ${l} launched, the rest were not started.`:"Quota reached \\u2014 no leads were queued."}return null}});return Object.defineProperty(r,"label",{enumerable:!0,get:()=>(typeof e.scored=="function"?e.scored():e.scored)?"Requalify":"Qualify"}),r}function $e(e,t,n=15e3){return new x({pollEvery:n,load:()=>p("leadbay_qualify_status",{...e?.notification_id?{notification_id:e.notification_id}:{},...e?.lead_ids?.length?{lead_ids:e.lead_ids}:{},...typeof e?.lens_id=="number"?{lens_id:e.lens_id}:{},...t?{_triggered_by:t}:{}}),until:r=>{let o=r??{};return Array.isArray(o.still_running)?o.still_running.length===0:o.status!=null&&o.status!=="running"}})}function He(e,t){return new x({autoLoad:!1,load:()=>p("leadbay_account_history",{leadId:e,_triggered_by:t})})}function Be(e,t){return new x({autoLoad:!1,load:()=>p("leadbay_research_lead_by_id",{leadId:e,_triggered_by:t})})}var B=new Map;function be(e={}){let t=e.lang??"",n=B.get(t);return n||(n=(async()=>{try{let r=await p("leadbay_list_sectors",{...e.lang?{lang:e.lang}:{}}),o=Array.isArray(r)?r:Array.isArray(r?.sectors)?r.sectors:[],a={};for(let i of o){let l=i??{};l.id!=null&&typeof l.label=="string"&&l.label&&(a[String(l.id)]=l.label)}return a}catch{return{}}})(),B.set(t,n)),n}function fe(e,t={}){let n=e??{},r=i=>typeof i=="string"&&i.trim()&&i.trim()!=="null"?i.trim():void 0,o=n.sector_id!=null?t[String(n.sector_id)]:void 0,a=Array.isArray(n.phone_numbers)?n.phone_numbers:[];return{summary:r(n.short_description)??r(n.description)??o,sector:o,phone:a.map(r).find(Boolean),email:r(n.email)}}function Ge(e){let t=()=>{let a=e.kind;return typeof a=="string"?a:typeof a=="function"?a():String(a?.value??"followups")||"followups"},n=()=>{let a=e.campaignId,i=typeof a=="string"?a:a?.value;return i?String(i):void 0},r=()=>typeof e.order=="string"?e.order:String(e.order?.value??""),o=new R({pageSize:e.pageSize??20,load:async({page:a,pageSize:i})=>{let l=t(),u;if(l==="campaign"){let d=n();if(!d)return{items:[],total:0};u=await p("leadbay_campaign_call_sheet",{campaign_id:d,page:a,count:i,_triggered_by:e.ask})}else l==="discover"?u=await p("leadbay_pull_leads",{page:a,count:i,...e.lensId?{lensId:e.lensId}:{},...r()?{order:r()}:{},_triggered_by:e.ask}):u=await p("leadbay_pull_followups",{page:a,count:i,...e.city?{city:e.city}:{},...r()?{order:r()}:{},_triggered_by:e.ask});let c=u??{},s=c.leads??c.items??[];return{items:s,total:c.pagination?.total??c.total_leads??s.length}}});return Object.assign(o,{leadUrl:a=>{let i=a??{},l=encodeURIComponent(String(i.id??"")),u=t();if(u==="campaign"){let s=n();if(s)return`https://leadbay.app/app/campaign?campaign=${encodeURIComponent(s)}&lead=${l}`}return`https://leadbay.app/app/${u==="discover"||i.in_monitor===!1?"discover":"monitor"}?lead=${l}`}})}function Ke(e){let t=e?.location?.pos;if(!Array.isArray(t)||t.length<2)return null;let[n,r]=t;return typeof n!="number"||typeof r!="number"||!Number.isFinite(n)||!Number.isFinite(r)||n===0&&r===0||n<-90||n>90||r<-180||r>180?null:[n,r]}function W(e,t){let n=Math.PI/180,r=(t[0]-e[0])*n,o=(t[1]-e[1])*n,a=Math.sin(r/2)**2+Math.cos(e[0]*n)*Math.cos(t[0]*n)*Math.sin(o/2)**2;return 6371*2*Math.atan2(Math.sqrt(a),Math.sqrt(1-a))}var me=11;function Ve(e){let t=e.filter(a=>Array.isArray(a?.pos)&&a.pos.length===2);if(t.length===0)return null;let n=t.slice(0,me),r=n.map(a=>a.pos.join(",")),o=new URLSearchParams({api:"1",travelmode:"driving"});return r.length===1?o.set("destination",r[0]):(o.set("origin",r[0]),o.set("destination",r[r.length-1]),r.length>2&&o.set("waypoints",r.slice(1,-1).join("|"))),{url:`https://www.google.com/maps/dir/?${o.toString()}`,used:n.length,truncated:t.length-n.length}}function We(e){let t=0;for(let n=1;n<e.length;n++)t+=W(e[n-1].pos,e[n].pos);return t}function Qe(e,t){let n=e.slice();if(n.length<=2)return n;let r=[],o=t??n[0].pos;for(;n.length;){let a=0,i=1/0;for(let u=0;u<n.length;u++){let c=W(o,n[u].pos);c<i&&(i=c,a=u)}let[l]=n.splice(a,1);r.push(l),o=l.pos}return r}function Ye(e){let t=le(e.currentStatus),n=new S({kind:"select",value:$[0],load:async()=>$.map(i=>({value:i,label:pe[i]??i}))}),r=new S({validate:i=>String(i??"").trim()?null:"Add a note before logging"}),o=new x({autoLoad:!1,load:async()=>{let i=await p("leadbay_research_lead_by_id",{leadId:e.leadId,_triggered_by:e.ask}),l=Array.isArray(i?.contacts?.reachable)?i.contacts.reachable:[],u=Array.isArray(i?.contacts?.candidates)?i.contacts.candidates:[],c=new Set,s=[];for(let g of[...l,...u]){let h=g?.id??g?.contact_id;h&&c.has(h)||(h&&c.add(h),s.push(g))}let d=i?.engagement?.recommended_contact?.contact_id;return s.map(g=>Je(g,d))}}),a=new x({load:async()=>fe(e.lead,await be())});return{leadId:e.leadId,contacts:o,context:a,status:t,saveStatus:se({leadId:e.leadId,status:t,ask:e.ask}),epilogue:n,note:r,logOutreach:ce({leadId:e.leadId,ask:e.ask,status:n,note:r}),like:de(e.leadId),dislike:ue(e.leadId),qualify:ge({leadId:e.leadId,ask:e.ask,scored:he(e.lead)==="Requalify"})}}function Ze(e){let t=r=>typeof r=="function"?r():r!==!1,n=new S({value:"ok",validate:()=>t(e.email)||t(e.phone)?null:"Pick email, phone, or both."});return new v({tool:"leadbay_enrich_contacts",fields:[n],confirm:e.confirm===""?void 0:e.confirm??"Reveal this contact? It uses enrichment quota.",args:()=>({leadId:e.leadId,contactId:e.contactId,email:t(e.email),phone:t(e.phone),...e.ask?{_triggered_by:e.ask}:{}}),checkResult:r=>{let o=r??{};return o.error?o.message??"Enrichment failed":null},onSuccess:()=>e.onDone?.()})}var pe={STILL_CHASING:"Still chasing",COULD_NOT_REACH_STILL_TRYING:"Could not reach \\u2014 still trying",INTEREST_VALIDATED_OR_MEETING_PLANED:"Interested / meeting planned",NOT_INTERESTED_LOST:"Not interested \\u2014 lost"};function Je(e,t){let n=e??{},r=i=>typeof i=="string"&&i.trim()&&i!=="null"?i.trim():void 0,o=[r(n.first_name),r(n.last_name)].filter(Boolean).join(" ")||r(n.name)||"Unnamed contact",a=r(n.id)??r(n.contact_id);return{contactId:a,name:o,title:r(n.job_title)??r(n.title),email:r(n.email),phone:r(n.phone)??r(n.phone_number)??r((n.phone_numbers??[])[0]),linkedin:r(n.linkedin_page),recommended:n.recommended===!0||t!=null&&a===t,enriched:n.enrichment_done===!0}}function Xe(e){let t=null;return new x({...e.autoLoad!==void 0?{autoLoad:e.autoLoad}:{},pollEvery:e.pollEvery??4e3,until:n=>!!n?.all_done,load:async()=>{if(!t){let n=await p("leadbay_enrich_titles",{...e.leadIds?{leadIds:e.leadIds}:{},titles:e.titles,...e.email!==void 0?{email:e.email}:{},...e.phone!==void 0?{phone:e.phone}:{},...e.confirm!==void 0?{confirm:e.confirm}:{},_triggered_by:e.ask}),r=Array.isArray(n?.lead_ids)?n.lead_ids:[],o=n?.notification_id??null;if(t=o||r.length>0?{notification_id:o,lead_ids:r}:null,!t)return{...n,all_done:!0,no_job:!0}}return p("leadbay_bulk_enrich_status",{...t.notification_id?{notification_id:t.notification_id}:{},...t.lead_ids.length>0?{lead_ids:t.lead_ids}:{},...e.titles?{titles:e.titles}:{},...e.email!==void 0?{email:e.email}:{},...e.phone!==void 0?{phone:e.phone}:{},_triggered_by:e.ask})}})}function et(e){let t=()=>typeof e.order=="string"?e.order:String(e.order?.value??"");return new R({pageSize:e.pageSize??20,load:async({page:n,pageSize:r})=>{let o=await p("leadbay_pull_leads",{page:n,count:r,...e.lensId?{lensId:e.lensId}:{},...t()?{order:t()}:{},_triggered_by:e.ask}),a=o.leads??[];return{items:a,total:o.pagination?.total??a.length}}})}function tt(e){let t=e.source??"followups",n=()=>typeof e.order=="string"?e.order:String(e.order?.value??"");return new R({pageSize:e.pageSize??20,load:async({page:r,pageSize:o})=>{let i=t==="campaign"?await p("leadbay_campaign_call_sheet",{campaign_id:e.campaignId,page:r,count:o,_triggered_by:e.ask}):await p("leadbay_pull_followups",{page:r,count:o,...e.city?{city:e.city}:{},...n()?{order:n()}:{},_triggered_by:e.ask}),l=i.leads??i.items??[];return{items:l,total:i.total_leads??i.pagination?.total??l.length}}})}async function nt(e){let t=await p("leadbay_pull_followups",{count:e.sample??200,filtered:!1,...e.personal===void 0?{}:{personal:e.personal},_triggered_by:e.ask}),n=new Map;for(let o of t.leads??[]){let a=o?.sector_id;if(a==null||a==="")continue;let i=String(a);n.set(i,(n.get(i)??0)+1)}let r=e.sectors??{};return[...n.entries()].map(([o,a])=>{let i=r[o];return{id:o,label:i??`Sector ${o}`,sampled:a,resolved:i!=null}}).sort((o,a)=>a.sampled-o.sampled||o.id.localeCompare(a.id))}async function Q(e){let t=await p("leadbay_pull_followups",{count:1,set_filter:{criteria:e.criteria},...e.city?{city:e.city}:{},...e.cityId?{city_id:e.cityId}:{},...e.personal===void 0?{}:{personal:e.personal},_triggered_by:e.ask}),n=t.active_filters?.criteria??[],r=d=>typeof d?.type=="string"?d.type:null,o=new Set;for(let d of e.criteria){let g=r(d);g&&o.add(g)}(e.city||e.cityId)&&o.add("location_ids");let a=new Set(n.map(r).filter(d=>d!=null)),i=[...o].every(d=>a.has(d)),l=[...a].every(d=>o.has(d)),u=new Set(["location_ids"]),c=(d,g)=>d.filter(h=>r(h)===g).map(h=>JSON.stringify(Object.keys(h).filter(f=>f!=="type").sort().map(f=>[f,h[f]]))).sort().join("|"),s=[...o].every(d=>u.has(d)||c(e.criteria,d)===c(n,d));return{total:k(t.pagination?.total),applied:n,trusted:i&&l&&s}}async function rt(e){let t=[];return e.sectorIds?.length&&t.push({type:"sector_ids",sectors:e.sectorIds,is_excluded:!1}),Q({criteria:t,personal:e.personal,ask:e.ask,city:e.city,cityId:e.cityId})}async function ot(e){let t=[],n=e.buckets.length;for(let r of e.buckets){let o;try{let a=await Q({criteria:r.criterion?[r.criterion]:[],personal:e.personal,ask:e.ask});o={...r,total:a.total,trusted:a.trusted}}catch(a){o={...r,total:0,trusted:!1,error:V(a)}}t.push(o),e.onProgress?.(t.length,n,o)}return t}async function at(e){try{let t=await Q({criteria:[],personal:e.personal,ask:e.ask});return{id:"__all__",label:"Whole book",total:t.total,trusted:t.trusted}}catch(t){return{id:"__all__",label:"Whole book",total:0,trusted:!1,error:V(t)}}}async function it(e){let t=await p("leadbay_pull_followups",{count:e.sample??200,filtered:!1,...e.personal===void 0?{}:{personal:e.personal},_triggered_by:e.ask}),n=new Map;for(let a of t.leads??[]){let i=a?.[e.field];if(i==null||i===""||i==="null")continue;let l=String(i);n.set(l,(n.get(l)??0)+1)}let r=e.labels??{},o=[...n.entries()].map(([a,i])=>({id:a,label:r[a]??`${e.field} ${a}`,sampled:i,...e.criterion?{criterion:e.criterion(a)}:{}})).sort((a,i)=>i.sampled-a.sampled||a.id.localeCompare(i.id));return e.limit!=null?o.slice(0,e.limit):o}function ye(e){let t=e??{},n=l=>typeof l=="string"&&l&&l!=="null"?l:null,r=Array.isArray(t.phone_numbers)?t.phone_numbers:[],o=t.has_phone===!0||r.some(l=>n(l)!=null),a=n(t.email)!=null;return o||a?"reachable":k(t.contacts_count)+k(t.org_contacts_count)>0?"contacts_only":"empty"}async function lt(e){let t=e.sample??200,n=await p("leadbay_pull_followups",{count:t,filtered:!1,...e.personal===void 0?{}:{personal:e.personal},_triggered_by:e.ask}),r=Array.isArray(n.leads)?n.leads:[],o={reachable:0,contacts_only:0,empty:0};for(let i of r)o[ye(i)]++;let a=[["reachable","Callable now"],["contacts_only","Contacts, no channel"],["empty","No contacts"]];return{sampled:r.length,bookTotal:k(n.pagination?.total),rows:a.map(([i,l])=>({id:i,label:l,total:o[i],trusted:!0,sampled:o[i]}))}}function st(e){return new x({load:()=>p("leadbay_team_activity",{weeks:e.weeks??4,_triggered_by:e.ask})})}var ct="http://www.w3.org/2000/svg",E=(e,t)=>{let n=document.createElementNS(ct,e);for(let[r,o]of Object.entries(t))n.setAttribute(r,String(o));return n};function k(e){return typeof e=="number"&&isFinite(e)?e:0}function dt(e,t={}){let n=Array.isArray(e)?e:[];if(n.length===0){let m=document.createElement("div");m.className="lb-empty";let w=document.createElement("div");if(w.className="lb-empty-title",w.textContent=t.emptyTitle??"Nothing in this window",m.appendChild(w),t.emptyHint){let L=document.createElement("div");L.className="lb-empty-hint",L.textContent=t.emptyHint,m.appendChild(L)}return m}let r=t.width??640,o=t.height??160,a=40,i=8,l=12,u=26,c=r-a-i,s=o-l-u,d=Math.max(1,...n.map(m=>k(m.count))),g=m=>n.length===1?a+c/2:a+m/(n.length-1)*c,h=m=>l+s-k(m)/d*s,f=E("svg",{class:"lb-chart",viewBox:`0 0 ${r} ${o}`,preserveAspectRatio:"none",role:"img","aria-label":t.label??`Trend across ${n.length} points, peak ${d}`});for(let m of[0,d]){f.appendChild(E("line",{class:"lb-chart-grid",x1:a,x2:r-i,y1:h(m),y2:h(m)}));let w=E("text",{x:a-6,y:h(m)+4,"text-anchor":"end"});w.textContent=String(m),f.appendChild(w)}let y=n.map((m,w)=>`${g(w)},${h(m.count)}`);f.appendChild(E("path",{class:"lb-chart-area",d:`M${g(0)},${h(0)} L${y.join(" L")} L${g(n.length-1)},${h(0)} Z`})),f.appendChild(E("path",{class:"lb-chart-line",d:`M${y.join(" L")}`})),n.forEach((m,w)=>{f.appendChild(E("circle",{class:"lb-chart-dot",cx:g(w),cy:h(m.count),r:3}))});let _=n.length===1?[[0,"middle"]]:[[0,"start"],[n.length-1,"end"]];for(let[m,w]of _){let L=E("text",{x:g(m),y:o-8,"text-anchor":w});L.textContent=String(n[m].date??"").slice(0,10),f.appendChild(L)}return f}function ut(e){let t=document.createElement("div");t.className="lb-tiles";for(let n of e){let r=document.createElement("div");r.className="lb-tile";let o=document.createElement("span");o.className="lb-tile-label",o.textContent=n.label;let a=document.createElement("span");a.className="lb-tile-value",a.textContent=String(n.value),r.append(o,a),t.appendChild(r)}return t}function ht(e){let{rows:t,columns:n}=e;if(!t||t.length===0){let u=document.createElement("div");u.className="lb-empty";let c=document.createElement("div");if(c.className="lb-empty-title",c.textContent=e.emptyTitle??"Nothing to show",u.appendChild(c),e.emptyHint){let s=document.createElement("div");s.className="lb-empty-hint",s.textContent=e.emptyHint,u.appendChild(s)}return u}let r=e.sortKey??n[0].key,o=e.sortDir??"descending",a=document.createElement("table");a.className="lb-table";let i=()=>{a.textContent="";let u=document.createElement("thead"),c=document.createElement("tr");for(let g of n){let h=document.createElement("th");h.textContent=g.label,g.num&&h.setAttribute("data-num",""),h.setAttribute("aria-sort",g.key===r?o:"none"),h.setAttribute("tabindex","0"),h.setAttribute("role","button");let f=()=>{r===g.key?o=o==="ascending"?"descending":"ascending":(r=g.key,o=g.num?"descending":"ascending"),i(),e.onSort?.(r,o)};h.addEventListener("click",f),h.addEventListener("keydown",y=>{(y.key==="Enter"||y.key===" ")&&(y.preventDefault(),f())}),c.appendChild(h)}u.appendChild(c),a.appendChild(u);let s=t.slice().sort((g,h)=>{let f=g[r],y=h[r];if(typeof f=="string"||typeof y=="string"){let _=String(f??"").localeCompare(String(y??""));return o==="ascending"?_:-_}return o==="ascending"?k(f)-k(y):k(y)-k(f)}),d=document.createElement("tbody");for(let g of s){let h=document.createElement("tr");h.setAttribute("aria-selected","false");for(let f of n){let y=document.createElement("td");f.num&&y.setAttribute("data-num","");let _=f.cell?.(g);_==null?y.textContent=f.num?String(k(g[f.key])):String(g[f.key]??"\\u2014"):typeof _=="string"?y.textContent=_:y.appendChild(_),h.appendChild(y)}d.appendChild(h)}a.appendChild(d)};i();let l=document.createElement("div");return l.style.overflowX="auto",l.appendChild(a),l}var gt={VERSION:G,configure:Le,styles:Ie,call:p,report:T,setTelemetry:Ee,field:e=>new S(e),action:e=>new v(e),resource:e=>new x(e),list:e=>new R(e),bindSelect:Me,bindValue:ze,bindAction:qe,sparkline:dt,tiles:ut,leaderboard:ht,campaigns:je,segmentCount:rt,portfolioSectors:nt,coverage:ot,coverageBuckets:it,coverageTotal:at,reachCoverage:lt,leadReach:ye,outreach:ce,note:Ue,like:de,dislike:ue,qualify:ge,qualifyLabel:he,qualifyStatus:$e,leadStatus:le,setStatus:se,relanceRow:Ye,enrichContact:Ze,sectorLabels:be,leadContext:fe,leadPos:Ke,distanceKm:W,routeUrl:Ve,routeDistanceKm:We,orderByProximity:Qe,GOOGLE_MAPS_STOP_LIMIT:me,EPILOGUE_LABELS:pe,sortOrder:De,leadHistory:He,leadProfile:Be,enrichment:Xe,callList:tt,leadList:et,leadSource:Ge,teamActivity:st,EPILOGUE_STATUSES:$,LEAD_STATUSES:z,SORT_ORDERS:H};typeof globalThis<"u"&&(globalThis.LeadbayArtifacts=gt);})();</script>\n<script>(function () {\n // The recipe pins the light theme, set before the skin.\n document.documentElement.setAttribute("data-lb-theme", "light")\n const lb = window.LeadbayArtifacts\n lb.styles()\n\n const ASK = "Triage board"\n const PAGE_SIZE = 10\n const ACTIONS = [\n { value: "STILL_CHASING", label: "Still chasing" },\n { value: "INTEREST_VALIDATED_OR_MEETING_PLANED", label: "Meeting planned" },\n { value: "COULD_NOT_REACH_STILL_TRYING", label: "Could not reach" },\n { value: "NOT_INTERESTED_LOST", label: "Not interested" },\n ]\n\n const state = { page: 0, leads: [], total: 0, loaded: false, selected: new Set(), taste: "all", verdict: "all" }\n\n // ---- small helpers ----\n function h(tag, props, ...kids) {\n const el = document.createElement(tag)\n for (const [k, v] of Object.entries(props || {})) {\n if (v == null || v === false) continue\n if (k === "class") el.className = v\n else if (k === "text") el.textContent = v\n else if (k.startsWith("on")) el.addEventListener(k.slice(2).toLowerCase(), v)\n else el.setAttribute(k, v === true ? "" : String(v))\n }\n for (const kid of kids.flat()) if (kid != null && kid !== false) el.append(kid instanceof Node ? kid : String(kid))\n return el\n }\n const real = (v) => (v && v !== "null" ? v : null)\n const svg = (paths) => {\n const s = document.createElementNS("http://www.w3.org/2000/svg", "svg")\n s.setAttribute("viewBox", "0 0 24 24"); s.setAttribute("fill", "none"); s.setAttribute("stroke", "currentColor")\n s.setAttribute("stroke-width", "2"); s.setAttribute("stroke-linecap", "round"); s.setAttribute("stroke-linejoin", "round")\n s.setAttribute("aria-hidden", "true"); s.innerHTML = paths; return s\n }\n const ICON = {\n like: \'<path d="M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z"/>\',\n dislike: \'<path d="M17 14V2"/><path d="M9 18.12 10 14H4.17a2 2 0 0 1-1.92-2.56l2.33-8A2 2 0 0 1 6.5 2H20a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.76a2 2 0 0 0-1.79 1.11L12 22a3.13 3.13 0 0 1-3-3.88Z"/>\',\n out: \'<line x1="7" y1="17" x2="17" y2="7"/><polyline points="7 7 17 7 17 17"/>\',\n }\n // 10-segment fit bar: \u25B0 profile fit, \u2756 AI boost at the end of the run, \u25B1 empty.\n function bar(lead) {\n const filled = Math.max(0, Math.min(10, Math.round((lead.score || 0) / 10)))\n const boost = (lead.qualification_summary && lead.qualification_summary.avg_qualification_boost) || 0\n const ai = Math.max(0, Math.min(filled, Math.round(boost / 3.3)))\n return "\u25B0".repeat(filled - ai) + "\u2756".repeat(ai) + "\u25B1".repeat(10 - filled)\n }\n function verdictOf(lead) {\n const b = (lead.qualification_summary && lead.qualification_summary.avg_qualification_boost) || 0\n return b > 0 ? "boosted" : b < 0 ? "penalised" : "neutral"\n }\n function sizeText(size) {\n if (!size || (!size.min && !size.max)) return null\n return size.min && size.max ? `${size.min}\u2013${size.max} employees` : `${size.min || size.max}+ employees`\n }\n function whyFits(lead) {\n return (\n real(lead.short_description) ||\n (lead.tags || []).slice(0, 2).map((t) => t.display_name).join(" \xB7 ") ||\n (lead.qualification_summary && lead.qualification_summary.best_response_excerpt) ||\n "No description yet \u2014 qualify to add one"\n )\n }\n const url = (host) => (/^https?:\\/\\//.test(host) ? host : "https://" + host)\n const leadUrl = (lead) => `https://leadbay.app/app/discover?lead=${encodeURIComponent(lead.id)}`\n const today = (lead) => new Set((lead.epilogue_today_statuses || []).map((e) => String(e.type).replace(/^EPILOGUE_/, "")))\n function toolMissing(err) {\n return /unknown tool|\\btool\\b[^.]*\\bnot found|not_in_manifest|no such tool/i.test(String((err && (err.message || err.code)) || ""))\n }\n function say(msg, text, tone) { msg.textContent = text; msg.dataset.tone = tone || "" }\n\n // ---- toolbar ----\n const tally = document.getElementById("tally")\n const deck = document.getElementById("deck")\n const range = document.getElementById("range")\n const prev = document.getElementById("prev")\n const next = document.getElementById("next")\n const bulkMsg = document.getElementById("bulk-msg")\n document.getElementById("f-taste").addEventListener("change", (e) => { state.taste = e.target.value; render() })\n document.getElementById("f-verdict").addEventListener("change", (e) => { state.verdict = e.target.value; render() })\n\n const bulkStatus = lb.leadStatus("")\n lb.bindSelect(document.getElementById("bulk-status"), bulkStatus)\n const bulkWrite = lb.setStatus({ leadIds: () => [...state.selected], status: bulkStatus, ask: ASK })\n lb.bindAction(document.getElementById("bulk-apply"), bulkWrite)\n bulkWrite.subscribe((a) => {\n if (a.loading) say(bulkMsg, "Applying\u2026")\n else if (a.error) say(bulkMsg, a.error.message, "error")\n else if (a.lastResult) say(bulkMsg, `Status applied to ${state.selected.size} lead${state.selected.size === 1 ? "" : "s"}.`, "ok")\n })\n document.getElementById("select-all").addEventListener("change", (e) => {\n for (const lead of visible()) e.target.checked ? state.selected.add(lead.id) : state.selected.delete(lead.id)\n render()\n })\n\n prev.addEventListener("click", () => loadPage(state.page - 1))\n next.addEventListener("click", () => loadPage(state.page + 1))\n\n async function loadPage(page) {\n deck.setAttribute("data-lb-state", "loading")\n prev.disabled = next.disabled = true\n try {\n const res = await lb.call("leadbay_pull_leads", { page, count: PAGE_SIZE, _triggered_by: ASK })\n state.leads = (res && res.leads) || []\n state.total = (res && res.pagination && res.pagination.total) || state.leads.length\n state.page = page\n state.loaded = true\n render()\n } catch (err) {\n state.loaded = true\n render()\n say(bulkMsg, err.message || "Could not load that page.", "error")\n } finally {\n deck.setAttribute("data-lb-state", "ready")\n renderPager()\n }\n }\n\n function visible() {\n return state.leads.filter((lead) => {\n if (state.taste === "liked" && !lead.liked) return false\n if (state.taste === "disliked" && !lead.disliked) return false\n if (state.taste === "none" && (lead.liked || lead.disliked)) return false\n if (state.verdict !== "all" && verdictOf(lead) !== state.verdict) return false\n return true\n })\n }\n\n function renderPager() {\n const from = state.page * PAGE_SIZE + 1\n range.textContent = state.leads.length ? `${from}\u2013${Math.min(from + state.leads.length - 1, state.total)} of ${state.total}` : ""\n prev.disabled = state.page === 0\n next.disabled = (state.page + 1) * PAGE_SIZE >= state.total\n }\n\n function render() {\n if (!state.loaded) {\n tally.textContent = "Loading today\'s leads\u2026"\n deck.replaceChildren(h("div", { class: "lb-empty" }, h("div", { class: "lb-empty-title", text: "Loading today\'s leads\u2026" })))\n return\n }\n const rows = visible()\n tally.textContent = `${rows.length} lead${rows.length === 1 ? "" : "s"}${rows.length !== state.leads.length ? ` of ${state.leads.length}` : ""}`\n deck.replaceChildren(...(rows.length ? rows.map(card) : [h("div", { class: "lb-empty" }, h("div", { class: "lb-empty-title", text: "No lead matches these filters" }), h("div", { class: "lb-empty-hint", text: "Reset Taste and Verdict to All." }))]))\n renderPager()\n }\n\n // ---- one card ----\n function card(lead) {\n const name = lead.name || "Unnamed company"\n const msg = h("div", { class: "lb-msg", role: "status", "aria-live": "polite" })\n\n // taste\n const likeBtn = h("button", { class: "lb-btn lb-btn-icon", type: "button", title: "Like", "aria-label": `Like ${name}`, "aria-pressed": lead.liked ? "true" : "false" }, svg(ICON.like))\n const dislikeBtn = h("button", { class: "lb-btn lb-btn-icon", type: "button", title: "Dislike", "data-taste": "disliked", "aria-label": `Dislike ${name}`, "aria-pressed": lead.disliked ? "true" : "false" }, svg(ICON.dislike))\n const like = lb.like(lead.id), dislike = lb.dislike(lead.id)\n lb.bindAction(likeBtn, like); lb.bindAction(dislikeBtn, dislike)\n like.subscribe((a) => { if (a.lastResult) { lead.liked = true; lead.disliked = false; paintTaste() } if (a.error) say(msg, a.error.message, "error") })\n dislike.subscribe((a) => { if (a.lastResult) { lead.disliked = true; lead.liked = false; paintTaste() } if (a.error) say(msg, a.error.message, "error") })\n const tasteChip = h("span", { class: "lb-chip", "data-taste": "", hidden: true })\n function paintTaste() {\n likeBtn.setAttribute("aria-pressed", lead.liked ? "true" : "false")\n dislikeBtn.setAttribute("aria-pressed", lead.disliked ? "true" : "false")\n tasteChip.hidden = !lead.liked && !lead.disliked\n tasteChip.textContent = lead.liked ? "Liked" : lead.disliked ? "Disliked" : ""\n }\n paintTaste()\n\n // selection for the bulk apply\n const pick = h("input", { type: "checkbox", "aria-label": `Select ${name} for bulk apply` })\n pick.checked = state.selected.has(lead.id)\n pick.addEventListener("change", () => { pick.checked ? state.selected.add(lead.id) : state.selected.delete(lead.id) })\n\n // what it is\n const rc = lead.recommended_contact\n const who = rc ? [rc.first_name, rc.last_name].filter(Boolean).join(" ") : null\n const phone = real((lead.phone_numbers || [])[0])\n const email = real(lead.email)\n const place = [lead.location && lead.location.city, lead.location && lead.location.state].filter(Boolean).join(", ")\n const facts = [place, sizeText(lead.size)].filter(Boolean)\n\n // status \u2014 saves on change, no button\n const statusMsg = h("div", { class: "lb-msg", role: "status", "aria-live": "polite" })\n const statusSel = h("select", { class: "lb-select", "aria-label": `Lead status for ${name}` })\n const statusField = lb.leadStatus("")\n lb.bindSelect(statusSel, statusField)\n const statusWrite = lb.setStatus({ leadId: lead.id, status: statusField, ask: ASK })\n statusSel.addEventListener("change", () => statusWrite.run())\n statusWrite.subscribe((a) => {\n if (a.loading) say(statusMsg, "Saving\u2026")\n else if (a.error) say(statusMsg, a.error.message, "error")\n else if (a.lastResult) say(statusMsg, "Saved", "ok")\n })\n\n // prospecting actions \u2014 toggles over today\'s list, as in the web app\n const actMsg = h("div", { class: "lb-msg", role: "status", "aria-live": "polite" })\n const toggles = ACTIONS.map((a) =>\n h("button", { class: "lb-action", type: "button", role: "checkbox", "data-value": a.value, "aria-label": `${a.label} for ${name}`, text: a.label, onClick: () => toggle(a) }),\n )\n function paintToggles() { const on = today(lead); for (const b of toggles) b.setAttribute("aria-checked", on.has(b.dataset.value) ? "true" : "false") }\n paintToggles()\n async function toggle(a) {\n const selected = !today(lead).has(a.value)\n for (const b of toggles) b.disabled = true\n say(actMsg, "Saving\u2026")\n try {\n await lb.call("leadbay_set_prospecting_action", { lead_id: lead.id, action: a.value, selected, _triggered_by: ASK })\n const type = "EPILOGUE_" + a.value\n const list = lead.epilogue_today_statuses || []\n lead.epilogue_today_statuses = selected ? list.concat({ type, added_at: new Date().toISOString() }) : list.filter((e) => e.type !== type)\n say(actMsg, `\u201C${a.label}\u201D ${selected ? "on" : "off"}`, "ok")\n } catch (err) {\n say(actMsg, toolMissing(err) ? "Needs the next Leadbay release \u2014 set it in the web app for now." : err.message || "Could not save.", "error")\n } finally {\n for (const b of toggles) b.disabled = false\n paintToggles()\n }\n }\n\n // note \u2014 the web app\'s note field, never report_outreach\n const noteInput = h("input", { class: "lb-input", type: "text", placeholder: "What happened?", "aria-label": `Outreach note for ${name}` })\n const noteField = lb.field({ validate: (v) => (v && String(v).trim() ? null : "Add a note first") })\n lb.bindValue(noteInput, noteField)\n const noteBtn = h("button", { class: "lb-btn lb-btn-submit", type: "button", text: "Log outreach" })\n const noteWrite = lb.note({ leadId: lead.id, note: noteField })\n lb.bindAction(noteBtn, noteWrite)\n noteWrite.subscribe((a) => {\n if (a.loading) say(actMsg, "Saving note\u2026")\n else if (a.error) say(actMsg, a.error.message, "error")\n else if (a.lastResult) { say(actMsg, "Outreach logged", "ok"); noteInput.value = ""; noteField.setValue("") }\n })\n\n // qualify \u2014 mandatory on every card\n const qBtn = h("button", { class: "lb-btn lb-btn-ai", type: "button", text: lb.qualifyLabel(lead), "aria-label": `${lb.qualifyLabel(lead)} ${name}` })\n const q = lb.qualify({ leadId: lead.id, ask: ASK, scored: lb.qualifyLabel(lead) === "Requalify" })\n lb.bindAction(qBtn, q)\n q.subscribe((a) => {\n if (a.loading) say(msg, "Queueing\u2026")\n else if (a.error) say(msg, a.error.message, "error")\n else if (a.lastResult) say(msg, "Qualifying \u2014 the verdict lands shortly.", "ok")\n })\n\n const excerpt = lead.qualification_summary && lead.qualification_summary.best_response_excerpt\n const boost = (lead.qualification_summary && lead.qualification_summary.avg_qualification_boost) || 0\n const tags = (lead.tags || []).map((t) => h("span", { text: t.display_name }))\n\n return h("article", { class: "lb-card" },\n h("div", { class: "lb-card-top" },\n pick,\n h("div", { class: "lb-lead-title" }, lead.website ? h("a", { href: url(lead.website), target: "_blank", rel: "noopener", text: name }) : name),\n h("span", { class: "lb-group" }, likeBtn, dislikeBtn),\n ),\n h("div", { class: "lb-chips" }, tasteChip),\n h("div", { class: "lb-sections" },\n h("div", { class: "lb-section" },\n facts.length ? h("div", { class: "lb-tags-plain" }, facts.map((f) => h("span", { text: f }))) : null,\n h("div", { class: "lb-sub", text: whyFits(lead) }),\n ),\n h("div", { class: "lb-section" },\n h("div", { class: "lb-sec-title", text: "Fit" }),\n h("div", { class: "fit" },\n h("code", { class: "bar", "aria-hidden": "true", text: bar(lead) }),\n h("span", { class: "lb-vh", text: `Fit: ${verdictOf(lead)}` }),\n h("span", { class: "verdict", "data-v": verdictOf(lead), text: boost > 0 ? `AI boost +${Math.round(boost)}` : boost < 0 ? `AI penalty ${Math.round(boost)}` : "No AI adjustment" }),\n ),\n excerpt ? h("div", { class: "lb-sub excerpt", text: excerpt }) : null,\n ),\n h("div", { class: "lb-section" },\n h("div", { class: "lb-sec-title", text: "Intent tags" }),\n tags.length ? h("div", { class: "lb-tags-intent" }, tags) : h("div", { class: "lb-tags-empty", text: "None \u2014 the qualifier found no buying signal" }),\n ),\n h("div", { class: "lb-section" },\n h("div", { class: "lb-sec-title", text: "Data" }),\n h("div", { class: "lb-sub" }, h("span", { "aria-hidden": "true", text: "\u{1F464} " }), who ? who + (rc.job_title ? " \xB7 " + rc.job_title : "") : "No contact yet \u2014 enrich to find one"),\n h("div", { class: "lb-sub" }, h("span", { class: "lb-vh", text: "Company switchboard: " }), h("span", { "aria-hidden": "true", text: "\u{1F3E2} " }),\n [phone && "\u260E " + phone, email && "\u2709 " + email].filter(Boolean).join(" \xB7 ") ? [phone && "\u260E " + phone, email && "\u2709 " + email].filter(Boolean).join(" \xB7 ") + " (company line)" : "No phone or email \u2014 enrich to look for them"),\n ),\n h("div", { class: "lb-section" },\n h("div", { class: "lb-sec-title", text: "Status" }),\n statusSel, statusMsg,\n ),\n h("div", { class: "lb-section" },\n h("div", { class: "lb-sec-title", text: "Outreach" }),\n h("div", { class: "lb-stack" },\n h("div", { class: "actions", role: "group", "aria-label": `Prospecting actions for ${name}` }, toggles),\n noteInput, noteBtn,\n ),\n actMsg,\n ),\n h("div", { class: "lb-card-foot" },\n qBtn,\n h("span", { class: "lb-spacer" }),\n h("a", { class: "lb-link-out", href: leadUrl(lead), target: "_blank", rel: "noopener", "aria-label": `Open ${name} in Leadbay` }, "Open in Leadbay ", svg(ICON.out)),\n ),\n ),\n msg,\n )\n }\n\n render()\n loadPage(0)\n})()</script>\n' } };
|
|
27498
|
+
ARTIFACT_TEMPLATES = { "route_planner": { "title": "Route Planner", "icon": "map", "description": "Your follow-ups on a map of your country: open a lead, set its status, log what happened, and build the day's route.", "tools": ["leadbay_followups_map", "leadbay_get_basemap", "leadbay_set_lead_status", "leadbay_set_prospecting_action", "leadbay_add_note", "leadbay_report_artifact_error"], "html": '<title>Leadbay Route Planner</title>\n<!-- The only part of this board an agent may edit. "city": where the rep is\n going ("Lyon"), or "" for all follow-ups. Never a country. -->\n<script type="application/json" id="lb-board-config">{"city": ""}</script>\n<style>\n.leaflet-image-layer,.leaflet-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane,.leaflet-pane>canvas,.leaflet-pane>svg,.leaflet-tile,.leaflet-tile-container,.leaflet-zoom-box{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:0 0}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-bottom,.leaflet-top{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-pan-anim .leaflet-tile,.leaflet-zoom-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-control,.leaflet-popup-pane{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-image-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-image-layer.leaflet-interactive,.leaflet-marker-icon.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:rgba(255,255,255,.5)}.leaflet-container{font-family:"Helvetica Neue",Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px rgba(0,0,0,.65);border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:focus,.leaflet-bar a:hover{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:bold 18px \'Lucida Console\',Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px rgba(0,0,0,.4);background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(images/layers.png);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(images/layers-2x.png);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(images/marker-icon.png)}.leaflet-container .leaflet-control-attribution{background:#fff;background:rgba(255,255,255,.8);margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:focus,.leaflet-control-attribution a:hover{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:rgba(255,255,255,.8);text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers{box-shadow:none}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-layers{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:17px 0;margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px rgba(0,0,0,.4)}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:0 0}.leaflet-container a.leaflet-popup-close-button:focus,.leaflet-container a.leaflet-popup-close-button:hover{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto}.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px rgba(0,0,0,.4)}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before,.leaflet-tooltip-top:before{position:absolute;pointer-events:none;border:6px solid transparent;background:0 0;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}\n</style>\n<style>\n/* UI colour comes from the skin that `lb.styles()` already injected. This\n page used to declare a parallel palette \u2014 a blue-tinted #f4f5f7 ground\n behind the kit\'s #f0f0f0 toolbar, #e2e5ea borders beside its #e0e0e0 \u2014\n close enough that nobody could name the problem, wrong enough to look\n unfinished.\n\n The board is LIGHT, always \u2014 the same rule the triage board carries. The\n skin ships a dark mode that fires on `prefers-color-scheme: dark`, so\n aliasing ALONE handed a rep on a dark-mode laptop white text on a light\n ground. The pin below holds the skin\'s own tokens at their light values\n under both dark selectors. That is what `data-lb-theme="light"` would do\n if this page owned an <html> element to hang it on; it does not, because\n the host wraps the fragment.\n\n Three colours stay ours, because the kit has none for them: --land,\n --land-border and --water draw a country, not UI chrome. */\n:root {\n --bg: var(--color-gray-2);\n --panel: var(--color-white);\n --ink: var(--lb-fg);\n --muted: var(--lb-muted);\n --line: var(--lb-border);\n --route: var(--lb-fg);\n --acted: var(--color-gold-foreground);\n --focus-ring: color-mix(in srgb, var(--color-blue-foreground) 35%, transparent);\n --st-wanted: var(--color-blue-foreground);\n --st-won: var(--color-green-foreground);\n --st-lost: var(--color-red-foreground);\n --st-unwanted: var(--color-gray-6);\n --st-default: var(--color-gray-8);\n --font: var(--lb-font, "Nikkei Maru", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif);\n\n /* Prospecting-action yellow, from the web app\'s packages/style/color.css.\n The kit has blue, green and red with identical values; yellow is the one\n it lacks. */\n --color-yellow-background: oklch(0.972 0.054 91);\n --color-yellow-foreground: oklch(0.864 0.181 91);\n\n /* The map itself \u2014 no kit equivalent. */\n --land: #eceef1;\n --land-border: #c5cad3;\n --water: #dce5ee;\n}\n/* The light pin. Every skin token this page reads, held at its light value \u2014\n so the board looks the same whatever the rep\'s OS is set to, and the map\n colours need no dark variant because there is no dark board.\n\n The selector is tripled on purpose. `lb.styles()` appends the skin to\n <head> at runtime, i.e. AFTER this sheet, so a plain `:root` here loses to\n the skin\'s `:root[data-theme=dark]` on source order. `:root:root:root`\n outranks it on specificity instead, which source order cannot undo. */\n:root:root:root {\n --lb-surface: var(--color-gray-1);\n --lb-border: var(--color-gray-3);\n --lb-fg: var(--color-black);\n --lb-muted: var(--color-gray-8);\n --lb-field: var(--color-white);\n --lb-chip-bg: var(--color-gray-2);\n --lb-control-border: var(--color-gray-6);\n --lb-shadow: 0 0.5rem 1.5rem oklch(0 0 0/.06), 0 0.125rem 0.5rem oklch(0 0 0/.04);\n color-scheme: light;\n --color-blue-background: oklch(0.947 0.029 251); --color-blue-foreground: oklch(0.564 0.181 251);\n --color-green-background: oklch(0.947 0.029 141); --color-green-foreground: oklch(0.564 0.181 141);\n --color-red-background: oklch(0.947 0.029 26); --color-red-foreground: oklch(0.564 0.191 26);\n --color-gold-background: oklch(0.972 0.049 91); --color-gold-foreground: oklch(0.667 0.177 91);\n --color-cherry-background: oklch(0.947 0.029 15); --color-cherry-foreground: oklch(0.44 0.146 15);\n --color-purple-background: oklch(0.947 0.029 288); --color-purple-foreground: oklch(0.464 0.181 288);\n --color-teal-background: oklch(0.977 0.019 180); --color-teal-foreground: oklch(0.574 0.182 180);\n}\n\nhtml, body { height: 100%; }\nbody {\n background: var(--bg);\n color: var(--ink);\n font-family: var(--font);\n padding-inline: 16px;\n padding-block: 12px;\n box-sizing: border-box;\n}\n.app {\n height: 100%;\n display: grid;\n grid-template-rows: auto auto 1fr;\n gap: 12px;\n min-height: 0;\n}\n\n/* Top bar */\n.topbar { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 20px; }\n.brand { display: flex; flex-direction: column; gap: 2px; }\n.brand h1 { margin: 0; font-size: 17px; font-weight: 700; letter-spacing: -0.01em; text-wrap: balance; }\n.brand .tally { font-size: 12px; color: var(--muted); font-variant-numeric: tabular-nums; }\n.city-form { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }\n.city-form .lb-input { min-width: 0; width: 200px; max-width: 100%; }\n.city-hint { font-size: 11px; color: var(--muted); flex-basis: 100%; }\n.legend { display: flex; flex-wrap: wrap; gap: 6px 12px; font-size: 11px; color: var(--muted); margin-inline-start: auto; }\n.legend span { display: inline-flex; align-items: center; gap: 5px; }\n.legend i { width: 10px; height: 10px; border-radius: 50%; display: inline-block; }\n.legend .ring { background: transparent; box-shadow: inset 0 0 0 2px var(--acted); }\n.notice:empty { display: none; }\n.notice { font-size: 13px; padding: 10px 12px; border-radius: 10px; background: var(--panel); border: 1px solid var(--line); display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }\n.notice[data-tone="error"] { border-color: var(--st-lost); }\n\n/* Work area */\n.work { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 12px; min-height: 0; }\n.map-frame { position: relative; min-height: 0; border-radius: 14px; overflow: hidden; border: 1px solid var(--line); }\n#map { position: absolute; inset: 0; }\n.leaflet-container { background: var(--water); font-family: var(--font); }\n.leaflet-container .dept { fill: var(--land); fill-opacity: 1; stroke: var(--land-border); stroke-width: 0.7px; }\n.leaflet-container .route-line { stroke: var(--route); stroke-width: 2px; stroke-dasharray: 6 5; fill: none; stroke-opacity: 0.8; }\n.leaflet-control-attribution { background: var(--panel) !important; color: var(--muted) !important; font-size: 10px !important; }\n.leaflet-control-attribution a { color: var(--muted) !important; }\n.leaflet-bar a { background: var(--panel); color: var(--ink); border-color: var(--line); }\n.map-status { position: absolute; top: 10px; left: 50%; transform: translateX(-50%); z-index: 500; background: var(--panel); color: var(--ink); border: 1px solid var(--line); border-radius: 999px; padding: 6px 12px; font-size: 12px; display: flex; gap: 8px; align-items: center; box-shadow: 0 2px 8px rgba(0,0,0,.12); }\n\n.pin-wrap { background: none; border: 0; }\n.pin {\n box-sizing: border-box; width: 100%; height: 100%; border-radius: 50%;\n display: grid; place-items: center;\n background: var(--st-default); border: 2px solid var(--panel);\n box-shadow: 0 1px 3px rgba(0,0,0,.35);\n color: #fff; font: 700 11px/1 var(--font); font-variant-numeric: tabular-nums;\n transition: transform .15s ease;\n}\n.pin[data-status="WANTED"] { background: var(--st-wanted); }\n.pin[data-status="WON"] { background: var(--st-won); }\n.pin[data-status="LOST"] { background: var(--st-lost); }\n.pin[data-status="UNWANTED"] { background: var(--st-unwanted); }\n.pin[data-acted="yes"] { box-shadow: 0 0 0 3px var(--acted), 0 1px 3px rgba(0,0,0,.35); }\n.pin[data-stop="yes"] { border-color: var(--route); }\n.pin[data-selected="yes"] { transform: scale(1.2); box-shadow: 0 0 0 5px var(--focus-ring), 0 1px 3px rgba(0,0,0,.35); }\n.pin[data-selected="yes"][data-acted="yes"] { box-shadow: 0 0 0 3px var(--acted), 0 0 0 7px var(--focus-ring); }\n@media (prefers-reduced-motion: reduce) { .pin { transition: none; } }\n.pin-label {\n display: none; position: absolute; left: calc(100% + 5px); top: 50%; transform: translateY(-50%);\n max-width: 140px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;\n font: 600 11px/1.3 var(--font); color: var(--ink);\n background: var(--panel); border: 1px solid var(--line); border-radius: 6px; padding: 1px 6px;\n box-shadow: 0 1px 3px rgba(0,0,0,.18);\n}\n.pin-label[data-visible="yes"] { display: block; }\n.pin[data-selected="yes"] + .pin-label { max-width: 220px; border-color: var(--st-wanted); left: calc(100% + 8px); }\n\n/* Side panel */\n.panel { background: var(--panel); border: 1px solid var(--line); border-radius: 14px; min-height: 0; display: flex; flex-direction: column; }\n.panel-scroll { overflow-y: auto; padding: 16px; display: flex; flex-direction: column; gap: 20px; min-height: 0; }\n.panel-head { display: flex; align-items: flex-start; gap: 10px; }\n.panel-head h2 { margin: 0; font-size: 18px; line-height: 1.25; text-wrap: balance; flex: 1; min-width: 0; overflow-wrap: anywhere; }\n.icon-btn { flex: none; width: 32px; height: 32px; border-radius: 8px; border: 1px solid var(--line); background: transparent; color: var(--ink); display: grid; place-items: center; cursor: pointer; }\n.icon-btn:hover { background: var(--bg); }\n.icon-btn:focus-visible, .row-btn:focus-visible, .choice:focus-visible { outline: 2px solid var(--st-wanted); outline-offset: 2px; }\n.icon-btn svg { width: 16px; height: 16px; }\n.facts { display: flex; flex-direction: column; gap: 4px; font-size: 13px; color: var(--muted); }\n.facts .address { color: var(--ink); }\n.chips { display: flex; flex-wrap: wrap; gap: 6px; }\n.chip { font-size: 11px; font-weight: 600; padding: 3px 8px; border-radius: 999px; background: var(--bg); color: var(--ink); border: 1px solid var(--line); display: inline-flex; align-items: center; gap: 5px; }\n.chip i { width: 8px; height: 8px; border-radius: 50%; background: var(--st-default); }\n.chip[data-status="WANTED"] i { background: var(--st-wanted); }\n.chip[data-status="WON"] i { background: var(--st-won); }\n.chip[data-status="LOST"] i { background: var(--st-lost); }\n.chip[data-status="UNWANTED"] i { background: var(--st-unwanted); }\n.chip.acted { border-color: var(--acted); }\n.chip.acted i { background: var(--acted); }\n.actions { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }\n.links { display: flex; flex-wrap: wrap; gap: 14px; }\n.section-title { font-size: 11px; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: var(--muted); margin: 0; display: flex; justify-content: space-between; gap: 8px; }\n.section { display: flex; flex-direction: column; gap: 8px; }\n.section .lb-select, .section .lb-input, .section textarea { width: 100%; box-sizing: border-box; }\n.section textarea { min-height: 64px; resize: vertical; font: inherit; }\n.choices { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }\n/* Colours are the web app\'s, per action (ProspectionCell.tsx): Still chasing\n blue, Meeting planned green, Could not reach yellow, Not interested red \u2014\n so a rep who knows the web app reads these at a glance. The web app uses\n the foreground only as an ICON colour on the tinted badge, never as text:\n the yellow foreground is lightness 0.864 and unreadable as a label. Same\n here \u2014 the dot and the border take the accent, the label stays ink. */\n.choice[data-value="STILL_CHASING"] { --action-bg: var(--color-blue-background); --action-fg: var(--color-blue-foreground); }\n.choice[data-value="INTEREST_VALIDATED_OR_MEETING_PLANED"] { --action-bg: var(--color-green-background); --action-fg: var(--color-green-foreground); }\n.choice[data-value="COULD_NOT_REACH_STILL_TRYING"] { --action-bg: var(--color-yellow-background); --action-fg: var(--color-yellow-foreground); }\n.choice[data-value="NOT_INTERESTED_LOST"] { --action-bg: var(--color-red-background); --action-fg: var(--color-red-foreground); }\n.choice { font: inherit; font-size: 13px; text-align: start; padding: 9px 10px; border-radius: 10px; border: 1px solid var(--line); background: transparent; color: var(--ink); cursor: pointer; display: flex; align-items: center; gap: 8px; }\n.choice::before { content: ""; flex: none; width: 8px; height: 8px; border-radius: 50%; background: var(--action-fg, var(--muted)); }\n.choice:hover { background: var(--bg); }\n.choice[aria-checked="true"] { border-color: var(--action-fg, var(--acted)); background: var(--action-bg, var(--bg)); }\n.choice[aria-checked="true"]:hover { background: color-mix(in srgb, var(--action-bg) 80%, var(--action-fg)); }\n.choice[disabled] { opacity: .6; cursor: progress; }\n.msg { font-size: 12px; color: var(--muted); min-height: 1em; }\n.msg:empty { display: none; }\n.msg[data-tone="error"] { color: var(--st-lost); }\n.msg[data-tone="ok"] { color: var(--st-won); }\n.rows { display: flex; flex-direction: column; gap: 2px; }\n/* Dividers do NOT react to hover. An earlier version faded the line above and\n below the hovered row, which meant simply scanning the list made lines\n ripple in and out \u2014 the animation drew more attention than the row did.\n Instead the rows are spaced 2px apart, so the hover block floats in a gap\n and never shares an edge with a line. Only the background moves. */\n.row-btn {\n font: inherit; position: relative;\n display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 10px;\n padding: 9px 10px; margin-inline: -6px; border: 0; border-radius: 10px;\n background: transparent; color: var(--ink); text-align: start; cursor: pointer;\n transition: background-color .12s ease;\n}\n.row-btn + .row-btn::before {\n content: ""; position: absolute; inset-inline: 10px; top: -1px; height: 1px;\n background: var(--line);\n}\n.row-btn:hover, .row-btn:focus-visible { background: color-mix(in srgb, var(--ink) 4%, transparent); }\n.row-btn:active { background: color-mix(in srgb, var(--ink) 8%, transparent); }\n@media (prefers-reduced-motion: reduce) { .row-btn { transition: none; } }\n.row-main { display: flex; flex-direction: column; gap: 2px; min-width: 0; }\n.row-name { font-size: 13px; font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }\n.row-sub { font-size: 12px; color: var(--muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }\n.row-meta { font-size: 12px; color: var(--muted); font-variant-numeric: tabular-nums; }\n.dot { width: 10px; height: 10px; border-radius: 50%; background: var(--st-default); box-sizing: border-box; }\n.dot[data-status="WANTED"] { background: var(--st-wanted); }\n.dot[data-status="WON"] { background: var(--st-won); }\n.dot[data-status="LOST"] { background: var(--st-lost); }\n.dot[data-status="UNWANTED"] { background: var(--st-unwanted); }\n.dot[data-acted="yes"] { box-shadow: 0 0 0 2px var(--panel), 0 0 0 4px var(--acted); }\n.stop { display: grid; grid-template-columns: 24px minmax(0, 1fr) auto; align-items: center; gap: 10px; padding: 8px 0; border-bottom: 1px solid var(--line); }\n.stop:last-child { border-bottom: 0; }\n.stop-num { width: 24px; height: 24px; border-radius: 50%; display: grid; place-items: center; font-size: 11px; font-weight: 700; background: var(--ink); color: var(--panel); font-variant-numeric: tabular-nums; }\n.stop-name { font: inherit; font-size: 13px; font-weight: 600; background: none; border: 0; padding: 0; color: var(--ink); text-align: start; cursor: pointer; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }\n.stop-tools { display: flex; gap: 4px; }\n.stop-tools .icon-btn { width: 28px; height: 28px; }\n.empty { font-size: 13px; color: var(--muted); padding: 12px; border: 1px dashed var(--line); border-radius: 10px; }\n.summary { font-size: 12px; color: var(--muted); font-variant-numeric: tabular-nums; }\n\n@media (max-width: 760px) {\n html, body { height: auto; }\n .app { height: auto; grid-template-rows: auto; }\n .work { grid-template-columns: 1fr; }\n .map-frame { height: 58vh; min-height: 320px; }\n .panel-scroll { overflow: visible; }\n .legend { margin-inline-start: 0; }\n .city-form .lb-input { width: 100%; flex: 1 1 160px; }\n}\n</style>\n\n<div class="app">\n <header class="topbar">\n <div class="brand">\n <h1>Route Planner</h1>\n <span class="tally" id="tally">Connecting to Leadbay\u2026</span>\n </div>\n <form class="city-form" id="city-form">\n <label class="lb-vh" for="city-input">City or area to prospect</label>\n <input class="lb-input" id="city-input" name="city" type="text" placeholder="City or area" autocomplete="off">\n <button class="lb-btn lb-btn-submit" id="city-submit" type="submit">Show follow-ups</button>\n <button class="lb-btn" id="city-clear" type="button" hidden>All areas</button>\n <button class="lb-btn" id="fit-leads" type="button">Fit to leads</button>\n <span class="city-hint" id="city-hint">Picking a city also sets the location filter on your Monitor in Leadbay.</span>\n </form>\n <div class="legend" aria-label="Map legend">\n <span><i style="background:var(--st-wanted)"></i>Wanted</span>\n <span><i style="background:var(--st-won)"></i>Won</span>\n <span><i style="background:var(--st-lost)"></i>Lost</span>\n <span><i style="background:var(--st-unwanted)"></i>Unwanted</span>\n <span><i style="background:var(--st-default)"></i>No status</span>\n <span><i class="ring"></i>Worked today</span>\n </div>\n </header>\n <div class="notice" id="notice" role="alert"></div>\n <main class="work">\n <div class="map-frame">\n <div id="map" aria-label="Map of follow-up leads"></div>\n <div class="map-status" id="map-status" hidden><span class="lb-spinner" aria-hidden="true"></span><span id="map-status-text">Loading follow-ups\u2026</span></div>\n </div>\n <aside class="panel" aria-label="Lead and route panel">\n <div class="panel-scroll" id="panel"></div>\n </aside>\n </main>\n</div>\n<script src="https://cdnjs.cloudflare.com/ajax/libs/leaflet/1.9.4/leaflet.min.js"></script>\n<script>"use strict";(()=>{var ke=Object.defineProperty;var ve=(e,t,n)=>t in e?ke(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var b=(e,t,n)=>ve(e,typeof t!="symbol"?t+"":t,n);var Y=`\n:root{\n--color-black:#191919;--color-white:#fff;\n--color-gray-1:#f9f9f9;--color-gray-2:#f0f0f0;--color-gray-3:#e0e0e0;--color-gray-4:#cecece;\n--color-gray-5:#c4c4c4;--color-gray-6:#8d8d8d;--color-gray-7:#787878;--color-gray-8:#646464;\n--color-gray-9:#202020;\n--color-linkedin:#0a66c2;\n--color-blue-background:oklch(0.947 0.029 251);--color-blue-foreground:oklch(0.564 0.181 251);\n--color-green-background:oklch(0.947 0.029 141);--color-green-foreground:oklch(0.564 0.181 141);\n--color-red-background:oklch(0.947 0.029 26);--color-red-foreground:oklch(0.564 0.191 26);\n--color-gold-background:oklch(0.972 0.049 91);--color-gold-foreground:oklch(0.667 0.177 91);\n/* Yellow is the web app\'s "Could not reach" prospecting action. Its\n foreground is light (0.864) by design: the web app uses it for icons and\n borders on the tinted background, never as text on white. */\n--color-yellow-background:oklch(0.972 0.054 91);--color-yellow-foreground:oklch(0.864 0.181 91);\n--color-yellow-border:color-mix(in oklch,var(--color-yellow-foreground),transparent 65%);\n--color-cherry-background:oklch(0.947 0.029 15);--color-cherry-foreground:oklch(0.44 0.146 15);\n/* Purple carries the product\'s "AI" affordance (Qualify / Requalify). The\n border is the foreground at 65% transparency, exactly as the style package\n derives every *-border token. */\n--color-purple-background:oklch(0.947 0.029 288);--color-purple-foreground:oklch(0.464 0.181 288);\n--color-purple-border:color-mix(in oklch,var(--color-purple-foreground),transparent 65%);\n/* Teal carries the qualifier\'s intent tags, as the product\'s taste-profile\n tags do. Border derived at 65% transparency, like every *-border token. */\n--color-teal-background:oklch(0.977 0.019 180);--color-teal-foreground:oklch(0.574 0.182 180);\n--color-teal-border:color-mix(in oklch,var(--color-teal-foreground),transparent 65%);\n--color-red-like:var(--color-cherry-foreground);\n--lb-font:"Nikkei Maru",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;\n/* Concentric: outer = inner + padding (0.625 + 0.875 = 1.5rem). The card\'s\n padding is what closes this equation, so the two move together \\u2014 see\n .lb-card, which pads 0.875rem for exactly this reason. */\n--lb-radius:1.5rem;--lb-radius-sm:0.625rem;--lb-gap:0.75rem;\n--lb-surface:var(--color-gray-1);--lb-border:var(--color-gray-3);\n--lb-fg:var(--color-black);--lb-muted:var(--color-gray-8);--lb-field:var(--color-white);\n/* Chips and shadows need their own aliases: a chip painted with a raw ramp\n value cannot theme, and a shadow tinted with --color-gray-9 is invisible in\n dark because gray-9 IS the dark surface. */\n--lb-chip-bg:var(--color-gray-2);\n/* The page ground behind the cards. A raw ramp value here cannot theme: in\n dark mode --lb-fg turns white and a #f0f0f0 ground kept the page title\n white on light grey (seen in ChatGPT, which marks the frame dark). */\n--lb-page-bg:var(--color-gray-2);\n--lb-control-border:var(--color-gray-6);\n--lb-shadow:0 0.5rem 1.5rem oklch(0 0 0/.06),0 0.125rem 0.5rem oklch(0 0 0/.04);\ncolor-scheme:light;\n/* macOS renders text heavier than intended. This belongs once on the root,\n never per component \\u2014 an artifact that injects this sheet gets it for free\n instead of each page re-declaring it on its own body. */\n-webkit-font-smoothing:antialiased;\n-moz-osx-font-smoothing:grayscale;\n}\n:root[data-theme=dark],:root[data-lb-theme=dark]{\n--lb-surface:var(--color-gray-9);--lb-border:var(--color-gray-8);\n--lb-fg:var(--color-white);--lb-muted:var(--color-gray-3);\n/* --lb-field must NOT equal --lb-surface: a control needs its own ground or it\n reads as text on the card (was 1.00:1). */\n--lb-field:#2c2c2c;\n--lb-chip-bg:#3b3b3b;\n--lb-page-bg:#161616;\n--lb-control-border:var(--color-gray-6);\n--lb-shadow:0 0.5rem 1.5rem oklch(0 0 0/.5),0 0.125rem 0.5rem oklch(0 0 0/.35);\ncolor-scheme:dark;\n--color-blue-background:oklch(0.30 0.055 251);--color-blue-foreground:oklch(0.80 0.11 251);\n--color-green-background:oklch(0.30 0.055 141);--color-green-foreground:oklch(0.80 0.13 141);\n--color-red-background:oklch(0.30 0.060 26);--color-red-foreground:oklch(0.80 0.11 26);\n--color-gold-background:oklch(0.30 0.055 91);--color-gold-foreground:oklch(0.82 0.13 91);\n--color-yellow-background:oklch(0.30 0.055 91);--color-yellow-foreground:oklch(0.86 0.14 91);\n--color-cherry-background:oklch(0.30 0.055 15);--color-cherry-foreground:oklch(0.82 0.10 15);\n--color-purple-background:oklch(0.30 0.055 288);--color-purple-foreground:oklch(0.82 0.11 288);\n--color-teal-background:oklch(0.30 0.055 180);--color-teal-foreground:oklch(0.82 0.11 180);\n}\n@media(prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-lb-theme=light]){\n--lb-surface:var(--color-gray-9);--lb-border:var(--color-gray-8);\n--lb-fg:var(--color-white);--lb-muted:var(--color-gray-3);\n/* --lb-field must NOT equal --lb-surface: a control needs its own ground or it\n reads as text on the card (was 1.00:1). */\n--lb-field:#2c2c2c;\n--lb-chip-bg:#3b3b3b;\n--lb-page-bg:#161616;\n--lb-control-border:var(--color-gray-6);\n--lb-shadow:0 0.5rem 1.5rem oklch(0 0 0/.5),0 0.125rem 0.5rem oklch(0 0 0/.35);\ncolor-scheme:dark;\n--color-blue-background:oklch(0.30 0.055 251);--color-blue-foreground:oklch(0.80 0.11 251);\n--color-green-background:oklch(0.30 0.055 141);--color-green-foreground:oklch(0.80 0.13 141);\n--color-red-background:oklch(0.30 0.060 26);--color-red-foreground:oklch(0.80 0.11 26);\n--color-gold-background:oklch(0.30 0.055 91);--color-gold-foreground:oklch(0.82 0.13 91);\n--color-yellow-background:oklch(0.30 0.055 91);--color-yellow-foreground:oklch(0.86 0.14 91);\n--color-cherry-background:oklch(0.30 0.055 15);--color-cherry-foreground:oklch(0.82 0.10 15);\n--color-purple-background:oklch(0.30 0.055 288);--color-purple-foreground:oklch(0.82 0.11 288);\n--color-teal-background:oklch(0.30 0.055 180);--color-teal-foreground:oklch(0.82 0.11 180);\n}}\n/* 0.875rem padding is not arbitrary: it closes the concentric equation with\n --lb-radius (1.5rem) and --lb-radius-sm (0.625rem). Changing it without\n moving --lb-radius leaves a control\'s arc running wider than the card\'s in\n the corner. */\n.lb-card{display:grid;gap:var(--lb-gap);padding:0.875rem;\nbackground-color:var(--lb-surface);border:1px solid var(--lb-border);\nborder-radius:var(--lb-radius);corner-shape:squircle;color:var(--lb-fg);\nfont-family:var(--lb-font);\nbox-shadow:var(--lb-shadow)}\n/* \\u2500\\u2500 Card layout \\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\n A lead card is a stack of SECTIONS, each a titled block (Fit, Intent tags,\n Data, Status, Outreach). One wrapper owns the rhythm \\u2014 16px between\n sections, 8px between the items inside one \\u2014 so a section can be added,\n removed or reordered without touching spacing, and no margin can collapse.\n Every artifact that builds cards gets the same geometry from here rather\n than hand-rolling it. */\n.lb-sections{display:flex;flex-direction:column;gap:1rem}\n.lb-section{display:grid;gap:0.5rem}\n/* A section title: black, uppercase, tracked. It names the block below it, so\n it must sit at SECTION level \\u2014 nested inside a row it stops being a peer of\n the other titles and the card loses its scan order. */\n.lb-sec-title{font-size:0.75rem;font-weight:700;letter-spacing:.08em;\ntext-transform:uppercase;color:var(--lb-fg);line-height:1.4;\ntext-wrap:balance}\n/* Header row: leading control (a bulk checkbox), the title, then trailing\n controls (taste) pushed to the far edge. */\n.lb-card-top{display:flex;align-items:center;gap:0.625rem;flex-wrap:wrap}\n.lb-card-top>.lb-group{flex:0 0 auto;margin-inline-start:auto}\n.lb-card-top>input[type=checkbox]{flex:0 0 auto;width:1rem;height:1rem;margin:0}\n/* The company name. Bold and underlined so it reads as the card\'s subject and\n as a link, without competing with the uppercase section titles. */\n/* text-wrap:balance keeps a two-line company name from breaking one-word-over;\n the underline takes its position and thickness from the font\'s own metrics\n rather than wherever the browser puts them, and skip-ink clears descenders. */\n.lb-lead-title{flex:1 1 9rem;min-width:0;font-size:0.9375rem;font-weight:700;\nline-height:1.3;color:var(--lb-fg);text-wrap:balance;text-decoration:underline;\ntext-underline-position:from-font;text-decoration-thickness:from-font;\ntext-underline-offset:2px;text-decoration-skip-ink:auto;overflow-wrap:break-word}\n.lb-lead-title a{color:inherit;text-decoration:inherit}\n/* Controls in a section stack, each spanning it, so every control on the card\n shares one leading edge and one width. Three different widths across a row\n read as three unrelated things. */\n.lb-section>.lb-select,.lb-section>.lb-input,\n.lb-stack>.lb-select,.lb-stack>.lb-input,.lb-stack>.lb-btn{width:100%;min-width:0}\n/* Footer: a leading action, a spacer, a trailing escape hatch. */\n.lb-card-foot{display:flex;align-items:center;gap:0.625rem;\npadding-block-start:0.875rem;border-block-start:1px solid var(--lb-border)}\n.lb-card-foot .lb-spacer{flex:1 1 auto}\n/* \\u2500\\u2500 Toolbar \\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\n The bar above a deck of cards: a tally, the controls that narrow what is\n shown, and the controls that act on a selection. Those are three different\n jobs, so they are three groups \\u2014 0.5rem within one, 1.5rem between \\u2014 rather\n than one flat row where "apply to selected" reads as another filter.\n Concentric: it pads 0.75rem around controls that round at 0.625rem, so it\n rounds at 1.375rem. */\n.lb-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:0.75rem 1.5rem;\npadding:0.75rem 1rem;background-color:var(--lb-surface);\nborder:1px solid var(--lb-border);border-radius:1.375rem;corner-shape:squircle;\nfont-family:var(--lb-font);color:var(--lb-fg)}\n.lb-toolbar .lb-group{gap:0.5rem}\n/* A labelled control stacks: caption above, control below, as a card section\n does. One label pattern across the whole artifact. */\n.lb-field{display:inline-flex;flex-direction:column;align-items:flex-start;\ngap:0.25rem;font-size:0.8125rem;line-height:1.4;color:var(--lb-muted);\nwhite-space:nowrap}\n/* A checkbox belongs BESIDE its words \\u2014 under a caption it reads as orphaned. */\n.lb-field-inline{flex-direction:row;align-items:center;gap:0.5rem}\n/* A control\'s caption is not body copy: it names the control, so it takes the\n same treatment as a card\'s section title. */\n.lb-field-label{font-size:0.75rem;font-weight:700;letter-spacing:.08em;\ntext-transform:uppercase;color:var(--lb-fg)}\n/* A labelled field sizes to its own content, so width:100% on the control\n inside only fills whatever the field already became. Two fields side by side\n still come out unequal \\u2014 they have no shared reference to be equal against.\n Give the FIELD the basis: flex:1 1 9rem makes every labelled field claim the\n same share of the row, so a select and a text input beside it match. */\n.lb-field{flex:1 1 9rem;min-width:9rem;max-width:16rem}\n.lb-field>.lb-select,.lb-field>.lb-input{width:100%;min-width:0}\n/* An inline field holds a checkbox, not a sized control: natural width, no floor. */\n.lb-field-inline{flex:0 0 auto;min-width:0;max-width:none}\n.lb-field-inline>*{min-width:0;width:auto;flex:0 0 auto}\n/* Readouts sit on the control baseline, not the caption\'s. */\n.lb-toolbar .lb-tally,.lb-toolbar .lb-status{align-self:center}\n.lb-tally{font-size:0.8125rem;line-height:1.4;color:var(--lb-muted);\nfont-variant-numeric:tabular-nums;white-space:nowrap}\n/* Connection state, never carried by colour alone: live is a filled dot, dead\n a hollow ring, so the two differ in shape as well as hue \\u2014 a red and a green\n circle are the same circle to a colour-blind reader, and identical under\n forced colours. */\n.lb-status{display:inline-flex;align-items:center;gap:0.5rem;\nfont-size:0.75rem;line-height:1.4;color:var(--lb-muted);white-space:nowrap}\n.lb-status-dot{width:0.5rem;height:0.5rem;border-radius:50%;flex:none;\nbackground-color:var(--color-gray-5);border:2px solid transparent}\n.lb-status[data-live=yes] .lb-status-dot{background-color:var(--color-green-foreground)}\n.lb-status[data-live=no] .lb-status-dot{background-color:transparent;\nborder-color:var(--color-red-foreground)}\n/* \\u2500\\u2500 Pager \\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\n Below a deck, never above it: the rep reads the rows, then decides whether\n to go on. The range ("21\\u201340 of 60") is the honest label \\u2014 "page 2" alone\n does not say how much is left, and a rep who cannot see the end cannot tell\n a short lens from a long one. Tabular, because the numbers change. */\n.lb-pager{display:flex;align-items:center;gap:0.75rem;flex-wrap:wrap}\n.lb-pager .lb-spacer{flex:1 1 auto}\n.lb-pager-range{font-size:0.8125rem;line-height:1.4;color:var(--lb-muted);\nfont-variant-numeric:tabular-nums;white-space:nowrap}\n/* \\u2500\\u2500 Metrics + chart \\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\n A manager dashboard reports before it lists: a row of figures, then the\n trend behind them, then the per-rep table. Tiles are for the few numbers\n that ARE the point \\u2014 a tile per field turns a dashboard into a wall. */\n.lb-tiles{display:grid;gap:0.75rem;\ngrid-template-columns:repeat(auto-fit,minmax(min(9rem,100%),1fr))}\n.lb-tile{display:grid;gap:0.25rem;padding:0.75rem 0.875rem;\nbackground-color:var(--lb-field);border:1px solid var(--lb-border);\nborder-radius:1.375rem;corner-shape:squircle}\n.lb-tile-label{font-size:0.75rem;font-weight:700;letter-spacing:.08em;\ntext-transform:uppercase;color:var(--lb-muted);line-height:1.4}\n.lb-tile-value{font-size:1.5rem;font-weight:700;line-height:1.15;\ncolor:var(--lb-fg);font-variant-numeric:tabular-nums}\n/* The chart draws from the theme tokens, so it reads in light and dark alike;\n a hardcoded stroke disappears on one of the two. Inline SVG rather than a\n CDN library: a sparse weekly series does not earn 200KB, and an artifact\n that silently fails to load its chart shows nothing at all. */\n.lb-chart{display:block;width:100%;height:auto}\n.lb-chart .lb-chart-grid{stroke:var(--lb-border);stroke-width:1}\n.lb-chart .lb-chart-line{fill:none;stroke:var(--color-blue-foreground);stroke-width:2;\nstroke-linejoin:round;stroke-linecap:round}\n.lb-chart .lb-chart-area{fill:var(--color-blue-background);opacity:.55}\n.lb-chart .lb-chart-dot{fill:var(--color-blue-foreground)}\n/* Axis labels are UI text and take the same 12px floor as everything else \\u2014\n a chart is not a licence to shrink type below what is readable. */\n.lb-chart text{fill:var(--lb-muted);font-family:var(--lb-font);font-size:0.75rem}\n/* An empty series is a real answer, not a failure: say so in place of the\n chart rather than drawing empty axes that look broken. */\n.lb-empty{display:grid;place-items:center;gap:0.25rem;padding:1.5rem 1rem;\nbackground-color:var(--lb-field);border:1px dashed var(--lb-border);\nborder-radius:1.375rem;corner-shape:squircle;text-align:center}\n.lb-empty-title{font-size:0.8125rem;font-weight:600;color:var(--lb-fg);line-height:1.4}\n.lb-empty-hint{font-size:0.78125rem;color:var(--lb-muted);line-height:1.45;max-width:44ch}\n/* A page flip replaces the whole deck, so the rows must read as pending or the\n rep cannot tell a slow page from a finished one. Dim and lock the deck\n rather than blanking it: keeping the old rows on screen preserves the\n scroll position and the sense of place. */\n.lb-deck[data-lb-state=loading]{opacity:.55;pointer-events:none}\n/* The head must be able to wrap. Both children default to flex:0 1 auto, so\n without this they shrink together and a long company name is crushed to three\n lines while the chips keep full width. flex-basis:11rem is a content breakpoint:\n below ~176px for the title, the chips drop to their own line instead. */\n.lb-card-head{display:flex;flex-wrap:wrap;justify-content:space-between;\nalign-items:baseline;gap:var(--lb-gap)}\n/* An email or URL has no break opportunity \\u2014 browsers do not break at "@" or\n ".", so without this a company address escapes the card and the chat host\n clips it with no way to recover the tail. */\n.lb-title{font-size:0.875rem;font-weight:600;line-height:1.3;color:var(--lb-fg);\noverflow-wrap:break-word;min-width:0;flex:1 1 11rem}\n/* pretty stops a lone word landing on the last line of a why-it-fits sentence\n or a fact \\u2014 the orphan that makes a card look unfinished. */\n.lb-sub{font-size:0.8125rem;line-height:1.45;color:var(--lb-muted);\ntext-wrap:pretty;overflow-wrap:break-word;max-width:68ch}\n/* An empty fact line is a 30px void that reads as a rendering bug. */\n.lb-sub:empty{display:none}\n/* The tightest group on the card: consecutive data lines (the contact, then\n the company switchboard) are one block, so they sit at HALF the section\'s\n own 8px. That 2x ratio is what makes them read as a unit rather than as\n separate facts \\u2014 the same rule .lb-section applies one level up against\n .lb-sections\' 16px. The scale halves at each level: 16 \\u2192 8 \\u2192 4. */\n.lb-facts{display:grid;gap:0.25rem}\n/* The contract\'s canonical skeleton already emits data-why; the sheet just did\n not honour it, so consumers hand-patched an inline font-style. */\n.lb-sub[data-why]{font-style:italic;color:var(--lb-fg)}\n/* Icon column: the glyph gets its own cell so a wrapping line hangs on one\n shared text edge instead of running back under the emoji. */\n.lb-fact{display:grid;grid-template-columns:1.15rem 1fr;gap:0.35rem;align-items:baseline}\n.lb-row{display:flex;align-items:center;gap:var(--lb-gap);flex-wrap:wrap}\n/* row-gap matters once the row wraps: without it the wrapped line sits flush\n against the one above. */\n.lb-row{row-gap:0.5rem}\n/* 8px, matching .lb-section \\u2014 a stack inside a section must not space its\n controls wider than the section spaces its own children. */\n.lb-stack{display:grid;gap:0.5rem}\n/* A select is border-box by UA default; a text input is content-box. Given the\n same width, padding and border, the input therefore renders ~2rem wider \\u2014 the\n padding lands outside its box and inside the select\'s. Neither is wrong on its\n own; they just cannot be sized together until they agree. Every control the\n kit styles is border-box, so a declared width is the width that shows. */\n.lb-btn,.lb-select,.lb-input{box-sizing:border-box}\n.lb-select,.lb-input{font:inherit;font-family:var(--lb-font);font-size:0.8125rem;color:var(--lb-fg);\nbackground-color:var(--lb-field);border:1px solid var(--lb-control-border);\nborder-radius:var(--lb-radius-sm);corner-shape:squircle;padding:0.4rem 0.55rem;min-height:2.125rem}\n/* Geometry, states and motion ported from the product\'s Button component\n (packages/ui/components/Button) so an artifact button and an app button are\n the same object. MUI spacing is 8px/unit, so its size=medium (py .875,\n px .875, borderRadius .875) is 7px/7px/7px and large (py 1.75, px 2,\n borderRadius 1.25) is 14px/16px/10px. A control sitting in a row beside a\n select reads as medium, so that is the default here; .lb-btn-lg opts into\n large. The app\'s default variant is secondary \\u2014 white ground, gray-5\n border, black text \\u2014 which is what an unadorned .lb-btn already was. */\n.lb-btn{font:inherit;font-family:var(--lb-font);font-size:0.8125rem;font-weight:600;\ncolor:var(--color-black);background-color:var(--color-white);\nborder:1px solid var(--color-gray-5);\nborder-radius:0.4375rem;corner-shape:squircle;padding:0.4375rem 0.4375rem;min-height:2.125rem;\ncursor:pointer;user-select:none;-webkit-user-select:none;text-wrap:nowrap;\nfont-variant-numeric:tabular-nums;\ntransition:background-color .16s ease,border .16s ease,color .16s ease,\nopacity .16s ease,transform .16s cubic-bezier(0.23,1,0.32,1)}\n/* The app hovers the GROUND to gray-2, not the border. */\n@media (hover:hover){\n.lb-btn:hover:not([disabled]):not([data-lb-state=loading]){\nbackground-color:var(--color-gray-2)}}\n/* Front-loaded press, so the tap leads the colour crossfade. */\n.lb-btn:active:not([disabled]):not([data-lb-state=loading]){transform:scale(0.97)}\n.lb-btn[disabled]{opacity:.4;cursor:default}\n/* A text button with a label + icon: the app lays the content out as a flex row\n with a 6px gap (its content style uses gap 0.75). */\n.lb-btn{display:inline-flex;align-items:center;justify-content:center;gap:0.375rem}\n.lb-btn>svg{display:block;flex-shrink:0;width:1.05rem;height:1.05rem}\n/* Opt-in large, for a button that stands alone rather than in a control row. */\n.lb-btn-lg{border-radius:0.625rem;padding:0.875rem 1rem}\n/* A SUBMIT is not a toggle. Like/Dislike are independent switches; "Set status"\n commits the value sitting in the select beside it. Rendered identically, the\n row reads as five peers and the rep cannot see which control ends the task.\n The accent border + tinted ground marks it as the commit without making it a\n loud filled button \\u2014 the state styles above still win when they apply. */\n/* INVERTED, not recoloured. A normal button is --lb-fg on --lb-field; the\n submit swaps them. That introduces no new hue, and it themes for free: light\n gives near-black on white, dark gives white on near-black \\u2014 the polarity flip\n reads as "this one commits" in both, without competing with the semantic\n state colours (success green / error red) that still override it. */\n/* This is the app\'s primary variant verbatim: black ground, white text, and a\n hover that mixes 32% gray-8 into the black rather than lightening opacity. */\n.lb-btn-submit{background-color:var(--lb-fg);color:var(--lb-field);\nborder-color:var(--lb-fg)}\n@media (hover:hover){\n.lb-btn-submit:hover:not([disabled]):not([data-lb-state=loading]){\nbackground-color:color-mix(in oklch,var(--lb-fg),var(--color-gray-8) 32%);\nborder-color:color-mix(in oklch,var(--lb-fg),var(--color-gray-8) 32%)}}\n/* The app\'s ai variant \\u2014 what QualifyButton/Requalify wears. Purple ground,\n purple-foreground text, border at 65% transparency of the foreground; hover\n mixes 7% black into the ground. Tokens mirror the product\'s style package. */\n.lb-btn-ai{background-color:var(--color-purple-background);\nborder-color:var(--color-purple-border);color:var(--color-purple-foreground)}\n@media (hover:hover){\n.lb-btn-ai:hover:not([disabled]):not([data-lb-state=loading]){\nbackground-color:color-mix(in oklch,var(--color-purple-background),black 7%)}}\n/* Toggles that act on the same axis belong in one visual unit, so the row reads\n as "taste | status | inspect" rather than five equal buttons. The gap inside\n a group is half the gap between groups \\u2014 the 2x rule, applied horizontally. */\n.lb-group{display:inline-flex;align-items:center;gap:0.375rem;flex-wrap:wrap}\n/* Square icon button. Only for actions whose glyph is unambiguous on its own \\u2014\n thumbs up/down qualify, "Set status" does not. It MUST carry an aria-label\n and a title: with no text the icon is the entire affordance, so an unlabelled\n one is unreadable to a screen reader and to anyone who does not know the\n glyph. Same 2.125rem box as a text button, so it keeps the row\'s baseline. */\n.lb-btn-icon{padding:0;width:2.125rem;justify-content:center;display:inline-flex;\nalign-items:center}\n.lb-btn-icon svg{width:1.05rem;height:1.05rem;flex-shrink:0}\n/* Pressed state. The taste chip carries the durable fact; this is the control\n reflecting it, and it must not rely on colour alone \\u2014 aria-pressed is the\n accessible half and the fill is the visible half. */\n/* A heart that stays hollow does not read as "liked" \\u2014 fill it from the same\n currentColor the stroke uses, so one rule covers both themes. */\n.lb-btn-icon[aria-pressed=true] svg{fill:currentColor}\n.lb-btn-icon[aria-pressed=true]{border-color:var(--color-red-like);\ncolor:var(--color-red-like);\nbackground-color:color-mix(in srgb,var(--color-red-like) 10%,var(--lb-field))}\n.lb-btn-icon[data-taste=disliked][aria-pressed=true]{border-color:var(--lb-muted);\ncolor:var(--lb-muted);\nbackground-color:color-mix(in srgb,var(--lb-muted) 10%,var(--lb-field))}\n/* A glyph-only control has no text to widen its hit area, so extend the target\n past the 34px box without inflating the row. */\n.lb-btn-icon{position:relative}\n.lb-btn-icon::before{content:"";position:absolute;inset:-5px}\n.lb-btn:focus-visible,.lb-select:focus-visible,.lb-input:focus-visible,\n.lb-link:focus-visible{\noutline:2px solid var(--color-blue-foreground);outline-offset:1px;\nborder-radius:var(--lb-radius-sm)}\n/* Forced colours replaces every background and custom outline with a system\n colour, collapsing the state styling above into one flat control. */\n@media(forced-colors:active){\n.lb-btn,.lb-select,.lb-input,.lb-chip{border:1px solid CanvasText}\n.lb-btn:focus-visible,.lb-select:focus-visible,.lb-input:focus-visible,\n.lb-link:focus-visible,.lb-link-out:focus-visible{outline:2px solid Highlight}\n.lb-link-out{opacity:1}}\n/* Each state carries a glyph as well as a hue: success and error were two\n pills with identical labels, indistinguishable to a red-green colour-blind\n reader and identical under forced colours. */\n.lb-btn[data-lb-state=loading]{opacity:.55;cursor:progress}\n.lb-btn[data-lb-state=loading]::after{content:"\\u2026";margin-inline-start:.35rem}\n/* An icon button has no room for a trailing glyph \\u2014 it would push the icon\n off-centre. Its states read through border and fill, which the forced-colors\n block below keeps distinguishable. */\n.lb-btn-icon::after{content:none!important}\n.lb-btn[data-lb-state=success]::after{content:"\\u2713";margin-inline-start:.35rem}\n.lb-btn[data-lb-state=error]::after{content:"\\u2715";margin-inline-start:.35rem}\n.lb-btn[data-lb-state=unavailable]::after{content:"\\u26A0";margin-inline-start:.35rem}\n/* With save-on-change there is no button to reflect the write, so the select\n itself must. Only error was styled before; loading and success were invisible\n on a select, leaving the rep unsure whether the pick had landed. */\n.lb-select[data-lb-state=loading]{opacity:.55;cursor:progress}\n.lb-select[data-lb-state=success]{border-color:var(--color-green-foreground)}\n.lb-msg[data-tone=error]::before{content:"\\u2715 "}\n.lb-msg[data-tone=ok]::before{content:"\\u2713 "}\n.lb-btn[data-lb-state=success]{background-color:var(--color-green-background);\nborder-color:var(--color-green-foreground);color:var(--color-green-foreground)}\n.lb-btn[data-lb-state=error],.lb-select[data-lb-state=error]{\nbackground-color:var(--color-red-background);border-color:var(--color-red-foreground);\ncolor:var(--color-red-foreground)}\n.lb-btn[data-lb-state=unavailable],.lb-btn[disabled]{opacity:.5;cursor:not-allowed}\n.lb-msg{font-size:0.8125rem;line-height:1.45;color:var(--lb-muted)}\n/* Screen-reader-only text: control labels, unit suffixes, "opens in a new tab". */\n.lb-vh{position:absolute;width:1px;height:1px;margin:-1px;padding:0;\noverflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}\n.lb-msg[data-tone=error]{color:var(--color-red-foreground)}\n.lb-msg[data-tone=ok]{color:var(--color-green-foreground)}\n.lb-chip{display:inline-flex;align-items:center;gap:.25rem;white-space:nowrap;\nfont-size:0.75rem;font-weight:600;line-height:1rem;padding:0.125rem 0.5rem;\nborder-radius:var(--lb-radius-sm);corner-shape:squircle;\nbackground-color:var(--lb-chip-bg);color:var(--lb-muted)}\n.lb-chip[data-status=WANTED]{background-color:var(--color-blue-background);color:var(--color-blue-foreground)}\n.lb-chip[data-status=WON]{background-color:var(--color-green-background);color:var(--color-green-foreground)}\n.lb-chip[data-status=LOST]{background-color:var(--color-red-background);color:var(--color-red-foreground)}\n.lb-chip[data-status=UNWANTED]{background-color:var(--lb-chip-bg);color:var(--lb-muted)}\n.lb-chip[data-taste=liked]{background-color:var(--color-cherry-background);color:var(--color-red-like)}\n.lb-chip[data-taste=disliked]{background-color:var(--lb-chip-bg);color:var(--lb-muted)}\n.lb-chips{display:flex;align-items:center;gap:0.5rem;flex-wrap:wrap}\n/* \\u2500\\u2500 Tag rows \\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\n Two kinds, deliberately different so they never read as the same axis.\n FIRMOGRAPHIC (.lb-tags-plain): what the company IS \\u2014 location, size, sector.\n Quiet grey, because it is context the rep skims.\n INTENT (.lb-tags-intent): what the qualifier FOUND \\u2014 a buying signal. Teal,\n matching the product\'s own taste-profile tags, because it is the reason the\n lead is on screen. Both wrap and both sit on the section\'s 8px. */\n.lb-tags-plain,.lb-tags-intent{display:flex;flex-wrap:wrap;gap:0.5rem}\n/* Both tags round at 0.375rem: they are the innermost surface, and a tag whose\n radius drifts from its neighbours reads as a different kind of object. Their\n own padding is small enough that concentric math against the card does not\n apply \\u2014 past a point the layers are separate surfaces, each chosen on its\n own. */\n.lb-tags-plain>*{display:inline-flex;align-items:center;\nbackground-color:var(--lb-surface);border:1px solid var(--lb-border);\ncolor:var(--lb-muted);border-radius:0.375rem;padding:0.125rem 0.375rem;\nfont-size:0.75rem;font-weight:500;line-height:1.5;white-space:nowrap}\n.lb-tags-intent>*{display:inline-flex;align-items:center;\nbackground-color:var(--color-teal-background);border:1px solid var(--color-teal-border);\ncolor:var(--color-teal-foreground);border-radius:0.375rem;padding:0.1875rem 0.4375rem;\nfont-size:0.75rem;line-height:1.4}\n/* The honest empty state: a blank tag row reads as a rendering bug, so say\n what is missing and what fixes it. */\n.lb-tags-empty{font-size:0.78125rem;line-height:1.45;color:var(--lb-muted);\nfont-style:italic}\n/* The chips row is empty until a taste or a status lands. Left in flow it is a\n zero-height element that still consumes the gap above the first section, so\n hide it while it holds nothing \\u2014 set the hidden attribute from the code that\n paints the chips, since it is that code which knows. */\n.lb-chips[hidden]{display:none}\n.lb-chip[hidden]{display:none}\n.lb-table{width:100%;border-collapse:collapse;font-family:var(--lb-font);color:var(--lb-fg)}\n.lb-table th,.lb-table td{text-align:start;padding:0.5rem 0.4rem;\nborder-bottom:1px solid var(--lb-border);vertical-align:middle;font-size:0.8125rem}\n.lb-table th{font-size:0.75rem;font-weight:600;color:var(--lb-muted);\ntext-transform:uppercase;letter-spacing:.04em}\n/* Counts line up only when the digits do; a leaderboard whose numbers jitter\n column-to-column cannot be scanned down. */\n.lb-table td[data-num],.lb-table th[data-num]{text-align:end;\nfont-variant-numeric:tabular-nums}\n/* A sortable header is a control: it must look clickable and say which way it\n is sorting, in text as well as by arrow \\u2014 aria-sort is the accessible half. */\n.lb-table th[aria-sort]{cursor:pointer;user-select:none;color:var(--lb-fg)}\n.lb-table th[aria-sort]:hover{text-decoration:underline}\n.lb-table th[aria-sort=ascending]::after{content:" \\\\2191"}\n.lb-table th[aria-sort=descending]::after{content:" \\\\2193"}\n.lb-table th[aria-sort=none]::after{content:" \\\\2195";opacity:.35}\n/* The row a manager is acting on. */\n.lb-table tbody tr[aria-selected=true]{background-color:var(--lb-chip-bg)}\n.lb-link{color:var(--color-blue-foreground);text-decoration:none}\n.lb-link:hover{text-decoration:underline}\n/* Quiet text link out of the artifact. Button-height so it shares the row\'s\n baseline; understated so it never competes with the actions beside it. The\n arrow is a bare diagonal stroke \\u2014 an escape-hatch marker, not an icon that\n asks to be read. */\n.lb-link-out{display:inline-flex;align-items:center;gap:.3rem;\nfont-size:0.75rem;line-height:1rem;min-height:2.125rem;\ncolor:var(--lb-fg);text-decoration:none;opacity:.65;transition:opacity .15s}\n.lb-link-out:hover{opacity:1;text-decoration:underline}\n.lb-link-out:focus-visible{outline:2px solid var(--color-blue-foreground);outline-offset:1px;\nborder-radius:var(--lb-radius-sm)}\n.lb-link-out svg{width:.85em;height:.85em;flex-shrink:0}\n/* Pushes whatever follows it to the right edge of an .lb-row, so a trailing\n link sits on the SAME baseline as the row\'s buttons instead of on its own\n line below them. */\n/* A spacer only aligns items on its OWN flex line. .lb-row wraps, so once the\n link falls to a second line the spacer stays behind and the link renders\n left-aligned \\u2014 the opposite of what the contract promises. The auto margin\n re-anchors it to the trailing edge of whichever line it lands on, and is a\n no-op while the row is unwrapped. */\n.lb-spacer{flex:1 1 auto;min-width:0}\n.lb-row>.lb-link-out{margin-inline-start:auto}\n.lb-spinner{display:inline-block;width:.7em;height:.7em;border:2px solid var(--lb-border);\nborder-top-color:var(--color-blue-foreground);border-radius:50%;animation:lb-spin .8s linear infinite}\n@keyframes lb-spin{to{transform:rotate(1turn)}}\n/* animation:none left a static ring \\u2014 under reduced motion "sending" and\n "cannot click" looked identical. An opacity pulse is the sanctioned\n substitute. The 150ms colour fade is fine and stays. */\n@media(prefers-reduced-motion:reduce){.lb-spinner{animation:lb-pulse 1.4s ease-in-out infinite}}\n@keyframes lb-pulse{50%{opacity:.35}}\n`,F="lb-styles";var xe="2026-01-26";function Z(e,t){return Object.assign(new Error(e),{name:"LbError",code:t})}function X(){return typeof window<"u"&&window.parent!=null&&window.parent!==window}function ee(e,t={parent:window.parent,self:window}){let n=new Map,r=1,o=null,a=c=>t.parent.postMessage({jsonrpc:"2.0",...c},"*");function i(c,s){let u=r++;return new Promise((g,h)=>{n.set(u,{resolve:g,reject:h}),a({id:u,method:c,params:s})})}function l(c){if(c.source!==t.parent)return;let s=c.data;if(!s||typeof s!="object"||s.jsonrpc!=="2.0")return;if(typeof s.method=="string"){if(s.id===void 0){s.method==="ui/notifications/host-context-changed"&&J(s.params?.theme);return}s.method==="ping"||s.method==="ui/resource-teardown"?a({id:s.id,result:{}}):a({id:s.id,error:{code:-32601,message:`Method not found: ${s.method}`}});return}let u=n.get(s.id);u&&(n.delete(s.id),s.error?u.reject(Z(String(s.error.message||"The host refused the call"),"host_error")):u.resolve(s.result))}function d(){return o||(o=(async()=>{t.self.addEventListener("message",l);let c=r,s=i("ui/initialize",{appInfo:{name:"Leadbay",version:e},appCapabilities:{},protocolVersion:xe}),u,g=new Promise((f,y)=>{u=setTimeout(()=>{n.delete(c),y(Z("Leadbay is not reachable from this page \\u2014 the host never answered the MCP Apps handshake.","unavailable"))},5e3)}),h;try{h=await Promise.race([s,g])}finally{u&&clearTimeout(u)}J(h?.hostContext?.theme),a({method:"ui/notifications/initialized",params:{}}),_e(a),Se(i)})(),o.catch(()=>{o=null})),o}return async(c,s)=>(await d(),i("tools/call",{name:c,arguments:s}))}function J(e){typeof document>"u"||e!=="light"&&e!=="dark"||document.documentElement.setAttribute("data-theme",e)}function _e(e){if(typeof document>"u"||typeof ResizeObserver>"u")return;let t=!1,n=0,r=0,o=()=>{t||(t=!0,requestAnimationFrame(()=>{t=!1;let i=document.documentElement,l=i.style.height;i.style.height="max-content";let d=Math.ceil(i.getBoundingClientRect().height);i.style.height=l;let c=Math.ceil(window.innerWidth);c===n&&d===r||(n=c,r=d,e({method:"ui/notifications/size-changed",params:{width:c,height:d}}))}))};o();let a=new ResizeObserver(o);a.observe(document.documentElement),a.observe(document.body)}function Se(e){typeof document>"u"||document.addEventListener("click",t=>{let n=t.target,r=n&&typeof n.closest=="function"?n.closest("a[href]"):null;if(!r)return;let o=r.href;/^https?:\\/\\//i.test(o)&&(t.preventDefault(),e("ui/open-link",{url:o}).catch(()=>{window.open(o,"_blank","noopener")}))},!0)}var G="0.6.0",C=class extends Error{constructor(n,r={}){super(n);b(this,"code");b(this,"raw");this.name="LbError",this.code=r.code,this.raw=r.raw}},ne=null,O=3e4,re="Leadbay",oe=re;function ae(){let e=globalThis.cowork;if(e&&typeof e.callMcpTool=="function")return(n,r)=>e.callMcpTool(n,r);let t=globalThis.claude;return t&&typeof t.use=="function"?async(n,r)=>{let o=await Te(t.use);if(!o||typeof o.callTool!="function")throw new C("Leadbay is not reachable from this page \\u2014 the artifact must declare the Leadbay connector in its capabilities, and the viewer must have it enabled.",{code:"unavailable"});let a=await o.callTool(oe,n,r);return a&&"payload"in a&&a.payload!==void 0?a.payload:a}:X()?(N||(N=ee(G)),N):null}var N=null,M=null;function Te(e){return M||(M=Promise.resolve(e("mcp")).catch(()=>null)),M}var ie="leadbay_report_artifact_error",Ee=40,j=new Set,U=0,K=!0;function Ae(e){K=e}function xt(){j.clear(),U=0,K=!0,A=null,P="call"}function T(e){if(!K||U>=Ee)return;let t=`${e.kind}|${e.surface}|${e.tool??""}|${e.code??""}`;if(j.has(t))return;j.add(t),U++;let n=ae();if(n)try{let r=n(ie,{kind:e.kind,surface:e.surface,kit_version:G,...e.tool?{tool:e.tool}:{},...e.code?{code:e.code}:{}});r&&typeof r.catch=="function"&&r.catch(()=>{})}catch{}}var P="call",A=null;function q(e,t,n){let r=P,o=A;P=e,A=n??null;try{return t()}finally{P=r,A=o}}function Ce(e,t,n){let r=le(n);T({kind:r==="timeout"?"call_timeout":r==="unavailable"?"bridge_unavailable":"call_failed",surface:e,tool:t,code:r})}function te(e){if(e&&typeof e=="object"&&"content"in e){let t=e.content;if(Array.isArray(t)&&t[0]&&typeof t[0].text=="string")return t[0].text}return null}function Le(e,t,n="call"){if(!e||typeof e!="object")return e;let r=e;if(r.isError)throw new C(te(e)??"tool call failed",{raw:e});if("structuredContent"in r&&r.structuredContent!=null)return r.structuredContent;let o=te(e);if(o!=null)try{return JSON.parse(o)}catch{return T({kind:"parse_failed",surface:n,tool:t}),o}return e}function V(e){if(e instanceof Error)return e.message;if(e&&typeof e=="object"){let t=e.message;if(typeof t=="string"&&t)return t;try{return JSON.stringify(e)}catch{}}return String(e)}function le(e){if(e instanceof C)return e.code;if(e&&typeof e=="object"){let t=e.code;if(typeof t=="string"&&t)return t}}function D(e){let t=le(e);return{message:V(e),unavailable:t==="unavailable",code:t}}function Ie(e={}){ne=e.call??null,O=e.timeoutMs??3e4,oe=e.server??re,M=null,N=null,B.clear()}function Re(){if(typeof document>"u"||!document.head)return null;let e=document.getElementById(F);if(e)return e;let t=document.createElement("style");return t.id=F,t.textContent=Y,document.head.appendChild(t),t}async function Oe(e,t){if(!O||O<=0)return e;let n,r=new Promise((o,a)=>{n=setTimeout(()=>a(new C(`"${t}" timed out after ${O}ms`,{code:"timeout"})),O)});try{return await Promise.race([e,r])}finally{n&&clearTimeout(n)}}async function p(e,t={}){let n=e===ie,r=P;!n&&A&&A.tool===void 0&&(A.tool=e);let o=ne??ae();if(!o)throw n||T({kind:"bridge_unavailable",surface:r,tool:e,code:"unavailable"}),new C(\'Leadbay bridge unavailable \\u2014 no window.cowork, no window.claude.use("mcp") and no MCP Apps host\',{code:"unavailable"});try{return Le(await Oe(Promise.resolve(o(e,t)),e),n?void 0:e,r)}catch(a){throw n||Ce(r,e,a),a}}var I=class{constructor(){b(this,"subs",new Set)}subscribe(t){return this.subs.add(t),t(this),()=>this.subs.delete(t)}emit(){for(let t of this.subs)t(this)}};function Pe(e){return Array.isArray(e)?e.map(t=>t&&typeof t=="object"?t:{value:t,label:String(t)}):[]}var S=class extends I{constructor(n={}){super();b(this,"kind");b(this,"value");b(this,"options",[]);b(this,"loading",!1);b(this,"error",null);b(this,"ready",!1);b(this,"cfg");b(this,"depUnsubs",[]);b(this,"seq",0);this.cfg=n,this.kind=n.kind,this.value=n.value??"";for(let r of n.dependsOn??[]){let o=r.value;this.depUnsubs.push(r.subscribe(()=>{r.value!==o&&(o=r.value,this.cfg.load&&this.load())}))}n.load&&(n.autoLoad??!0)&&this.load()}async load(){if(!this.cfg.load)return;let n=++this.seq;this.loading=!0,this.error=null,this.emit();try{let r={},o=await q("field",()=>this.cfg.load(),r);if(n!==this.seq)return;this.options=this.cfg.options?this.cfg.options(o):Pe(o),this.ready=!0,this.options.length===0&&T({kind:"options_empty",surface:"field",tool:r.tool});let a=this.value==null?"":String(this.value);this.options.length&&(a===""||!this.options.some(i=>String(i.value)===a))&&(this.value=this.options[0].value)}catch(r){if(n!==this.seq)return;this.options=[],this.error=D(r)}finally{n===this.seq&&(this.loading=!1,this.emit())}}setValue(n){this.value=n;let r=this.validate();this.error=r?{message:r,unavailable:!1}:null,this.emit()}validate(){return this.cfg.validate?this.cfg.validate(this.value):null}get valid(){return this.validate()==null}reset(){this.value=this.cfg.value??"",this.error=null,this.emit()}dispose(){for(let n of this.depUnsubs)n();this.depUnsubs=[]}};function Ne(e){if(!e||typeof e!="object")return null;let t=e;if(t.error!==!0)return null;let n=typeof t.message=="string"&&t.message?t.message:"tool call failed",r=typeof t.hint=="string"&&t.hint?` \\u2014 ${t.hint}`:"";return`${n}${r}`}var v=class extends I{constructor(n){super();b(this,"loading",!1);b(this,"error",null);b(this,"lastResult",null);b(this,"cfg");this.cfg=n}async run(){if(this.loading)return;for(let o of this.cfg.fields??[]){let a=o.validate();if(a!=null){this.error={message:a,unavailable:!1},this.emit(),T({kind:"action_blocked",surface:"action",tool:this.cfg.tool});return}}if(this.cfg.confirm){if(typeof globalThis.confirm!="function"){this.error={message:"This action needs confirmation, which this page cannot show.",unavailable:!1},this.emit(),T({kind:"action_blocked",surface:"action",tool:this.cfg.tool});return}if(!globalThis.confirm(this.cfg.confirm))return}this.loading=!0,this.error=null,this.emit();let n;try{let o=typeof this.cfg.args=="function"?this.cfg.args():this.cfg.args??{};n=await q("action",()=>p(this.cfg.tool,o))}catch(o){this.error=D(o),this.loading=!1,this.emit(),this.cfg.onError?.(this.error);return}let r=Ne(n)??this.cfg.checkResult?.(n)??null;if(r!=null){this.error={message:r,unavailable:!1},this.loading=!1,this.emit();let o=n&&typeof n=="object"?n.code:void 0;T({kind:"result_rejected",surface:"action",tool:this.cfg.tool,...typeof o=="string"&&o?{code:o}:{}}),this.cfg.onError?.(this.error);return}return this.lastResult=n,this.loading=!1,this.emit(),this.cfg.onSuccess?.(n),n}reset(){this.error=null,this.lastResult=null,this.emit()}},x=class extends I{constructor(n){super();b(this,"data",null);b(this,"loading",!1);b(this,"refreshing",!1);b(this,"error",null);b(this,"done",!1);b(this,"cfg");b(this,"timer",null);b(this,"seq",0);this.cfg=n,(n.autoLoad??!0)&&this.load()}async load(){this.clearTimer();let n=++this.seq;this.data==null?this.loading=!0:this.refreshing=!0,this.error=null,this.emit();try{let o=await q("resource",()=>this.cfg.load());if(n!==this.seq)return;this.data=o,this.done=this.cfg.until?this.cfg.until(o):!0,this.cfg.pollEvery&&!this.done&&(this.timer=setTimeout(()=>void this.load(),this.cfg.pollEvery))}catch(o){if(n!==this.seq)return;this.error=D(o)}finally{n===this.seq&&(this.loading=!1,this.refreshing=!1,this.emit())}}refresh(){return this.load()}stop(){this.clearTimer()}clearTimer(){this.timer&&(clearTimeout(this.timer),this.timer=null)}},R=class extends I{constructor(n){super();b(this,"items",[]);b(this,"page",0);b(this,"pageSize");b(this,"total",0);b(this,"loading",!1);b(this,"error",null);b(this,"cfg");b(this,"seq",0);this.cfg=n,this.pageSize=n.pageSize??20,(n.autoLoad??!0)&&this.loadPage(0)}async loadPage(n){let r=++this.seq;this.loading=!0,this.error=null,this.emit();try{let o=await q("list",()=>this.cfg.load({page:n,pageSize:this.pageSize}));if(r!==this.seq)return;this.items=o.items??[],this.total=o.total??this.items.length,this.page=n}catch(o){if(r!==this.seq)return;this.error=D(o)}finally{r===this.seq&&(this.loading=!1,this.emit())}}next(){return this.loadPage(this.page+1)}prev(){return this.loadPage(Math.max(0,this.page-1))}get hasMore(){return(this.page+1)*this.pageSize<this.total}};function Me(e,t){let n=t.error?.unavailable?"unavailable":t.loading?"loading":t.error?"error":"ready";e.setAttribute("data-lb-state",n),t.error?e.setAttribute("data-lb-error",t.error.message):e.removeAttribute("data-lb-error")}function ze(e,t){let n=()=>t.setValue(e.value);e.addEventListener("change",n);let r=t.subscribe(()=>{Me(e,t),e.disabled=t.loading,e.innerHTML="";for(let o of t.options){let a=document.createElement("option");a.value=String(o.value),a.textContent=o.label,e.appendChild(a)}e.value=t.value==null?"":String(t.value)});return()=>{e.removeEventListener("change",n),r()}}function qe(e,t){let n=e.type==="checkbox",r=e.tagName==="SELECT"?"change":"input",o=()=>t.setValue(n?e.checked:e.value);e.addEventListener(r,o);let a=t.subscribe(()=>{if(n)e.checked=!!t.value;else{let i=t.value==null?"":String(t.value);e.value!==i&&(e.value=i)}e.setAttribute("data-lb-state",t.error?"error":"ready"),t.error?e.setAttribute("data-lb-error",t.error.message):e.removeAttribute("data-lb-error")});return()=>{e.removeEventListener(r,o),a()}}function De(e,t){let n=a=>{a.preventDefault(),t.run()};e.addEventListener("click",n);let r,o=t.subscribe(()=>{let a=t.error?.unavailable?"unavailable":t.loading?"loading":t.error?"error":t.lastResult!=null?"success":"ready";e.setAttribute("data-lb-state",a),"disabled"in e&&(e.disabled=t.loading),e.setAttribute("aria-busy",String(t.loading)),t.error?e.setAttribute("data-lb-error",t.error.message):e.removeAttribute("data-lb-error"),r&&clearTimeout(r),a==="success"&&(r=setTimeout(()=>{!t.loading&&!t.error&&e.setAttribute("data-lb-state","ready")},1600))});return()=>{e.removeEventListener("click",n),o(),r&&clearTimeout(r)}}var $=["STILL_CHASING","COULD_NOT_REACH_STILL_TRYING","INTEREST_VALIDATED_OR_MEETING_PLANED","NOT_INTERESTED_LOST"],H=[{value:"",label:"Default ranking"},{value:"SCORE:DESC",label:"Score \\u2193"},{value:"SCORE:ASC",label:"Score \\u2191"},{value:"NAME:ASC",label:"Name A\\u2192Z"},{value:"NAME:DESC",label:"Name Z\\u2192A"},{value:"SIZE:DESC",label:"Size \\u2193"},{value:"SIZE:ASC",label:"Size \\u2191"},{value:"SECTOR:ASC",label:"Sector A\\u2192Z"},{value:"STATUS:ASC",label:"Status A\\u2192Z"},{value:"CONTACT_COUNT:DESC",label:"Contacts \\u2193"},{value:"LAST_PROSPECTING_ACTION_AT:DESC",label:"Last action \\u2193"},{value:"LAST_PROSPECTING_ACTION_AT:ASC",label:"Last action \\u2191"},{value:"EPILOGUE_STATUS_SET_AT:DESC",label:"Outcome set \\u2193"},{value:"LIKED:DESC",label:"Liked first"},{value:"DISLIKED:DESC",label:"Disliked first"}];function Fe(e){let t=String(e??"").trim().toUpperCase(),n=H.some(r=>r.value===t);return new S({kind:"select",value:n?t:"",load:async()=>H.slice()})}var z=[{value:"WANTED",label:"Wanted"},{value:"WON",label:"Won"},{value:"LOST",label:"Lost"},{value:"UNWANTED",label:"Unwanted"}],je={value:"",label:"Pick a status"};function se(e){let t=String(e??"").trim().toUpperCase(),n=z.some(r=>r.value===t);return new S({kind:"select",value:n?t:"",validate:r=>String(r??"")===""?"Pick a status":null,load:async()=>n?z.slice():[je,...z]})}function ce(e){let t=()=>{let n=typeof e.leadIds=="function"?e.leadIds():e.leadIds;return Array.isArray(n)?n:e.leadId?[e.leadId]:[]};return new v({tool:"leadbay_set_lead_status",fields:e.date?[e.status,e.date]:[e.status],confirm:e.confirm,args:()=>({lead_ids:t(),status:e.status.value,...e.date&&e.date.value?{status_date:e.date.value}:{},...e.ask?{_triggered_by:e.ask}:{}}),checkResult:n=>{let r=n?.failed;if(!Array.isArray(r)||r.length===0)return null;let o=t().length,a=r[0]?.message??"write rejected";return r.length===o?`Status not applied: ${a}`:`${r.length} of ${o} leads failed: ${a}`}})}function Ue(e){return new S({kind:"select",load:()=>p("leadbay_list_campaigns",{_triggered_by:e}),options:t=>(t?.campaigns??[]).map(r=>{let o=r?.campaign??r;return o?.id?{value:o.id,label:o.name??o.ai_generated_name??String(o.id)}:null}).filter(r=>r!=null)})}function de(e){return new v({tool:"leadbay_report_outreach",fields:e.note?[e.note]:[],args:()=>({lead_id:e.leadId,...e.status?{epilogue_status:e.status.value}:{},note:e.note?e.note.value:"",verification:{source:"user_confirmed",ref:e.ref??"logged from artifact"},_triggered_by:e.ask})})}function $e(e){return new v({tool:"leadbay_add_note",fields:[e.note],args:()=>({leadId:e.leadId,note:e.note.value})})}function ue(e){return new v({tool:"leadbay_like_lead",args:{lead_id:e}})}function he(e){return new v({tool:"leadbay_dislike_lead",args:{lead_id:e}})}function ge(e){let t=e??{},n=t.ai_agent_lead_score;if(typeof n=="number"&&n>0)return"Requalify";let r=t.qualification_summary?.answered;return typeof r=="number"&&r>0?"Requalify":"Qualify"}function be(e){let t=()=>{let o=typeof e.leadIds=="function"?e.leadIds():e.leadIds;return Array.isArray(o)?o:e.leadId?[e.leadId]:[]},n=0,r=new v({tool:"leadbay_bulk_qualify_leads",confirm:e.confirm,args:()=>{let o=t();return n=o.length,{leadIds:o,wait_for_completion:!1,...e.ask?{_triggered_by:e.ask}:{}}},checkResult:o=>{let a=o??{},i=Array.isArray(a.failed)?a.failed:[],l=n;if(i.length>0){let d=i[0]?.error??"launch rejected";return i.length>=l?`Qualification did not start: ${d}`:`${i.length} of ${l} leads did not start: ${d}`}if(a.quota_exceeded){let d=a.launched_count??0;return d>0?`Quota reached \\u2014 ${d} of ${l} launched, the rest were not started.`:"Quota reached \\u2014 no leads were queued."}return null}});return Object.defineProperty(r,"label",{enumerable:!0,get:()=>(typeof e.scored=="function"?e.scored():e.scored)?"Requalify":"Qualify"}),r}function He(e,t,n=15e3){return new x({pollEvery:n,load:()=>p("leadbay_qualify_status",{...e?.notification_id?{notification_id:e.notification_id}:{},...e?.lead_ids?.length?{lead_ids:e.lead_ids}:{},...typeof e?.lens_id=="number"?{lens_id:e.lens_id}:{},...t?{_triggered_by:t}:{}}),until:r=>{let o=r??{};return Array.isArray(o.still_running)?o.still_running.length===0:o.status!=null&&o.status!=="running"}})}function Be(e,t){return new x({autoLoad:!1,load:()=>p("leadbay_account_history",{leadId:e,_triggered_by:t})})}function Ge(e,t){return new x({autoLoad:!1,load:()=>p("leadbay_research_lead_by_id",{leadId:e,_triggered_by:t})})}var B=new Map;function fe(e={}){let t=e.lang??"",n=B.get(t);return n||(n=(async()=>{try{let r=await p("leadbay_list_sectors",{...e.lang?{lang:e.lang}:{}}),o=Array.isArray(r)?r:Array.isArray(r?.sectors)?r.sectors:[],a={};for(let i of o){let l=i??{};l.id!=null&&typeof l.label=="string"&&l.label&&(a[String(l.id)]=l.label)}return a}catch{return{}}})(),B.set(t,n)),n}function me(e,t={}){let n=e??{},r=i=>typeof i=="string"&&i.trim()&&i.trim()!=="null"?i.trim():void 0,o=n.sector_id!=null?t[String(n.sector_id)]:void 0,a=Array.isArray(n.phone_numbers)?n.phone_numbers:[];return{summary:r(n.short_description)??r(n.description)??o,sector:o,phone:a.map(r).find(Boolean),email:r(n.email)}}function Ke(e){let t=()=>{let a=e.kind;return typeof a=="string"?a:typeof a=="function"?a():String(a?.value??"followups")||"followups"},n=()=>{let a=e.campaignId,i=typeof a=="string"?a:a?.value;return i?String(i):void 0},r=()=>typeof e.order=="string"?e.order:String(e.order?.value??""),o=new R({pageSize:e.pageSize??20,load:async({page:a,pageSize:i})=>{let l=t(),d;if(l==="campaign"){let u=n();if(!u)return{items:[],total:0};d=await p("leadbay_campaign_call_sheet",{campaign_id:u,page:a,count:i,_triggered_by:e.ask})}else l==="discover"?d=await p("leadbay_pull_leads",{page:a,count:i,...e.lensId?{lensId:e.lensId}:{},...r()?{order:r()}:{},_triggered_by:e.ask}):d=await p("leadbay_pull_followups",{page:a,count:i,...e.city?{city:e.city}:{},...r()?{order:r()}:{},_triggered_by:e.ask});let c=d??{},s=c.leads??c.items??[];return{items:s,total:c.pagination?.total??c.total_leads??s.length}}});return Object.assign(o,{leadUrl:a=>{let i=a??{},l=encodeURIComponent(String(i.id??"")),d=t();if(d==="campaign"){let s=n();if(s)return`https://leadbay.app/app/campaign?campaign=${encodeURIComponent(s)}&lead=${l}`}return`https://leadbay.app/app/${d==="discover"||i.in_monitor===!1?"discover":"monitor"}?lead=${l}`}})}function Ve(e){let t=e?.location?.pos;if(!Array.isArray(t)||t.length<2)return null;let[n,r]=t;return typeof n!="number"||typeof r!="number"||!Number.isFinite(n)||!Number.isFinite(r)||n===0&&r===0||n<-90||n>90||r<-180||r>180?null:[n,r]}function W(e,t){let n=Math.PI/180,r=(t[0]-e[0])*n,o=(t[1]-e[1])*n,a=Math.sin(r/2)**2+Math.cos(e[0]*n)*Math.cos(t[0]*n)*Math.sin(o/2)**2;return 6371*2*Math.atan2(Math.sqrt(a),Math.sqrt(1-a))}var pe=11;function We(e){let t=e.filter(a=>Array.isArray(a?.pos)&&a.pos.length===2);if(t.length===0)return null;let n=t.slice(0,pe),r=n.map(a=>a.pos.join(",")),o=new URLSearchParams({api:"1",travelmode:"driving"});return r.length===1?o.set("destination",r[0]):(o.set("origin",r[0]),o.set("destination",r[r.length-1]),r.length>2&&o.set("waypoints",r.slice(1,-1).join("|"))),{url:`https://www.google.com/maps/dir/?${o.toString()}`,used:n.length,truncated:t.length-n.length}}function Qe(e){let t=0;for(let n=1;n<e.length;n++)t+=W(e[n-1].pos,e[n].pos);return t}function Ye(e,t){let n=e.slice();if(n.length<=2)return n;let r=[],o=t??n[0].pos;for(;n.length;){let a=0,i=1/0;for(let d=0;d<n.length;d++){let c=W(o,n[d].pos);c<i&&(i=c,a=d)}let[l]=n.splice(a,1);r.push(l),o=l.pos}return r}function Ze(e){let t=se(e.currentStatus),n=new S({kind:"select",value:$[0],load:async()=>$.map(i=>({value:i,label:ye[i]??i}))}),r=new S({validate:i=>String(i??"").trim()?null:"Add a note before logging"}),o=new x({autoLoad:!1,load:async()=>{let i=await p("leadbay_research_lead_by_id",{leadId:e.leadId,_triggered_by:e.ask}),l=Array.isArray(i?.contacts?.reachable)?i.contacts.reachable:[],d=Array.isArray(i?.contacts?.candidates)?i.contacts.candidates:[],c=new Set,s=[];for(let g of[...l,...d]){let h=g?.id??g?.contact_id;h&&c.has(h)||(h&&c.add(h),s.push(g))}let u=i?.engagement?.recommended_contact?.contact_id;return s.map(g=>Xe(g,u))}}),a=new x({load:async()=>me(e.lead,await fe())});return{leadId:e.leadId,contacts:o,context:a,status:t,saveStatus:ce({leadId:e.leadId,status:t,ask:e.ask}),epilogue:n,note:r,logOutreach:de({leadId:e.leadId,ask:e.ask,status:n,note:r}),like:ue(e.leadId),dislike:he(e.leadId),qualify:be({leadId:e.leadId,ask:e.ask,scored:ge(e.lead)==="Requalify"})}}function Je(e){let t=r=>typeof r=="function"?r():r!==!1,n=new S({value:"ok",validate:()=>t(e.email)||t(e.phone)?null:"Pick email, phone, or both."});return new v({tool:"leadbay_enrich_contacts",fields:[n],confirm:e.confirm===""?void 0:e.confirm??"Reveal this contact? It uses enrichment quota.",args:()=>({leadId:e.leadId,contactId:e.contactId,email:t(e.email),phone:t(e.phone),...e.ask?{_triggered_by:e.ask}:{}}),checkResult:r=>{let o=r??{};return o.error?o.message??"Enrichment failed":null},onSuccess:()=>e.onDone?.()})}var ye={STILL_CHASING:"Still chasing",COULD_NOT_REACH_STILL_TRYING:"Could not reach \\u2014 still trying",INTEREST_VALIDATED_OR_MEETING_PLANED:"Interested / meeting planned",NOT_INTERESTED_LOST:"Not interested \\u2014 lost"};function Xe(e,t){let n=e??{},r=i=>typeof i=="string"&&i.trim()&&i!=="null"?i.trim():void 0,o=[r(n.first_name),r(n.last_name)].filter(Boolean).join(" ")||r(n.name)||"Unnamed contact",a=r(n.id)??r(n.contact_id);return{contactId:a,name:o,title:r(n.job_title)??r(n.title),email:r(n.email),phone:r(n.phone)??r(n.phone_number)??r((n.phone_numbers??[])[0]),linkedin:r(n.linkedin_page),recommended:n.recommended===!0||t!=null&&a===t,enriched:n.enrichment_done===!0}}function et(e){let t=null;return new x({...e.autoLoad!==void 0?{autoLoad:e.autoLoad}:{},pollEvery:e.pollEvery??4e3,until:n=>!!n?.all_done,load:async()=>{if(!t){let n=await p("leadbay_enrich_titles",{...e.leadIds?{leadIds:e.leadIds}:{},titles:e.titles,...e.email!==void 0?{email:e.email}:{},...e.phone!==void 0?{phone:e.phone}:{},...e.confirm!==void 0?{confirm:e.confirm}:{},_triggered_by:e.ask}),r=Array.isArray(n?.lead_ids)?n.lead_ids:[],o=n?.notification_id??null;if(t=o||r.length>0?{notification_id:o,lead_ids:r}:null,!t)return{...n,all_done:!0,no_job:!0}}return p("leadbay_bulk_enrich_status",{...t.notification_id?{notification_id:t.notification_id}:{},...t.lead_ids.length>0?{lead_ids:t.lead_ids}:{},...e.titles?{titles:e.titles}:{},...e.email!==void 0?{email:e.email}:{},...e.phone!==void 0?{phone:e.phone}:{},_triggered_by:e.ask})}})}function tt(e){let t=()=>typeof e.order=="string"?e.order:String(e.order?.value??"");return new R({pageSize:e.pageSize??20,load:async({page:n,pageSize:r})=>{let o=await p("leadbay_pull_leads",{page:n,count:r,...e.lensId?{lensId:e.lensId}:{},...t()?{order:t()}:{},_triggered_by:e.ask}),a=o.leads??[];return{items:a,total:o.pagination?.total??a.length}}})}function nt(e){let t=e.source??"followups",n=()=>typeof e.order=="string"?e.order:String(e.order?.value??"");return new R({pageSize:e.pageSize??20,load:async({page:r,pageSize:o})=>{let i=t==="campaign"?await p("leadbay_campaign_call_sheet",{campaign_id:e.campaignId,page:r,count:o,_triggered_by:e.ask}):await p("leadbay_pull_followups",{page:r,count:o,...e.city?{city:e.city}:{},...n()?{order:n()}:{},_triggered_by:e.ask}),l=i.leads??i.items??[];return{items:l,total:i.total_leads??i.pagination?.total??l.length}}})}async function rt(e){let t=await p("leadbay_pull_followups",{count:e.sample??200,filtered:!1,...e.personal===void 0?{}:{personal:e.personal},_triggered_by:e.ask}),n=new Map;for(let o of t.leads??[]){let a=o?.sector_id;if(a==null||a==="")continue;let i=String(a);n.set(i,(n.get(i)??0)+1)}let r=e.sectors??{};return[...n.entries()].map(([o,a])=>{let i=r[o];return{id:o,label:i??`Sector ${o}`,sampled:a,resolved:i!=null}}).sort((o,a)=>a.sampled-o.sampled||o.id.localeCompare(a.id))}async function Q(e){let t=await p("leadbay_pull_followups",{count:1,set_filter:{criteria:e.criteria},...e.city?{city:e.city}:{},...e.cityId?{city_id:e.cityId}:{},...e.personal===void 0?{}:{personal:e.personal},_triggered_by:e.ask}),n=t.active_filters?.criteria??[],r=u=>typeof u?.type=="string"?u.type:null,o=new Set;for(let u of e.criteria){let g=r(u);g&&o.add(g)}(e.city||e.cityId)&&o.add("location_ids");let a=new Set(n.map(r).filter(u=>u!=null)),i=[...o].every(u=>a.has(u)),l=[...a].every(u=>o.has(u)),d=new Set(["location_ids"]),c=(u,g)=>u.filter(h=>r(h)===g).map(h=>JSON.stringify(Object.keys(h).filter(f=>f!=="type").sort().map(f=>[f,h[f]]))).sort().join("|"),s=[...o].every(u=>d.has(u)||c(e.criteria,u)===c(n,u));return{total:k(t.pagination?.total),applied:n,trusted:i&&l&&s}}async function ot(e){let t=[];return e.sectorIds?.length&&t.push({type:"sector_ids",sectors:e.sectorIds,is_excluded:!1}),Q({criteria:t,personal:e.personal,ask:e.ask,city:e.city,cityId:e.cityId})}async function at(e){let t=[],n=e.buckets.length;for(let r of e.buckets){let o;try{let a=await Q({criteria:r.criterion?[r.criterion]:[],personal:e.personal,ask:e.ask});o={...r,total:a.total,trusted:a.trusted}}catch(a){o={...r,total:0,trusted:!1,error:V(a)}}t.push(o),e.onProgress?.(t.length,n,o)}return t}async function it(e){try{let t=await Q({criteria:[],personal:e.personal,ask:e.ask});return{id:"__all__",label:"Whole book",total:t.total,trusted:t.trusted}}catch(t){return{id:"__all__",label:"Whole book",total:0,trusted:!1,error:V(t)}}}async function lt(e){let t=await p("leadbay_pull_followups",{count:e.sample??200,filtered:!1,...e.personal===void 0?{}:{personal:e.personal},_triggered_by:e.ask}),n=new Map;for(let a of t.leads??[]){let i=a?.[e.field];if(i==null||i===""||i==="null")continue;let l=String(i);n.set(l,(n.get(l)??0)+1)}let r=e.labels??{},o=[...n.entries()].map(([a,i])=>({id:a,label:r[a]??`${e.field} ${a}`,sampled:i,...e.criterion?{criterion:e.criterion(a)}:{}})).sort((a,i)=>i.sampled-a.sampled||a.id.localeCompare(i.id));return e.limit!=null?o.slice(0,e.limit):o}var st=/[\\s,]+(inc|llc|corp|ltd|gmbh|co|s\\.?a|s\\.?l|plc|ag|sas|sarl)\\.?$/i;function ct(e,t){let n=e??{},r=s=>typeof s=="string"&&s.trim()&&s!=="null"?s.trim():null,o=r(n.first_name),a=r(n.last_name),i=[o,a].filter(Boolean).join(" ")||r(n.name);if(!i)return null;let l=r(n.linkedin_page);if(l&&/^https:\\/\\//i.test(l))return{url:l,profile:!0};let d=(r(t)??"").replace(st,"").trim(),c=[i,d].filter(Boolean).join(" ");return{url:"https://www.linkedin.com/search/results/people/?keywords="+encodeURIComponent(c).replace(/%20/g,"+"),profile:!1}}function we(e){let t=e??{},n=l=>typeof l=="string"&&l&&l!=="null"?l:null,r=Array.isArray(t.phone_numbers)?t.phone_numbers:[],o=t.has_phone===!0||r.some(l=>n(l)!=null),a=n(t.email)!=null;return o||a?"reachable":k(t.contacts_count)+k(t.org_contacts_count)>0?"contacts_only":"empty"}async function dt(e){let t=e.sample??200,n=await p("leadbay_pull_followups",{count:t,filtered:!1,...e.personal===void 0?{}:{personal:e.personal},_triggered_by:e.ask}),r=Array.isArray(n.leads)?n.leads:[],o={reachable:0,contacts_only:0,empty:0};for(let i of r)o[we(i)]++;let a=[["reachable","Callable now"],["contacts_only","Contacts, no channel"],["empty","No contacts"]];return{sampled:r.length,bookTotal:k(n.pagination?.total),rows:a.map(([i,l])=>({id:i,label:l,total:o[i],trusted:!0,sampled:o[i]}))}}function ut(e){return new x({load:()=>p("leadbay_team_activity",{weeks:e.weeks??4,_triggered_by:e.ask})})}var ht="http://www.w3.org/2000/svg",E=(e,t)=>{let n=document.createElementNS(ht,e);for(let[r,o]of Object.entries(t))n.setAttribute(r,String(o));return n};function k(e){return typeof e=="number"&&isFinite(e)?e:0}function gt(e,t={}){let n=Array.isArray(e)?e:[];if(n.length===0){let m=document.createElement("div");m.className="lb-empty";let w=document.createElement("div");if(w.className="lb-empty-title",w.textContent=t.emptyTitle??"Nothing in this window",m.appendChild(w),t.emptyHint){let L=document.createElement("div");L.className="lb-empty-hint",L.textContent=t.emptyHint,m.appendChild(L)}return m}let r=t.width??640,o=t.height??160,a=40,i=8,l=12,d=26,c=r-a-i,s=o-l-d,u=Math.max(1,...n.map(m=>k(m.count))),g=m=>n.length===1?a+c/2:a+m/(n.length-1)*c,h=m=>l+s-k(m)/u*s,f=E("svg",{class:"lb-chart",viewBox:`0 0 ${r} ${o}`,preserveAspectRatio:"none",role:"img","aria-label":t.label??`Trend across ${n.length} points, peak ${u}`});for(let m of[0,u]){f.appendChild(E("line",{class:"lb-chart-grid",x1:a,x2:r-i,y1:h(m),y2:h(m)}));let w=E("text",{x:a-6,y:h(m)+4,"text-anchor":"end"});w.textContent=String(m),f.appendChild(w)}let y=n.map((m,w)=>`${g(w)},${h(m.count)}`);f.appendChild(E("path",{class:"lb-chart-area",d:`M${g(0)},${h(0)} L${y.join(" L")} L${g(n.length-1)},${h(0)} Z`})),f.appendChild(E("path",{class:"lb-chart-line",d:`M${y.join(" L")}`})),n.forEach((m,w)=>{f.appendChild(E("circle",{class:"lb-chart-dot",cx:g(w),cy:h(m.count),r:3}))});let _=n.length===1?[[0,"middle"]]:[[0,"start"],[n.length-1,"end"]];for(let[m,w]of _){let L=E("text",{x:g(m),y:o-8,"text-anchor":w});L.textContent=String(n[m].date??"").slice(0,10),f.appendChild(L)}return f}function bt(e){let t=document.createElement("div");t.className="lb-tiles";for(let n of e){let r=document.createElement("div");r.className="lb-tile";let o=document.createElement("span");o.className="lb-tile-label",o.textContent=n.label;let a=document.createElement("span");a.className="lb-tile-value",a.textContent=String(n.value),r.append(o,a),t.appendChild(r)}return t}function ft(e){let{rows:t,columns:n}=e;if(!t||t.length===0){let d=document.createElement("div");d.className="lb-empty";let c=document.createElement("div");if(c.className="lb-empty-title",c.textContent=e.emptyTitle??"Nothing to show",d.appendChild(c),e.emptyHint){let s=document.createElement("div");s.className="lb-empty-hint",s.textContent=e.emptyHint,d.appendChild(s)}return d}let r=e.sortKey??n[0].key,o=e.sortDir??"descending",a=document.createElement("table");a.className="lb-table";let i=()=>{a.textContent="";let d=document.createElement("thead"),c=document.createElement("tr");for(let g of n){let h=document.createElement("th");h.textContent=g.label,g.num&&h.setAttribute("data-num",""),h.setAttribute("aria-sort",g.key===r?o:"none"),h.setAttribute("tabindex","0"),h.setAttribute("role","button");let f=()=>{r===g.key?o=o==="ascending"?"descending":"ascending":(r=g.key,o=g.num?"descending":"ascending"),i(),e.onSort?.(r,o)};h.addEventListener("click",f),h.addEventListener("keydown",y=>{(y.key==="Enter"||y.key===" ")&&(y.preventDefault(),f())}),c.appendChild(h)}d.appendChild(c),a.appendChild(d);let s=t.slice().sort((g,h)=>{let f=g[r],y=h[r];if(typeof f=="string"||typeof y=="string"){let _=String(f??"").localeCompare(String(y??""));return o==="ascending"?_:-_}return o==="ascending"?k(f)-k(y):k(y)-k(f)}),u=document.createElement("tbody");for(let g of s){let h=document.createElement("tr");h.setAttribute("aria-selected","false");for(let f of n){let y=document.createElement("td");f.num&&y.setAttribute("data-num","");let _=f.cell?.(g);_==null?y.textContent=f.num?String(k(g[f.key])):String(g[f.key]??"\\u2014"):typeof _=="string"?y.textContent=_:y.appendChild(_),h.appendChild(y)}u.appendChild(h)}a.appendChild(u)};i();let l=document.createElement("div");return l.style.overflowX="auto",l.appendChild(a),l}var mt={VERSION:G,configure:Ie,styles:Re,call:p,report:T,setTelemetry:Ae,field:e=>new S(e),action:e=>new v(e),resource:e=>new x(e),list:e=>new R(e),bindSelect:ze,bindValue:qe,bindAction:De,sparkline:gt,tiles:bt,leaderboard:ft,campaigns:Ue,segmentCount:ot,portfolioSectors:rt,coverage:at,coverageBuckets:lt,coverageTotal:it,reachCoverage:dt,leadReach:we,outreach:de,note:$e,like:ue,dislike:he,qualify:be,qualifyLabel:ge,qualifyStatus:He,leadStatus:se,setStatus:ce,relanceRow:Ze,enrichContact:Je,sectorLabels:fe,leadContext:me,contactLinkedin:ct,leadPos:Ve,distanceKm:W,routeUrl:We,routeDistanceKm:Qe,orderByProximity:Ye,GOOGLE_MAPS_STOP_LIMIT:pe,EPILOGUE_LABELS:ye,sortOrder:Fe,leadHistory:Be,leadProfile:Ge,enrichment:et,callList:nt,leadList:tt,leadSource:Ke,teamActivity:ut,EPILOGUE_STATUSES:$,LEAD_STATUSES:z,SORT_ORDERS:H};typeof globalThis<"u"&&(globalThis.LeadbayArtifacts=mt);})();</script>\n<script>(function () {\n const lb = window.LeadbayArtifacts\n const SERVER = "Leadbay"\n const PAGE_SIZE = 100\n // Every write this page makes is a rep pressing one of its controls; this is\n // what those calls cite as their trigger. The same for every user, because\n // the page is.\n const ASK = "Route planner board"\n const ROUTE_STORAGE_KEY = "route-planner:stops"\n const GOOGLE_MAPS_STOP_LIMIT = 11\n\n const STATUS_LABELS = { WANTED: "Wanted", WON: "Won", LOST: "Lost", UNWANTED: "Unwanted" }\n const PROSPECTING_ACTIONS = [\n { value: "INTEREST_VALIDATED_OR_MEETING_PLANED", label: "Meeting planned" },\n { value: "STILL_CHASING", label: "Still chasing" },\n { value: "COULD_NOT_REACH_STILL_TRYING", label: "Couldn\'t reach" },\n { value: "NOT_INTERESTED_LOST", label: "Not interested" },\n ]\n const CHANNELS = [\n { value: "In-person visit", label: "In-person visit" },\n { value: "Call", label: "Call" },\n { value: "Email", label: "Email" },\n { value: "Message", label: "Message" },\n ]\n\n const state = {\n leadsById: new Map(),\n leadOrder: [],\n total: 0,\n page: -1,\n loading: false,\n city: "",\n cityId: "",\n activeCriteria: [],\n selectedId: null,\n route: readRoute(),\n workedToday: new Map(),\n }\n\n let mcp = null\n let lastConnectorError = null\n\n lb.configure({ call: callLeadbay, timeoutMs: 60000 })\n lb.styles()\n\n // MAP\n // zoomSnap 0.25: at whole zoom steps fitBounds settles one level short in the\n // half-width pane and leaves France small in a wide margin; quarter steps let\n // it fill the pane, centred.\n const map = L.map("map", { zoomControl: true, attributionControl: true, preferCanvas: false, zoomSnap: 0.25 })\n // A workspace serves exactly ONE country, and every Leadbay result says\n // which one in _meta.region. The map follows it: a US rep planning Austin\n // must not open on France with their pins floating over the Atlantic.\n //\n // Per region: the outline file published beside the page, the bounds the\n // opening view fits (the country\'s main landmass \u2014 Corsica included for\n // France; the lower 48 for the US, so Alaska and Hawaii sit off-screen\n // rather than shrinking the country to a strip), where to centre it, and\n // the outline\'s source.\n const REGIONS = {\n fr: {\n bounds: L.latLngBounds([41.3, -5.2], [51.1, 9.6]), // Corsen\u2192Italy, Bonifacio\u2192Dunkerque\n center: [46.6, 2.5],\n cityExample: "Grenoble",\n attribution: \'Boundaries: <a href="https://github.com/gregoiredavid/france-geojson" target="_blank" rel="noopener">france-geojson</a>\',\n },\n us: {\n bounds: L.latLngBounds([24.5, -124.8], [49.4, -66.9]), // Key West\u2192Maine, San Diego\u2192Washington\n center: [37.0, -95.8],\n cityExample: "Austin",\n attribution: \'Boundaries: <a href="https://www.census.gov/geographies/mapping-files/time-series/geo/cartographic-boundary.html" target="_blank" rel="noopener">US Census Bureau</a>\',\n },\n }\n let region = null\n // Until the first answer says which country this is, hold a neutral view\n // rather than guess France and flash it at a US rep.\n map.setView([40, -30], 2)\n map.attributionControl.setPrefix(false)\n\n // The home view is the whole country, just fitting the pane. The zoom is\n // computed from the pane\'s size, and the host often sizes the artifact\n // frame a beat AFTER the page runs \u2014 so the first fit can be for a\n // near-empty box, and invalidateSize alone never re-zooms. While the map is\n // still on the home view, every resize re-frames it; the first move the\n // rep (or the page) makes ends that.\n let homeView = true\n let framing = false\n function showHome(options) {\n if (!region) return\n framing = true\n homeView = true\n map.setView(region.center, map.getBoundsZoom(region.bounds), options)\n framing = false\n }\n map.on("movestart", () => {\n if (!framing) homeView = false\n })\n\n // Called once, from the first answer. _meta.region is authoritative; a\n // lead\'s own country is the fallback; France is the last resort, as the\n // original tenant.\n function adoptRegion(result, leads) {\n if (region) return\n const fromMeta = result && result._meta && String(result._meta.region || "").toLowerCase()\n const fromLead = (leads.find((lead) => lead && lead.location && lead.location.country) || {}).location\n const key = REGIONS[fromMeta] ? fromMeta : fromLead && String(fromLead.country).toLowerCase() === "us" ? "us" : "fr"\n region = REGIONS[key]\n map.attributionControl.addAttribution(region.attribution)\n const cityInput = document.getElementById("city-input")\n if (cityInput) cityInput.placeholder = "City, e.g. " + region.cityExample\n showHome({ animate: false })\n }\n document.getElementById("fit-leads").addEventListener("click", fitToLeads)\n const markerLayer = L.layerGroup().addTo(map)\n const markersById = new Map()\n let routeLine = null\n\n let declutterFrame = 0\n map.on("moveend", scheduleLabelDeclutter)\n\n const mapFrameObserver = new ResizeObserver(handleMapResize)\n mapFrameObserver.observe(document.getElementById("map"))\n\n document.getElementById("city-form").addEventListener("submit", handleCitySubmit)\n document.getElementById("city-clear").addEventListener("click", handleCityClear)\n\n renderPanel()\n renderRouteLine()\n boot()\n\n // CONNECTOR\n\n async function boot() {\n const claudeRuntime = window.claude\n mcp = claudeRuntime && typeof claudeRuntime.use === "function" ? await claudeRuntime.use("mcp") : null\n if (!mcp) {\n setTally("Leadbay isn\'t available here")\n showNotice(\n "This planner needs the Leadbay connector. Open it in claude.ai with Leadbay connected under Settings \u2192 Connectors.",\n "error",\n )\n return\n }\n loadBasemap()\n const start = readBoardConfig()\n if (start.city) {\n state.city = start.city\n const input = document.getElementById("city-input")\n if (input) input.value = start.city\n }\n loadFollowups({ reset: true })\n }\n\n // The board\'s one editable part, set by the agent that published it. A\n // missing or malformed block is the same as an empty one.\n function readBoardConfig() {\n try {\n const raw = document.getElementById("lb-board-config")\n const parsed = raw ? JSON.parse(raw.textContent || "{}") : {}\n return { city: typeof parsed.city === "string" ? parsed.city.trim() : "" }\n } catch (_) {\n return { city: "" }\n }\n }\n\n async function callLeadbay(tool, args) {\n if (!mcp) {\n const unavailable = new Error("Leadbay isn\'t reachable from this view")\n unavailable.code = "unavailable"\n throw unavailable\n }\n lastConnectorError = null\n try {\n const res = await mcp.callTool(SERVER, tool, { _origin: "artifact", ...args })\n // `payload` is the documented home of the answer (structuredContent, or\n // the text parsed as JSON) \u2014 the same unwrap the kit\'s own bridge does.\n return res && "payload" in res && res.payload !== undefined ? res.payload : res\n } catch (error) {\n lastConnectorError = error\n throw error\n }\n }\n\n function describeConnectorError(error, kind) {\n const code = (lastConnectorError && lastConnectorError.code) || (error && error.code)\n if (code === "needs_reauth") return "Your Leadbay connection has expired. Reconnect Leadbay in claude.ai Settings \u2192 Connectors, then reload."\n if (code === "server_not_connected" || code === "selection_required")\n return "Leadbay isn\'t connected for you. Add Leadbay in claude.ai Settings \u2192 Connectors, then reload."\n if (code === "not_in_manifest") return "Leadbay is turned off for this page. Allow it from the page\'s connector prompt, then reload."\n if (code === "blocked_by_policy" || code === "approval_required") return "Your organization\'s policy blocks this Leadbay action."\n if (code === "timeout" || code === "server_unavailable") {\n // The call timeout (60s here, via lb.configure) is a Promise.race: it\n // abandons the call, it does not cancel it. The request carries on, reaches the backend, and a write\n // usually lands anyway \u2014 which is why a rep sees this message and then\n // finds the action applied in the app. "Try again" would write it twice.\n return kind === "write"\n ? "Leadbay is slow to confirm \u2014 your change was most likely saved. Reload before retrying, or you may log it twice."\n : "Leadbay took too long to answer. Try again in a moment."\n }\n return (error && error.message) || "Leadbay couldn\'t complete the request."\n }\n\n // DATA\n\n async function loadFollowups({ reset, setFilter }) {\n if (state.loading) return\n state.loading = true\n lastConnectorError = null\n const page = reset ? 0 : state.page + 1\n setMapStatus(reset ? "Loading follow-ups\u2026" : "Loading more follow-ups\u2026")\n const args = { count: PAGE_SIZE, page, _triggered_by: ASK }\n if (setFilter) args.set_filter = setFilter\n else if (state.cityId) args.city_id = state.cityId\n else if (state.city) args.city = state.city\n\n try {\n const result = await lb.call("leadbay_followups_map", args)\n if (result && result.status === "ambiguous_locations") {\n adoptRegion(result, [])\n renderAmbiguousLocations(result.location_ambiguities)\n return\n }\n clearNotice()\n const leads = Array.isArray(result && result.leads) ? result.leads : []\n adoptRegion(result, leads)\n state.activeCriteria = (result && result.active_filters && result.active_filters.criteria) || []\n state.total = (result && result.pagination && result.pagination.total) || leads.length\n if (reset) {\n state.leadsById.clear()\n state.leadOrder = []\n }\n for (const lead of leads) {\n if (!lead || !lead.id) continue\n if (!state.leadsById.has(lead.id)) state.leadOrder.push(lead.id)\n state.leadsById.set(lead.id, lead)\n }\n state.page = page\n syncRouteWithLeads()\n renderMarkers()\n if (state.selectedId && !state.leadsById.has(state.selectedId)) state.selectedId = null\n renderPanel()\n } catch (error) {\n showNotice(describeConnectorError(error), "error")\n } finally {\n state.loading = false\n setMapStatus(null)\n renderTally()\n }\n }\n\n // The country outline comes from Leadbay (leadbay_get_basemap), for the\n // workspace\'s own region, so the page needs no file beside it. Without it\n // the pins still work; only the grey country shape is missing.\n async function loadBasemap() {\n try {\n const res = await lb.call("leadbay_get_basemap", {})\n if (!res || !res.geojson) throw new Error("no outline in the answer")\n adoptRegion({ _meta: { region: res.region } }, [])\n // Sent as a JSON string (see leadbay_get_basemap) \u2014 parse it here.\n const outline = typeof res.geojson === "string" ? JSON.parse(res.geojson) : res.geojson\n const basemap = L.geoJSON(outline, { style: { className: "dept" }, interactive: false }).addTo(map)\n basemap.bringToBack()\n } catch (error) {\n console.warn("Basemap unavailable", error)\n }\n }\n\n function readRoute() {\n try {\n const stored = JSON.parse(localStorage.getItem(ROUTE_STORAGE_KEY) || "[]")\n return Array.isArray(stored) ? stored.filter((stop) => stop && stop.id && isValidPosition(stop.pos)) : []\n } catch {\n return []\n }\n }\n\n function saveRoute() {\n try {\n localStorage.setItem(ROUTE_STORAGE_KEY, JSON.stringify(state.route))\n } catch {\n /* per-viewer convenience only */\n }\n }\n\n // Keep saved stops in step with fresh lead data (name, status) when the lead is loaded again.\n function syncRouteWithLeads() {\n for (const stop of state.route) {\n const lead = state.leadsById.get(stop.id)\n if (lead) Object.assign(stop, stopFromLead(lead))\n }\n saveRoute()\n }\n\n // HELPERS\n\n function h(tag, props, ...children) {\n const element = document.createElement(tag)\n for (const [key, value] of Object.entries(props || {})) {\n if (value === undefined || value === null || value === false) continue\n if (key === "class") element.className = value\n else if (key === "text") element.textContent = value\n else if (key.startsWith("on")) element.addEventListener(key.slice(2).toLowerCase(), value)\n else element.setAttribute(key, value === true ? "" : String(value))\n }\n for (const child of children.flat()) {\n if (child === null || child === undefined || child === false) continue\n element.append(child instanceof Node ? child : document.createTextNode(String(child)))\n }\n return element\n }\n\n function svgIcon(paths) {\n const wrapper = document.createElement("span")\n wrapper.setAttribute("aria-hidden", "true")\n wrapper.style.display = "contents"\n wrapper.innerHTML =\n \'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">\' +\n paths +\n "</svg>"\n return wrapper\n }\n\n const ICONS = {\n close: \'<line x1="18" y1="6" x2="6" y2="18"/><line x1="6" y1="6" x2="18" y2="18"/>\',\n up: \'<polyline points="18 15 12 9 6 15"/>\',\n down: \'<polyline points="6 9 12 15 18 9"/>\',\n remove: \'<line x1="5" y1="12" x2="19" y2="12"/>\',\n out: \'<line x1="7" y1="17" x2="17" y2="7"/><polyline points="7 7 17 7 17 17"/>\',\n }\n\n function escapeHtml(text) {\n return String(text).replace(/[&<>"\']/g, (character) => `&#${character.charCodeAt(0)};`)\n }\n\n function realValue(value) {\n return value && value !== "null" ? value : null\n }\n\n function isValidPosition(position) {\n return (\n Array.isArray(position) &&\n position.length >= 2 &&\n Number.isFinite(position[0]) &&\n Number.isFinite(position[1]) &&\n !(position[0] === 0 && position[1] === 0)\n )\n }\n\n function leadPosition(lead) {\n const position = lead && lead.location && lead.location.pos\n return isValidPosition(position) ? [position[0], position[1]] : null\n }\n\n function leadStatus(lead) {\n const status = String((lead && lead.state && lead.state.status) || "").toUpperCase()\n return STATUS_LABELS[status] ? status : "DEFAULT"\n }\n\n // Today\'s prospecting actions as the button values ("STILL_CHASING"...).\n // The field is absent on a lead nobody has actioned \u2014 that is an empty set.\n function todaysActions(lead) {\n const list = lead && Array.isArray(lead.epilogue_today_statuses) ? lead.epilogue_today_statuses : []\n return new Set(list.map((entry) => String(entry.type || "").replace(/^EPILOGUE_/, "")))\n }\n\n // The most recent action ever set, for the "Last:" line only. Not a\n // selection: a deselect does not clear it.\n function currentEpilogue(lead) {\n const raw = lead && lead.epilogue_status\n return typeof raw === "string" && raw ? raw.replace(/^EPILOGUE_/, "") : null\n }\n\n function shortDate(iso) {\n const date = new Date(iso)\n return Number.isNaN(date.getTime()) ? "" : date.toLocaleDateString(undefined, { day: "numeric", month: "short" })\n }\n\n function leadPlace(lead) {\n const location = (lead && lead.location) || {}\n return [realValue(location.city), realValue(location.state)].filter(Boolean).join(", ")\n }\n\n function leadSize(lead) {\n const size = lead && lead.size\n if (!size || (!size.min && !size.max)) return null\n if (size.min && size.max) return `${size.min}\u2013${size.max} employees`\n return `${size.min || size.max}+ employees`\n }\n\n function isToday(isoDate) {\n if (!isoDate) return false\n const date = new Date(isoDate)\n const now = new Date()\n return date.getFullYear() === now.getFullYear() && date.getMonth() === now.getMonth() && date.getDate() === now.getDate()\n }\n\n function workedTodayLabel(lead) {\n const sessionAction = state.workedToday.get(lead.id)\n if (sessionAction) return sessionAction\n const todayStatuses = Array.isArray(lead.epilogue_today_statuses) ? lead.epilogue_today_statuses : []\n if (todayStatuses.length) {\n const latestType = String(todayStatuses[todayStatuses.length - 1].type || "").replace(/^EPILOGUE_/, "")\n const known = PROSPECTING_ACTIONS.find((action) => action.value === latestType)\n return known ? known.label : "Worked today"\n }\n if (isToday(lead.last_prospecting_action_at)) return "Worked today"\n return null\n }\n\n function distanceKm(from, to) {\n const radians = Math.PI / 180\n const deltaLat = (to[0] - from[0]) * radians\n const deltaLng = (to[1] - from[1]) * radians\n const haversine =\n Math.sin(deltaLat / 2) ** 2 + Math.cos(from[0] * radians) * Math.cos(to[0] * radians) * Math.sin(deltaLng / 2) ** 2\n return 6371 * 2 * Math.atan2(Math.sqrt(haversine), Math.sqrt(1 - haversine))\n }\n\n function formatKm(kilometres) {\n return kilometres < 10 ? `${kilometres.toFixed(1)} km` : `${Math.round(kilometres)} km`\n }\n\n function leadbayUrl(leadId) {\n return `https://leadbay.app/app/monitor?lead=${encodeURIComponent(leadId)}`\n }\n\n function googleMapsPlaceUrl(lead) {\n const address = realValue(lead.location && lead.location.full)\n const position = leadPosition(lead)\n const query = address ? `${lead.name || ""} ${address}`.trim() : position.join(",")\n return `https://www.google.com/maps/search/?api=1&query=${encodeURIComponent(query)}`\n }\n\n function googleMapsRouteUrl(stops) {\n const usable = stops.slice(0, GOOGLE_MAPS_STOP_LIMIT)\n const coordinates = usable.map((stop) => stop.pos.join(","))\n const params = new URLSearchParams({ api: "1", travelmode: "driving" })\n if (coordinates.length === 1) {\n params.set("destination", coordinates[0])\n } else {\n params.set("origin", coordinates[0])\n params.set("destination", coordinates[coordinates.length - 1])\n if (coordinates.length > 2) params.set("waypoints", coordinates.slice(1, -1).join("|"))\n }\n return `https://www.google.com/maps/dir/?${params.toString()}`\n }\n\n function stopFromLead(lead) {\n return { id: lead.id, name: lead.name || "Unnamed company", place: leadPlace(lead), pos: leadPosition(lead), status: leadStatus(lead) }\n }\n\n function routeIndex(leadId) {\n return state.route.findIndex((stop) => stop.id === leadId)\n }\n\n // CHROME\n\n function setTally(text) {\n document.getElementById("tally").textContent = text\n }\n\n function renderTally() {\n const loaded = state.leadOrder.length\n if (!loaded && state.page < 0) return\n const unmapped = state.leadOrder.filter((leadId) => !leadPosition(state.leadsById.get(leadId))).length\n const scope = state.city ? ` in ${state.city}` : ""\n const unmappedText = unmapped ? ` \xB7 ${unmapped} without an address on the map` : ""\n setTally(`${loaded.toLocaleString()} of ${state.total.toLocaleString()} follow-ups${scope}${unmappedText}`)\n document.getElementById("city-clear").hidden = !state.city\n }\n\n function setMapStatus(text) {\n const status = document.getElementById("map-status")\n status.hidden = !text\n if (text) document.getElementById("map-status-text").textContent = text\n }\n\n function showNotice(message, tone, ...extra) {\n const notice = document.getElementById("notice")\n notice.dataset.tone = tone || ""\n notice.replaceChildren(h("span", { text: message }), ...extra)\n }\n\n function clearNotice() {\n document.getElementById("notice").replaceChildren()\n }\n\n function renderAmbiguousLocations(candidates) {\n const options = (Array.isArray(candidates) ? candidates : [])\n .map((candidate) => ({\n id: candidate && (candidate.id ?? candidate.admin_area_id ?? candidate.city_id),\n label: candidate && (candidate.display_name || candidate.name || candidate.label || candidate.full_name),\n }))\n .filter((candidate) => candidate.id !== undefined && candidate.id !== null && candidate.label)\n\n if (!options.length) {\n const hint = region === REGIONS.us ? "Add the state, e.g. \\"Springfield, IL\\"." : "Add the d\xE9partement or region, e.g. \\"Valence, Dr\xF4me\\"."\n showNotice(`Several places match "${state.city}". ${hint}`, "error")\n return\n }\n const buttons = options.map((option) =>\n h("button", { class: "lb-btn", type: "button", text: option.label, onClick: handleAmbiguityPick(option) }),\n )\n showNotice(`Which "${state.city}" do you mean?`, "", ...buttons)\n }\n\n function handleAmbiguityPick(option) {\n return function handlePick() {\n state.cityId = String(option.id)\n state.city = option.label\n clearNotice()\n loadFollowups({ reset: true })\n }\n }\n\n function handleCitySubmit(event) {\n event.preventDefault()\n const city = document.getElementById("city-input").value.trim()\n if (!city) {\n handleCityClear()\n return\n }\n state.city = city\n state.cityId = ""\n state.selectedId = null\n loadFollowups({ reset: true })\n }\n\n // Drop only the location criterion so the rest of the rep\'s Monitor filter survives.\n function handleCityClear() {\n state.city = ""\n state.cityId = ""\n state.selectedId = null\n document.getElementById("city-input").value = ""\n const remainingCriteria = state.activeCriteria.filter((criterion) => criterion && criterion.type !== "location_ids")\n loadFollowups({ reset: true, setFilter: { criteria: remainingCriteria } })\n }\n\n function handleMapResize() {\n // pan:false, so the resize itself does not count as the rep moving away.\n map.invalidateSize({ pan: false })\n if (homeView) showHome({ animate: false })\n scheduleLabelDeclutter()\n }\n\n // LABELS\n\n function scheduleLabelDeclutter() {\n cancelAnimationFrame(declutterFrame)\n declutterFrame = requestAnimationFrame(declutterLabels)\n }\n\n function labelPriority(leadId) {\n if (state.selectedId === leadId) return 0\n return routeIndex(leadId) >= 0 ? 1 : 2\n }\n\n // Show every label that fits; overlapping ones yield to the selected lead, then route stops, then list order.\n function declutterLabels() {\n const mapSize = map.getSize()\n const entries = []\n for (const leadId of state.leadOrder) {\n const marker = markersById.get(leadId)\n const label = marker && marker.getElement() && marker.getElement().querySelector(".pin-label")\n if (label) entries.push({ leadId, marker, label })\n }\n for (const entry of entries) entry.label.dataset.visible = "yes"\n for (const entry of entries) {\n const rect = entry.label.getBoundingClientRect()\n const origin = map.getContainer().getBoundingClientRect()\n entry.box = { left: rect.left - origin.left, top: rect.top - origin.top, right: rect.right - origin.left, bottom: rect.bottom - origin.top }\n }\n entries.sort((first, second) => labelPriority(first.leadId) - labelPriority(second.leadId))\n\n const placed = []\n for (const entry of entries) {\n const box = entry.box\n const onScreen = box.right > 0 && box.bottom > 0 && box.left < mapSize.x && box.top < mapSize.y\n const collides = placed.some(\n (other) => box.left < other.right + 2 && box.right + 2 > other.left && box.top < other.bottom + 1 && box.bottom + 1 > other.top,\n )\n const forced = labelPriority(entry.leadId) < 2\n const visible = onScreen && (forced || !collides)\n entry.label.dataset.visible = visible ? "yes" : "no"\n if (visible) placed.push(box)\n }\n }\n\n // MARKERS\n\n function pinIcon(lead) {\n const stopNumber = routeIndex(lead.id) + 1\n const isSelected = state.selectedId === lead.id\n const size = stopNumber ? 26 : isSelected ? 20 : 16\n const html =\n `<span class="pin" data-status="${leadStatus(lead)}" data-acted="${workedTodayLabel(lead) ? "yes" : "no"}"` +\n ` data-selected="${isSelected ? "yes" : "no"}" data-stop="${stopNumber ? "yes" : "no"}">${stopNumber || ""}</span>` +\n `<span class="pin-label">${escapeHtml(lead.name || "Unnamed company")}</span>`\n return L.divIcon({ className: "pin-wrap", html, iconSize: [size, size], iconAnchor: [size / 2, size / 2] })\n }\n\n function markerZIndex(lead) {\n if (state.selectedId === lead.id) return 1000\n return routeIndex(lead.id) >= 0 ? 500 : 0\n }\n\n function renderMarkers() {\n const seen = new Set()\n for (const leadId of state.leadOrder) {\n const lead = state.leadsById.get(leadId)\n const position = leadPosition(lead)\n if (!position) continue\n seen.add(leadId)\n const existing = markersById.get(leadId)\n if (existing) {\n existing.setIcon(pinIcon(lead))\n existing.setZIndexOffset(markerZIndex(lead))\n continue\n }\n const marker = L.marker(position, {\n icon: pinIcon(lead),\n title: lead.name || "Lead",\n alt: lead.name || "Lead",\n keyboard: true,\n riseOnHover: true,\n zIndexOffset: markerZIndex(lead),\n })\n marker.on("click", handleMarkerClick(leadId))\n marker.addTo(markerLayer)\n markersById.set(leadId, marker)\n }\n for (const [leadId, marker] of markersById) {\n if (!seen.has(leadId)) {\n markerLayer.removeLayer(marker)\n markersById.delete(leadId)\n }\n }\n renderRouteLine()\n scheduleLabelDeclutter()\n }\n\n function handleMarkerClick(leadId) {\n return function handleClick() {\n selectLead(leadId, { fly: false })\n }\n }\n\n function refreshMarker(leadId) {\n const lead = state.leadsById.get(leadId)\n const marker = markersById.get(leadId)\n if (!lead || !marker) return\n marker.setIcon(pinIcon(lead))\n marker.setZIndexOffset(markerZIndex(lead))\n scheduleLabelDeclutter()\n }\n\n function renderRouteLine() {\n const positions = state.route.map((stop) => stop.pos)\n if (routeLine) {\n map.removeLayer(routeLine)\n routeLine = null\n }\n if (positions.length >= 2) {\n routeLine = L.polyline(positions, { className: "route-line", interactive: false }).addTo(map)\n }\n }\n\n // Framing the leads is now something the rep ASKS for, via "Fit to leads".\n // It used to run itself on first load, which meant the board opened on\n // whatever region the book clustered in rather than on France.\n function fitToLeads() {\n const positions = state.leadOrder.map((leadId) => leadPosition(state.leadsById.get(leadId))).filter(Boolean)\n if (!positions.length) {\n showHome()\n return\n }\n map.fitBounds(L.latLngBounds(positions).pad(0.15), { maxZoom: 11 })\n }\n\n // SELECTION\n\n function selectLead(leadId, { fly }) {\n const previous = state.selectedId\n state.selectedId = leadId\n if (previous) refreshMarker(previous)\n refreshMarker(leadId)\n renderPanel()\n const position = leadPosition(state.leadsById.get(leadId))\n if (fly && position) map.flyTo(position, Math.max(map.getZoom(), 11), { duration: prefersReducedMotion() ? 0 : 0.6 })\n }\n\n function prefersReducedMotion() {\n return window.matchMedia && window.matchMedia("(prefers-reduced-motion: reduce)").matches\n }\n\n function handleClosePanel() {\n const previous = state.selectedId\n state.selectedId = null\n if (previous) refreshMarker(previous)\n renderPanel()\n }\n\n // PANEL\n\n function renderPanel() {\n const panel = document.getElementById("panel")\n const lead = state.selectedId && state.leadsById.get(state.selectedId)\n panel.replaceChildren(...(lead ? renderLeadDetail(lead) : renderOverview()))\n panel.scrollTop = 0\n }\n\n function renderOverview() {\n return [renderRouteSection(), renderLeadListSection()]\n }\n\n function renderRouteSection() {\n const stops = state.route\n let totalKm = 0\n for (let index = 1; index < stops.length; index++) totalKm += distanceKm(stops[index - 1].pos, stops[index].pos)\n\n const header = h(\n "div",\n { class: "section" },\n h("h2", { class: "section-title" }, h("span", { text: "Today\'s route" }), h("span", { text: stops.length ? `${stops.length} stops` : "" })),\n )\n if (!stops.length) {\n header.append(h("div", { class: "empty", text: "Click a pin, then Add to route. Stops keep their order here and on the map." }))\n return header\n }\n\n const list = h("div", { class: "rows" })\n stops.forEach((stop, index) => {\n const legKm = index ? distanceKm(stops[index - 1].pos, stop.pos) : null\n list.append(\n h(\n "div",\n { class: "stop" },\n h("span", { class: "stop-num", text: String(index + 1), "aria-hidden": "true" }),\n h(\n "div",\n { class: "row-main" },\n h("button", { class: "stop-name", type: "button", text: stop.name, onClick: handleStopOpen(stop.id), "aria-label": `Stop ${index + 1}: ${stop.name}` }),\n h("span", { class: "row-sub", text: [stop.place, legKm !== null ? `+${formatKm(legKm)}` : "Start"].filter(Boolean).join(" \xB7 ") }),\n ),\n h(\n "div",\n { class: "stop-tools" },\n h("button", { class: "icon-btn", type: "button", title: "Move up", "aria-label": `Move ${stop.name} up`, disabled: index === 0, onClick: handleStopMove(index, -1) }, svgIcon(ICONS.up)),\n h("button", { class: "icon-btn", type: "button", title: "Move down", "aria-label": `Move ${stop.name} down`, disabled: index === stops.length - 1, onClick: handleStopMove(index, 1) }, svgIcon(ICONS.down)),\n h("button", { class: "icon-btn", type: "button", title: "Remove from route", "aria-label": `Remove ${stop.name} from route`, onClick: handleStopRemove(stop.id) }, svgIcon(ICONS.remove)),\n ),\n ),\n )\n })\n\n const overLimit = stops.length > GOOGLE_MAPS_STOP_LIMIT\n header.append(\n list,\n h("div", { class: "summary", text: `${formatKm(totalKm)} as the crow flies${overLimit ? ` \xB7 Google Maps takes the first ${GOOGLE_MAPS_STOP_LIMIT} stops` : ""}` }),\n h(\n "div",\n { class: "actions" },\n h("a", { class: "lb-btn lb-btn-submit", href: googleMapsRouteUrl(stops), target: "_blank", rel: "noopener", text: "Drive it in Google Maps" }),\n stops.length > 2 ? h("button", { class: "lb-btn", type: "button", text: "Shortest order", title: "Reorder by nearest next stop, keeping stop 1 as the start", onClick: handleRouteOptimise }) : null,\n h("button", { class: "lb-btn", type: "button", text: "Clear route", onClick: handleRouteClear }),\n ),\n )\n return header\n }\n\n function renderLeadListSection() {\n const section = h(\n "div",\n { class: "section" },\n h("h2", { class: "section-title" }, h("span", { text: "Follow-ups on the map" }), h("span", { text: state.leadOrder.length ? String(state.leadOrder.length) : "" })),\n )\n if (!state.leadOrder.length) {\n section.append(h("div", { class: "empty", text: state.loading || state.page < 0 ? "Loading your follow-ups\u2026" : "No follow-ups match. Try another city, or All areas." }))\n return section\n }\n const list = h("div", { class: "rows" })\n for (const leadId of state.leadOrder) {\n const lead = state.leadsById.get(leadId)\n const onMap = Boolean(leadPosition(lead))\n const worked = workedTodayLabel(lead)\n const stopNumber = routeIndex(leadId) + 1\n list.append(\n h(\n "button",\n { class: "row-btn", type: "button", onClick: handleLeadRowClick(leadId) },\n h("span", { class: "dot", "data-status": leadStatus(lead), "data-acted": worked ? "yes" : "no", "aria-hidden": "true" }),\n h(\n "span",\n { class: "row-main" },\n h("span", { class: "row-name", text: lead.name || "Unnamed company" }),\n h("span", { class: "row-sub", text: [leadPlace(lead) || "No address", worked].filter(Boolean).join(" \xB7 ") }),\n ),\n h("span", { class: "row-meta", text: stopNumber ? `Stop ${stopNumber}` : onMap ? "" : "Not on map" }),\n ),\n )\n }\n section.append(list)\n if (state.leadOrder.length < state.total) {\n section.append(\n h("button", { class: "lb-btn", type: "button", disabled: state.loading, text: `Load ${Math.min(PAGE_SIZE, state.total - state.leadOrder.length)} more`, onClick: handleLoadMore }),\n )\n }\n return section\n }\n\n function renderLeadDetail(lead) {\n const name = lead.name || "Unnamed company"\n const position = leadPosition(lead)\n const address = realValue(lead.location && lead.location.full)\n const contact = lead.recommended_contact\n const contactName = contact ? [contact.first_name, contact.last_name].filter(Boolean).join(" ") : ""\n // The name links to LinkedIn, as in the agent\'s table and the triage board:\n // their profile, else a people search (lb.contactLinkedin).\n const contactLink = contactName ? lb.contactLinkedin(contact, lead.name) : null\n const phone = realValue((lead.phone_numbers || [])[0])\n const email = realValue(lead.email)\n const companyChannels = [phone && `\u260E ${phone}`, email && `\u2709 ${email}`].filter(Boolean).join(" \xB7 ")\n\n const chips = h("div", { class: "chips", id: "lead-chips" })\n fillChips(chips, lead)\n\n const head = h(\n "div",\n { class: "section" },\n h(\n "div",\n { class: "panel-head" },\n h("h2", { text: name }),\n h("button", { class: "icon-btn", type: "button", title: "Close", "aria-label": `Close ${name}`, onClick: handleClosePanel }, svgIcon(ICONS.close)),\n ),\n chips,\n h(\n "div",\n { class: "facts" },\n h("span", { class: "address", text: address || leadPlace(lead) || "No address on file" }),\n leadSize(lead) ? h("span", { text: leadSize(lead) }) : null,\n contactName\n ? h("span", null,\n "Contact: ",\n contactLink\n ? h("a", {\n class: "lb-link", href: contactLink.url, target: "_blank", rel: "noopener",\n title: contactLink.profile ? `${contactName} on LinkedIn` : `No LinkedIn profile on file \u2014 search LinkedIn for ${contactName}`,\n text: contactName,\n })\n : contactName,\n contact.job_title ? " \xB7 " + contact.job_title : null)\n : h("span", { text: "No contact yet \u2014 enrich to find one" }),\n h("span", { text: companyChannels ? `Company line: ${companyChannels}` : "No company phone or email \u2014 enrich to look for them" }),\n ),\n h(\n "div",\n { class: "actions" },\n position ? h("button", { class: "lb-btn", type: "button", text: "Locate on map", onClick: handleLocate(lead.id) }) : null,\n position ? renderRouteToggle(lead) : null,\n ),\n h(\n "div",\n { class: "links" },\n position ? h("a", { class: "lb-link-out", href: googleMapsPlaceUrl(lead), target: "_blank", rel: "noopener", "aria-label": `Open ${name} in Google Maps` }, "Google Maps ", svgIcon(ICONS.out)) : null,\n h("a", { class: "lb-link-out", href: leadbayUrl(lead.id), target: "_blank", rel: "noopener", "aria-label": `Open ${name} in Leadbay` }, "Open in Leadbay ", svgIcon(ICONS.out)),\n ),\n )\n\n return [head, renderStatusSection(lead), renderProspectingSection(lead), renderOutreachSection(lead), renderNearbySection(lead)]\n }\n\n function fillChips(container, lead) {\n const status = leadStatus(lead)\n const worked = workedTodayLabel(lead)\n // replaceChildren is NOT h(): its signature is (Node or DOMString)..., so a\n // null argument is stringified into the text node "null" rather than\n // skipped. Filter before passing, never pass a conditional straight in.\n const chips = [h("span", { class: "chip", "data-status": status }, h("i", { "aria-hidden": "true" }), STATUS_LABELS[status] || "No status")]\n if (worked) chips.push(h("span", { class: "chip acted" }, h("i", { "aria-hidden": "true" }), worked))\n container.replaceChildren(...chips)\n }\n\n function refreshLeadViews(leadId) {\n refreshMarker(leadId)\n const lead = state.leadsById.get(leadId)\n const chips = document.getElementById("lead-chips")\n if (chips && state.selectedId === leadId && lead) fillChips(chips, lead)\n const stopIndex = routeIndex(leadId)\n if (stopIndex >= 0 && lead) {\n Object.assign(state.route[stopIndex], stopFromLead(lead))\n saveRoute()\n }\n }\n\n function renderRouteToggle(lead) {\n const inRoute = routeIndex(lead.id) >= 0\n return h("button", {\n class: inRoute ? "lb-btn" : "lb-btn lb-btn-submit",\n type: "button",\n text: inRoute ? `Remove stop ${routeIndex(lead.id) + 1}` : "Add to route",\n onClick: handleRouteToggle(lead.id),\n })\n }\n\n function renderStatusSection(lead) {\n const name = lead.name || "this lead"\n const select = h("select", { class: "lb-select", id: `status-${lead.id}`, "aria-label": `Lead status for ${name}` })\n const message = h("div", { class: "msg", role: "status", "aria-live": "polite" })\n const statusField = lb.leadStatus(leadStatus(lead) === "DEFAULT" ? "" : leadStatus(lead))\n const saveStatus = lb.setStatus({ leadId: lead.id, status: statusField, ask: ASK })\n let appliedResult = null\n\n lb.bindSelect(select, statusField)\n select.addEventListener("change", handleStatusChange)\n saveStatus.subscribe(handleStatusState)\n\n function handleStatusChange() {\n saveStatus.run()\n }\n\n function handleStatusState(action) {\n select.setAttribute("data-lb-state", action.loading ? "loading" : action.error ? "error" : action.lastResult ? "success" : "ready")\n message.dataset.tone = action.error ? "error" : action.lastResult ? "ok" : ""\n if (action.loading) {\n message.textContent = "Saving\u2026"\n return\n }\n if (action.error) {\n message.textContent = describeConnectorError(action.error, "write")\n return\n }\n if (action.lastResult && action.lastResult !== appliedResult) {\n appliedResult = action.lastResult\n lead.state = Object.assign({}, lead.state, { status: statusField.value })\n message.textContent = `Set to ${STATUS_LABELS[statusField.value] || statusField.value} for everyone in your org`\n refreshLeadViews(lead.id)\n }\n }\n\n return h("div", { class: "section" }, h("h3", { class: "section-title", text: "Status" }), select, message)\n }\n\n function renderProspectingSection(lead) {\n // Same model as the web app\'s Prospection cell: the four actions are a\n // MULTI-select over the lead\'s `epilogue_today_statuses`. Several can be\n // on for one day, and each tap turns one on or off on its own. What is\n // selected comes from that list, never from `epilogue_status` \u2014 a\n // deselect takes the type out of today\'s list and leaves epilogue_status\n // untouched, so reading epilogue_status would bring a removed action back\n // on the next open.\n const name = lead.name || "this lead"\n const message = h("div", { class: "msg", role: "status", "aria-live": "polite" })\n const buttons = PROSPECTING_ACTIONS.map((prospectingAction) =>\n h("button", {\n class: "choice",\n type: "button",\n role: "checkbox",\n text: prospectingAction.label,\n "data-value": prospectingAction.value,\n "aria-label": `${prospectingAction.label} for ${name}`,\n onClick: handleProspectingToggle(lead, prospectingAction),\n }),\n )\n const grid = h("div", { class: "choices", role: "group", "aria-label": `Prospecting actions for ${name}` }, buttons)\n // With nothing on today, say what was last set and when \u2014 as the web app\n // does \u2014 so the rep is not left thinking the lead was never worked.\n const last = h("div", { class: "summary" })\n paint()\n\n function paint() {\n const today = todaysActions(lead)\n for (const button of buttons) button.setAttribute("aria-checked", today.has(button.dataset.value) ? "true" : "false")\n const previous = currentEpilogue(lead)\n const option = PROSPECTING_ACTIONS.find((action) => action.value === previous)\n last.textContent = !today.size && option ? `Last: ${option.label}${lead.epilogue_status_set_at ? " \xB7 " + shortDate(lead.epilogue_status_set_at) : ""}` : ""\n last.hidden = !last.textContent\n }\n\n function handleProspectingToggle(targetLead, prospectingAction) {\n return async function handleToggle() {\n const selected = !todaysActions(targetLead).has(prospectingAction.value)\n for (const button of buttons) button.disabled = true\n message.dataset.tone = ""\n message.textContent = "Saving\u2026"\n try {\n await lb.call("leadbay_set_prospecting_action", {\n lead_id: targetLead.id,\n action: prospectingAction.value,\n selected,\n _triggered_by: ASK,\n })\n applyToggle(targetLead, prospectingAction.value, selected)\n message.dataset.tone = "ok"\n message.textContent = selected ? `\u201C${prospectingAction.label}\u201D on` : `\u201C${prospectingAction.label}\u201D off`\n } catch (error) {\n message.dataset.tone = "error"\n // Until the hosted server carries leadbay_set_prospecting_action (the\n // 0.41 release) the toggle cannot run. There is deliberately no\n // fallback through report_outreach: that path waits 60s on a\n // confirmation prompt a page cannot show.\n message.textContent = isToolMissing(error)\n ? "Needs the next Leadbay release \u2014 set it in the web app for now."\n : describeConnectorError(error, "write")\n } finally {\n for (const button of buttons) button.disabled = false\n paint()\n }\n }\n }\n\n return h("div", { class: "section" }, h("h3", { class: "section-title", text: "Prospecting action" }), grid, last, message)\n }\n\n // Mirror the write onto the lead so every view that reads it \u2014 this panel on\n // reopen, the pin\'s ring, the list \u2014 agrees without a reload.\n function applyToggle(lead, value, selected) {\n const type = "EPILOGUE_" + value\n const list = Array.isArray(lead.epilogue_today_statuses) ? lead.epilogue_today_statuses : []\n if (selected) {\n lead.epilogue_today_statuses = list.concat({ type, added_at: new Date().toISOString() })\n lead.epilogue_status = type\n lead.epilogue_status_set_at = new Date().toISOString()\n } else {\n lead.epilogue_today_statuses = list.filter((entry) => entry.type !== type)\n }\n // The session label would otherwise outlive a deselect; let the chip and\n // the ring derive from the lead\'s own data from here on.\n state.workedToday.delete(lead.id)\n refreshLeadViews(lead.id)\n }\n\n // A tool the hosted server does not know yet arrives as a tool error naming\n // it; anything else is a real failure the rep should see.\n function isToolMissing(error) {\n const text = String((error && (error.message || error.code)) || "")\n return /unknown tool|\btool\b[^.]*\bnot found|not_in_manifest|no such tool/i.test(text)\n }\n\n function renderOutreachSection(lead) {\n const name = lead.name || "this lead"\n const channelSelect = h(\n "select",\n { class: "lb-select", id: `channel-${lead.id}`, "aria-label": `Outreach channel for ${name}` },\n CHANNELS.map((channel) => h("option", { value: channel.value, text: channel.label })),\n )\n const noteInput = h("textarea", { class: "lb-input", id: `note-${lead.id}`, placeholder: "What happened? e.g. Met the store manager, wants a demo next week", "aria-label": `Outreach note for ${name}` })\n const submit = h("button", { class: "lb-btn lb-btn-submit", type: "submit", text: "Log outreach" })\n const message = h("div", { class: "msg", role: "status", "aria-live": "polite" })\n const hint = h("div", { class: "summary", text: "Sets no status \u2014 use Prospecting action above for that." })\n const form = h("form", { class: "section", onSubmit: handleOutreachSubmit }, h("h3", { class: "section-title", text: "Log outreach" }), channelSelect, noteInput, submit, hint, message)\n\n function handleOutreachSubmit(event) {\n event.preventDefault()\n const noteText = noteInput.value.trim()\n if (!noteText) {\n message.dataset.tone = "error"\n message.textContent = "Add a short note so your team knows what happened."\n noteInput.focus()\n return\n }\n // A plain note, as the web app\'s note field writes one \u2014 not\n // report_outreach. That tool asks a human to confirm a user_confirmed\n // outreach, and a page cannot show the prompt: the call waited 60s and\n // wrote anyway. It must keep asking, because the server cannot tell a\n // page from an agent that claims to be one; so the page, which the rep\n // is operating directly, uses the web app\'s own path instead. No status\n // here either: the Prospecting action toggles own that.\n const write = lb.note({\n leadId: lead.id,\n note: lb.field({ value: `${channelSelect.value}: ${noteText}` }),\n })\n write.subscribe(handleWriteState)\n write.run()\n\n function handleWriteState(action) {\n submit.disabled = action.loading\n submit.setAttribute("data-lb-state", action.loading ? "loading" : action.error ? "error" : action.lastResult ? "success" : "ready")\n message.dataset.tone = action.error ? "error" : action.lastResult ? "ok" : ""\n if (action.loading) message.textContent = "Logging\u2026"\n else if (action.error) message.textContent = describeConnectorError(action.error, "write")\n else if (action.lastResult) {\n state.workedToday.set(lead.id, `${channelSelect.value} logged`)\n noteInput.value = ""\n message.textContent = `${channelSelect.value} logged on ${name}`\n refreshLeadViews(lead.id)\n }\n }\n }\n\n return form\n }\n\n function renderNearbySection(lead) {\n const origin = leadPosition(lead)\n const section = h("div", { class: "section" }, h("h3", { class: "section-title", text: "Nearby follow-ups" }))\n if (!origin) {\n section.append(h("div", { class: "empty", text: "This lead has no position, so nearby leads can\'t be measured." }))\n return section\n }\n const nearby = state.leadOrder\n .filter((leadId) => leadId !== lead.id)\n .map((leadId) => state.leadsById.get(leadId))\n .map((candidate) => ({ candidate, position: leadPosition(candidate) }))\n .filter((entry) => entry.position)\n .map((entry) => ({ candidate: entry.candidate, kilometres: distanceKm(origin, entry.position) }))\n .sort((first, second) => first.kilometres - second.kilometres)\n .slice(0, 6)\n\n if (!nearby.length) {\n section.append(h("div", { class: "empty", text: "No other loaded follow-ups have a position yet." }))\n return section\n }\n const list = h("div", { class: "rows" })\n for (const entry of nearby) {\n const worked = workedTodayLabel(entry.candidate)\n list.append(\n h(\n "button",\n { class: "row-btn", type: "button", onClick: handleLeadRowClick(entry.candidate.id) },\n h("span", { class: "dot", "data-status": leadStatus(entry.candidate), "data-acted": worked ? "yes" : "no", "aria-hidden": "true" }),\n h("span", { class: "row-main" }, h("span", { class: "row-name", text: entry.candidate.name || "Unnamed company" }), h("span", { class: "row-sub", text: leadPlace(entry.candidate) })),\n h("span", { class: "row-meta", text: formatKm(entry.kilometres) }),\n ),\n )\n }\n section.append(list, h("div", { class: "summary", text: "Straight-line distance, among the follow-ups loaded on the map." }))\n return section\n }\n\n // HANDLERS\n\n function handleLeadRowClick(leadId) {\n return function handleClick() {\n selectLead(leadId, { fly: true })\n }\n }\n\n function handleStopOpen(leadId) {\n return function handleClick() {\n if (state.leadsById.has(leadId)) {\n selectLead(leadId, { fly: true })\n return\n }\n const stop = state.route.find((routeStop) => routeStop.id === leadId)\n if (stop) map.flyTo(stop.pos, Math.max(map.getZoom(), 11))\n }\n }\n\n function handleLocate(leadId) {\n return function handleClick() {\n const position = leadPosition(state.leadsById.get(leadId))\n if (position) map.flyTo(position, 14, { duration: prefersReducedMotion() ? 0 : 0.8 })\n }\n }\n\n function handleRouteToggle(leadId) {\n return function handleClick() {\n const index = routeIndex(leadId)\n if (index >= 0) state.route.splice(index, 1)\n else state.route.push(stopFromLead(state.leadsById.get(leadId)))\n afterRouteChange()\n renderPanel()\n }\n }\n\n function handleStopMove(index, direction) {\n return function handleClick() {\n const target = index + direction\n if (target < 0 || target >= state.route.length) return\n const [moved] = state.route.splice(index, 1)\n state.route.splice(target, 0, moved)\n afterRouteChange()\n renderPanel()\n }\n }\n\n function handleStopRemove(leadId) {\n return function handleClick() {\n const index = routeIndex(leadId)\n if (index >= 0) state.route.splice(index, 1)\n afterRouteChange()\n renderPanel()\n }\n }\n\n // Nearest-next-stop ordering from the first stop: good enough for a day of visits.\n function handleRouteOptimise() {\n const remaining = state.route.slice(1)\n const ordered = [state.route[0]]\n while (remaining.length) {\n const last = ordered[ordered.length - 1]\n let nearestIndex = 0\n for (let index = 1; index < remaining.length; index++) {\n if (distanceKm(last.pos, remaining[index].pos) < distanceKm(last.pos, remaining[nearestIndex].pos)) nearestIndex = index\n }\n ordered.push(remaining.splice(nearestIndex, 1)[0])\n }\n state.route = ordered\n afterRouteChange()\n renderPanel()\n }\n\n function handleRouteClear() {\n state.route = []\n afterRouteChange()\n renderPanel()\n }\n\n function afterRouteChange() {\n saveRoute()\n renderMarkers()\n }\n\n function handleLoadMore() {\n loadFollowups({ reset: false })\n }\n})()</script>\n' }, "triage_board": { "title": "Lead Triage Board", "icon": "list", "description": "Today's leads from your lens as cards you can like, give a status, tick a prospecting action on, note and requalify.", "tools": ["leadbay_pull_leads", "leadbay_like_lead", "leadbay_dislike_lead", "leadbay_set_lead_status", "leadbay_set_prospecting_action", "leadbay_add_note", "leadbay_bulk_qualify_leads", "leadbay_report_artifact_error"], "html": '<title>Lead Triage Board</title>\n<style>\n /* Only what the skin does not ship. Colours are the skin\'s tokens. */\n /* --lb-page-bg, not a raw grey: when a host marks the frame dark the cards\n go dark, and a fixed #f0f0f0 ground left the title white on light grey. */\n body { margin: 0; background: var(--lb-page-bg); color: var(--lb-fg); font-family: var(--lb-font); }\n .page { max-width: 1180px; margin: 0 auto; padding: 16px; box-sizing: border-box; display: flex; flex-direction: column; gap: 12px; }\n .page-head h1 { margin: 0; font-size: 18px; font-weight: 700; letter-spacing: -0.01em; }\n .page-head p { margin: 2px 0 0; font-size: 13px; color: var(--lb-muted); }\n .deck { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 12px; align-items: start; }\n\n .fit { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }\n .bar { font-size: 14px; letter-spacing: 1px; background: none; padding: 0; color: var(--lb-fg); }\n .verdict { font-size: 12px; font-weight: 600; color: var(--lb-muted); }\n .verdict[data-v="boosted"] { color: var(--color-green-foreground); }\n .verdict[data-v="penalised"] { color: var(--color-red-foreground); }\n .excerpt { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }\n\n /* Prospecting actions: the web app\'s per-action colours (ProspectionCell).\n The foreground is for the dot and the border only \u2014 yellow\'s is too light\n to read as text. */\n .actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }\n .lb-action { font: inherit; font-size: 13px; text-align: start; display: flex; align-items: center; gap: 8px;\n padding: 8px 10px; border-radius: var(--lb-radius-sm); border: 1px solid var(--lb-border);\n background: var(--lb-field); color: var(--lb-fg); cursor: pointer; transition: background-color .12s ease; }\n .lb-action::before { content: ""; flex: none; width: 8px; height: 8px; border-radius: 50%; background: var(--action-fg); }\n .lb-action:hover { background: var(--lb-chip-bg); }\n .lb-action[aria-checked="true"] { background: var(--action-bg); border-color: var(--action-fg); }\n .lb-action[disabled] { opacity: .6; cursor: progress; }\n .lb-action:focus-visible { outline: 2px solid var(--color-blue-foreground); outline-offset: 2px; }\n .lb-action[data-value="STILL_CHASING"] { --action-bg: var(--color-blue-background); --action-fg: var(--color-blue-foreground); }\n .lb-action[data-value="INTEREST_VALIDATED_OR_MEETING_PLANED"] { --action-bg: var(--color-green-background); --action-fg: var(--color-green-foreground); }\n .lb-action[data-value="COULD_NOT_REACH_STILL_TRYING"] { --action-bg: var(--color-yellow-background); --action-fg: var(--color-yellow-foreground); }\n .lb-action[data-value="NOT_INTERESTED_LOST"] { --action-bg: var(--color-red-background); --action-fg: var(--color-red-foreground); }\n @media (prefers-reduced-motion: reduce) { .lb-action { transition: none; } }\n .lb-row .lb-input { flex: 1; min-width: 0; }\n @media (max-width: 420px) { .actions { grid-template-columns: 1fr; } }\n</style>\n<div class="page">\n <header class="page-head">\n <h1>Today\'s leads</h1>\n <p>From your active lens. Like, set a status, tick a prospecting action \u2014 every control writes to Leadbay.</p>\n </header>\n\n <div class="lb-toolbar">\n <span class="lb-tally" id="tally"></span>\n <span class="lb-group">\n <label class="lb-field"><span class="lb-field-label">Taste</span>\n <select class="lb-select" id="f-taste" aria-label="Filter by taste">\n <option value="all">All</option><option value="liked">Liked</option><option value="disliked">Disliked</option><option value="none">Not rated</option>\n </select>\n </label>\n <label class="lb-field"><span class="lb-field-label">Verdict</span>\n <select class="lb-select" id="f-verdict" aria-label="Filter by qualifier verdict">\n <option value="all">All</option><option value="boosted">AI boosted</option><option value="neutral">No adjustment</option><option value="penalised">AI penalised</option>\n </select>\n </label>\n </span>\n <span class="lb-spacer"></span>\n <span class="lb-group">\n <label class="lb-field lb-field-inline"><input type="checkbox" id="select-all"><span class="lb-field-label">Select all</span></label>\n <select class="lb-select" id="bulk-status" aria-label="Status for selected leads"></select>\n <button class="lb-btn lb-btn-submit" id="bulk-apply" type="button">Apply to selected</button>\n </span>\n <div class="lb-msg" id="bulk-msg" role="status" aria-live="polite" style="flex:1 0 100%"></div>\n </div>\n\n <main class="deck" id="deck" data-lb-state="ready"></main>\n\n <div class="lb-pager">\n <button class="lb-btn" id="prev" type="button">Previous</button>\n <button class="lb-btn" id="next" type="button">Next</button>\n <span class="lb-spacer"></span>\n <span class="lb-pager-range" id="range"></span>\n </div>\n</div>\n<script>"use strict";(()=>{var ke=Object.defineProperty;var ve=(e,t,n)=>t in e?ke(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var b=(e,t,n)=>ve(e,typeof t!="symbol"?t+"":t,n);var Y=`\n:root{\n--color-black:#191919;--color-white:#fff;\n--color-gray-1:#f9f9f9;--color-gray-2:#f0f0f0;--color-gray-3:#e0e0e0;--color-gray-4:#cecece;\n--color-gray-5:#c4c4c4;--color-gray-6:#8d8d8d;--color-gray-7:#787878;--color-gray-8:#646464;\n--color-gray-9:#202020;\n--color-linkedin:#0a66c2;\n--color-blue-background:oklch(0.947 0.029 251);--color-blue-foreground:oklch(0.564 0.181 251);\n--color-green-background:oklch(0.947 0.029 141);--color-green-foreground:oklch(0.564 0.181 141);\n--color-red-background:oklch(0.947 0.029 26);--color-red-foreground:oklch(0.564 0.191 26);\n--color-gold-background:oklch(0.972 0.049 91);--color-gold-foreground:oklch(0.667 0.177 91);\n/* Yellow is the web app\'s "Could not reach" prospecting action. Its\n foreground is light (0.864) by design: the web app uses it for icons and\n borders on the tinted background, never as text on white. */\n--color-yellow-background:oklch(0.972 0.054 91);--color-yellow-foreground:oklch(0.864 0.181 91);\n--color-yellow-border:color-mix(in oklch,var(--color-yellow-foreground),transparent 65%);\n--color-cherry-background:oklch(0.947 0.029 15);--color-cherry-foreground:oklch(0.44 0.146 15);\n/* Purple carries the product\'s "AI" affordance (Qualify / Requalify). The\n border is the foreground at 65% transparency, exactly as the style package\n derives every *-border token. */\n--color-purple-background:oklch(0.947 0.029 288);--color-purple-foreground:oklch(0.464 0.181 288);\n--color-purple-border:color-mix(in oklch,var(--color-purple-foreground),transparent 65%);\n/* Teal carries the qualifier\'s intent tags, as the product\'s taste-profile\n tags do. Border derived at 65% transparency, like every *-border token. */\n--color-teal-background:oklch(0.977 0.019 180);--color-teal-foreground:oklch(0.574 0.182 180);\n--color-teal-border:color-mix(in oklch,var(--color-teal-foreground),transparent 65%);\n--color-red-like:var(--color-cherry-foreground);\n--lb-font:"Nikkei Maru",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;\n/* Concentric: outer = inner + padding (0.625 + 0.875 = 1.5rem). The card\'s\n padding is what closes this equation, so the two move together \\u2014 see\n .lb-card, which pads 0.875rem for exactly this reason. */\n--lb-radius:1.5rem;--lb-radius-sm:0.625rem;--lb-gap:0.75rem;\n--lb-surface:var(--color-gray-1);--lb-border:var(--color-gray-3);\n--lb-fg:var(--color-black);--lb-muted:var(--color-gray-8);--lb-field:var(--color-white);\n/* Chips and shadows need their own aliases: a chip painted with a raw ramp\n value cannot theme, and a shadow tinted with --color-gray-9 is invisible in\n dark because gray-9 IS the dark surface. */\n--lb-chip-bg:var(--color-gray-2);\n/* The page ground behind the cards. A raw ramp value here cannot theme: in\n dark mode --lb-fg turns white and a #f0f0f0 ground kept the page title\n white on light grey (seen in ChatGPT, which marks the frame dark). */\n--lb-page-bg:var(--color-gray-2);\n--lb-control-border:var(--color-gray-6);\n--lb-shadow:0 0.5rem 1.5rem oklch(0 0 0/.06),0 0.125rem 0.5rem oklch(0 0 0/.04);\ncolor-scheme:light;\n/* macOS renders text heavier than intended. This belongs once on the root,\n never per component \\u2014 an artifact that injects this sheet gets it for free\n instead of each page re-declaring it on its own body. */\n-webkit-font-smoothing:antialiased;\n-moz-osx-font-smoothing:grayscale;\n}\n:root[data-theme=dark],:root[data-lb-theme=dark]{\n--lb-surface:var(--color-gray-9);--lb-border:var(--color-gray-8);\n--lb-fg:var(--color-white);--lb-muted:var(--color-gray-3);\n/* --lb-field must NOT equal --lb-surface: a control needs its own ground or it\n reads as text on the card (was 1.00:1). */\n--lb-field:#2c2c2c;\n--lb-chip-bg:#3b3b3b;\n--lb-page-bg:#161616;\n--lb-control-border:var(--color-gray-6);\n--lb-shadow:0 0.5rem 1.5rem oklch(0 0 0/.5),0 0.125rem 0.5rem oklch(0 0 0/.35);\ncolor-scheme:dark;\n--color-blue-background:oklch(0.30 0.055 251);--color-blue-foreground:oklch(0.80 0.11 251);\n--color-green-background:oklch(0.30 0.055 141);--color-green-foreground:oklch(0.80 0.13 141);\n--color-red-background:oklch(0.30 0.060 26);--color-red-foreground:oklch(0.80 0.11 26);\n--color-gold-background:oklch(0.30 0.055 91);--color-gold-foreground:oklch(0.82 0.13 91);\n--color-yellow-background:oklch(0.30 0.055 91);--color-yellow-foreground:oklch(0.86 0.14 91);\n--color-cherry-background:oklch(0.30 0.055 15);--color-cherry-foreground:oklch(0.82 0.10 15);\n--color-purple-background:oklch(0.30 0.055 288);--color-purple-foreground:oklch(0.82 0.11 288);\n--color-teal-background:oklch(0.30 0.055 180);--color-teal-foreground:oklch(0.82 0.11 180);\n}\n@media(prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-lb-theme=light]){\n--lb-surface:var(--color-gray-9);--lb-border:var(--color-gray-8);\n--lb-fg:var(--color-white);--lb-muted:var(--color-gray-3);\n/* --lb-field must NOT equal --lb-surface: a control needs its own ground or it\n reads as text on the card (was 1.00:1). */\n--lb-field:#2c2c2c;\n--lb-chip-bg:#3b3b3b;\n--lb-page-bg:#161616;\n--lb-control-border:var(--color-gray-6);\n--lb-shadow:0 0.5rem 1.5rem oklch(0 0 0/.5),0 0.125rem 0.5rem oklch(0 0 0/.35);\ncolor-scheme:dark;\n--color-blue-background:oklch(0.30 0.055 251);--color-blue-foreground:oklch(0.80 0.11 251);\n--color-green-background:oklch(0.30 0.055 141);--color-green-foreground:oklch(0.80 0.13 141);\n--color-red-background:oklch(0.30 0.060 26);--color-red-foreground:oklch(0.80 0.11 26);\n--color-gold-background:oklch(0.30 0.055 91);--color-gold-foreground:oklch(0.82 0.13 91);\n--color-yellow-background:oklch(0.30 0.055 91);--color-yellow-foreground:oklch(0.86 0.14 91);\n--color-cherry-background:oklch(0.30 0.055 15);--color-cherry-foreground:oklch(0.82 0.10 15);\n--color-purple-background:oklch(0.30 0.055 288);--color-purple-foreground:oklch(0.82 0.11 288);\n--color-teal-background:oklch(0.30 0.055 180);--color-teal-foreground:oklch(0.82 0.11 180);\n}}\n/* 0.875rem padding is not arbitrary: it closes the concentric equation with\n --lb-radius (1.5rem) and --lb-radius-sm (0.625rem). Changing it without\n moving --lb-radius leaves a control\'s arc running wider than the card\'s in\n the corner. */\n.lb-card{display:grid;gap:var(--lb-gap);padding:0.875rem;\nbackground-color:var(--lb-surface);border:1px solid var(--lb-border);\nborder-radius:var(--lb-radius);corner-shape:squircle;color:var(--lb-fg);\nfont-family:var(--lb-font);\nbox-shadow:var(--lb-shadow)}\n/* \\u2500\\u2500 Card layout \\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\n A lead card is a stack of SECTIONS, each a titled block (Fit, Intent tags,\n Data, Status, Outreach). One wrapper owns the rhythm \\u2014 16px between\n sections, 8px between the items inside one \\u2014 so a section can be added,\n removed or reordered without touching spacing, and no margin can collapse.\n Every artifact that builds cards gets the same geometry from here rather\n than hand-rolling it. */\n.lb-sections{display:flex;flex-direction:column;gap:1rem}\n.lb-section{display:grid;gap:0.5rem}\n/* A section title: black, uppercase, tracked. It names the block below it, so\n it must sit at SECTION level \\u2014 nested inside a row it stops being a peer of\n the other titles and the card loses its scan order. */\n.lb-sec-title{font-size:0.75rem;font-weight:700;letter-spacing:.08em;\ntext-transform:uppercase;color:var(--lb-fg);line-height:1.4;\ntext-wrap:balance}\n/* Header row: leading control (a bulk checkbox), the title, then trailing\n controls (taste) pushed to the far edge. */\n.lb-card-top{display:flex;align-items:center;gap:0.625rem;flex-wrap:wrap}\n.lb-card-top>.lb-group{flex:0 0 auto;margin-inline-start:auto}\n.lb-card-top>input[type=checkbox]{flex:0 0 auto;width:1rem;height:1rem;margin:0}\n/* The company name. Bold and underlined so it reads as the card\'s subject and\n as a link, without competing with the uppercase section titles. */\n/* text-wrap:balance keeps a two-line company name from breaking one-word-over;\n the underline takes its position and thickness from the font\'s own metrics\n rather than wherever the browser puts them, and skip-ink clears descenders. */\n.lb-lead-title{flex:1 1 9rem;min-width:0;font-size:0.9375rem;font-weight:700;\nline-height:1.3;color:var(--lb-fg);text-wrap:balance;text-decoration:underline;\ntext-underline-position:from-font;text-decoration-thickness:from-font;\ntext-underline-offset:2px;text-decoration-skip-ink:auto;overflow-wrap:break-word}\n.lb-lead-title a{color:inherit;text-decoration:inherit}\n/* Controls in a section stack, each spanning it, so every control on the card\n shares one leading edge and one width. Three different widths across a row\n read as three unrelated things. */\n.lb-section>.lb-select,.lb-section>.lb-input,\n.lb-stack>.lb-select,.lb-stack>.lb-input,.lb-stack>.lb-btn{width:100%;min-width:0}\n/* Footer: a leading action, a spacer, a trailing escape hatch. */\n.lb-card-foot{display:flex;align-items:center;gap:0.625rem;\npadding-block-start:0.875rem;border-block-start:1px solid var(--lb-border)}\n.lb-card-foot .lb-spacer{flex:1 1 auto}\n/* \\u2500\\u2500 Toolbar \\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\n The bar above a deck of cards: a tally, the controls that narrow what is\n shown, and the controls that act on a selection. Those are three different\n jobs, so they are three groups \\u2014 0.5rem within one, 1.5rem between \\u2014 rather\n than one flat row where "apply to selected" reads as another filter.\n Concentric: it pads 0.75rem around controls that round at 0.625rem, so it\n rounds at 1.375rem. */\n.lb-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:0.75rem 1.5rem;\npadding:0.75rem 1rem;background-color:var(--lb-surface);\nborder:1px solid var(--lb-border);border-radius:1.375rem;corner-shape:squircle;\nfont-family:var(--lb-font);color:var(--lb-fg)}\n.lb-toolbar .lb-group{gap:0.5rem}\n/* A labelled control stacks: caption above, control below, as a card section\n does. One label pattern across the whole artifact. */\n.lb-field{display:inline-flex;flex-direction:column;align-items:flex-start;\ngap:0.25rem;font-size:0.8125rem;line-height:1.4;color:var(--lb-muted);\nwhite-space:nowrap}\n/* A checkbox belongs BESIDE its words \\u2014 under a caption it reads as orphaned. */\n.lb-field-inline{flex-direction:row;align-items:center;gap:0.5rem}\n/* A control\'s caption is not body copy: it names the control, so it takes the\n same treatment as a card\'s section title. */\n.lb-field-label{font-size:0.75rem;font-weight:700;letter-spacing:.08em;\ntext-transform:uppercase;color:var(--lb-fg)}\n/* A labelled field sizes to its own content, so width:100% on the control\n inside only fills whatever the field already became. Two fields side by side\n still come out unequal \\u2014 they have no shared reference to be equal against.\n Give the FIELD the basis: flex:1 1 9rem makes every labelled field claim the\n same share of the row, so a select and a text input beside it match. */\n.lb-field{flex:1 1 9rem;min-width:9rem;max-width:16rem}\n.lb-field>.lb-select,.lb-field>.lb-input{width:100%;min-width:0}\n/* An inline field holds a checkbox, not a sized control: natural width, no floor. */\n.lb-field-inline{flex:0 0 auto;min-width:0;max-width:none}\n.lb-field-inline>*{min-width:0;width:auto;flex:0 0 auto}\n/* Readouts sit on the control baseline, not the caption\'s. */\n.lb-toolbar .lb-tally,.lb-toolbar .lb-status{align-self:center}\n.lb-tally{font-size:0.8125rem;line-height:1.4;color:var(--lb-muted);\nfont-variant-numeric:tabular-nums;white-space:nowrap}\n/* Connection state, never carried by colour alone: live is a filled dot, dead\n a hollow ring, so the two differ in shape as well as hue \\u2014 a red and a green\n circle are the same circle to a colour-blind reader, and identical under\n forced colours. */\n.lb-status{display:inline-flex;align-items:center;gap:0.5rem;\nfont-size:0.75rem;line-height:1.4;color:var(--lb-muted);white-space:nowrap}\n.lb-status-dot{width:0.5rem;height:0.5rem;border-radius:50%;flex:none;\nbackground-color:var(--color-gray-5);border:2px solid transparent}\n.lb-status[data-live=yes] .lb-status-dot{background-color:var(--color-green-foreground)}\n.lb-status[data-live=no] .lb-status-dot{background-color:transparent;\nborder-color:var(--color-red-foreground)}\n/* \\u2500\\u2500 Pager \\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\n Below a deck, never above it: the rep reads the rows, then decides whether\n to go on. The range ("21\\u201340 of 60") is the honest label \\u2014 "page 2" alone\n does not say how much is left, and a rep who cannot see the end cannot tell\n a short lens from a long one. Tabular, because the numbers change. */\n.lb-pager{display:flex;align-items:center;gap:0.75rem;flex-wrap:wrap}\n.lb-pager .lb-spacer{flex:1 1 auto}\n.lb-pager-range{font-size:0.8125rem;line-height:1.4;color:var(--lb-muted);\nfont-variant-numeric:tabular-nums;white-space:nowrap}\n/* \\u2500\\u2500 Metrics + chart \\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\n A manager dashboard reports before it lists: a row of figures, then the\n trend behind them, then the per-rep table. Tiles are for the few numbers\n that ARE the point \\u2014 a tile per field turns a dashboard into a wall. */\n.lb-tiles{display:grid;gap:0.75rem;\ngrid-template-columns:repeat(auto-fit,minmax(min(9rem,100%),1fr))}\n.lb-tile{display:grid;gap:0.25rem;padding:0.75rem 0.875rem;\nbackground-color:var(--lb-field);border:1px solid var(--lb-border);\nborder-radius:1.375rem;corner-shape:squircle}\n.lb-tile-label{font-size:0.75rem;font-weight:700;letter-spacing:.08em;\ntext-transform:uppercase;color:var(--lb-muted);line-height:1.4}\n.lb-tile-value{font-size:1.5rem;font-weight:700;line-height:1.15;\ncolor:var(--lb-fg);font-variant-numeric:tabular-nums}\n/* The chart draws from the theme tokens, so it reads in light and dark alike;\n a hardcoded stroke disappears on one of the two. Inline SVG rather than a\n CDN library: a sparse weekly series does not earn 200KB, and an artifact\n that silently fails to load its chart shows nothing at all. */\n.lb-chart{display:block;width:100%;height:auto}\n.lb-chart .lb-chart-grid{stroke:var(--lb-border);stroke-width:1}\n.lb-chart .lb-chart-line{fill:none;stroke:var(--color-blue-foreground);stroke-width:2;\nstroke-linejoin:round;stroke-linecap:round}\n.lb-chart .lb-chart-area{fill:var(--color-blue-background);opacity:.55}\n.lb-chart .lb-chart-dot{fill:var(--color-blue-foreground)}\n/* Axis labels are UI text and take the same 12px floor as everything else \\u2014\n a chart is not a licence to shrink type below what is readable. */\n.lb-chart text{fill:var(--lb-muted);font-family:var(--lb-font);font-size:0.75rem}\n/* An empty series is a real answer, not a failure: say so in place of the\n chart rather than drawing empty axes that look broken. */\n.lb-empty{display:grid;place-items:center;gap:0.25rem;padding:1.5rem 1rem;\nbackground-color:var(--lb-field);border:1px dashed var(--lb-border);\nborder-radius:1.375rem;corner-shape:squircle;text-align:center}\n.lb-empty-title{font-size:0.8125rem;font-weight:600;color:var(--lb-fg);line-height:1.4}\n.lb-empty-hint{font-size:0.78125rem;color:var(--lb-muted);line-height:1.45;max-width:44ch}\n/* A page flip replaces the whole deck, so the rows must read as pending or the\n rep cannot tell a slow page from a finished one. Dim and lock the deck\n rather than blanking it: keeping the old rows on screen preserves the\n scroll position and the sense of place. */\n.lb-deck[data-lb-state=loading]{opacity:.55;pointer-events:none}\n/* The head must be able to wrap. Both children default to flex:0 1 auto, so\n without this they shrink together and a long company name is crushed to three\n lines while the chips keep full width. flex-basis:11rem is a content breakpoint:\n below ~176px for the title, the chips drop to their own line instead. */\n.lb-card-head{display:flex;flex-wrap:wrap;justify-content:space-between;\nalign-items:baseline;gap:var(--lb-gap)}\n/* An email or URL has no break opportunity \\u2014 browsers do not break at "@" or\n ".", so without this a company address escapes the card and the chat host\n clips it with no way to recover the tail. */\n.lb-title{font-size:0.875rem;font-weight:600;line-height:1.3;color:var(--lb-fg);\noverflow-wrap:break-word;min-width:0;flex:1 1 11rem}\n/* pretty stops a lone word landing on the last line of a why-it-fits sentence\n or a fact \\u2014 the orphan that makes a card look unfinished. */\n.lb-sub{font-size:0.8125rem;line-height:1.45;color:var(--lb-muted);\ntext-wrap:pretty;overflow-wrap:break-word;max-width:68ch}\n/* An empty fact line is a 30px void that reads as a rendering bug. */\n.lb-sub:empty{display:none}\n/* The tightest group on the card: consecutive data lines (the contact, then\n the company switchboard) are one block, so they sit at HALF the section\'s\n own 8px. That 2x ratio is what makes them read as a unit rather than as\n separate facts \\u2014 the same rule .lb-section applies one level up against\n .lb-sections\' 16px. The scale halves at each level: 16 \\u2192 8 \\u2192 4. */\n.lb-facts{display:grid;gap:0.25rem}\n/* The contract\'s canonical skeleton already emits data-why; the sheet just did\n not honour it, so consumers hand-patched an inline font-style. */\n.lb-sub[data-why]{font-style:italic;color:var(--lb-fg)}\n/* Icon column: the glyph gets its own cell so a wrapping line hangs on one\n shared text edge instead of running back under the emoji. */\n.lb-fact{display:grid;grid-template-columns:1.15rem 1fr;gap:0.35rem;align-items:baseline}\n.lb-row{display:flex;align-items:center;gap:var(--lb-gap);flex-wrap:wrap}\n/* row-gap matters once the row wraps: without it the wrapped line sits flush\n against the one above. */\n.lb-row{row-gap:0.5rem}\n/* 8px, matching .lb-section \\u2014 a stack inside a section must not space its\n controls wider than the section spaces its own children. */\n.lb-stack{display:grid;gap:0.5rem}\n/* A select is border-box by UA default; a text input is content-box. Given the\n same width, padding and border, the input therefore renders ~2rem wider \\u2014 the\n padding lands outside its box and inside the select\'s. Neither is wrong on its\n own; they just cannot be sized together until they agree. Every control the\n kit styles is border-box, so a declared width is the width that shows. */\n.lb-btn,.lb-select,.lb-input{box-sizing:border-box}\n.lb-select,.lb-input{font:inherit;font-family:var(--lb-font);font-size:0.8125rem;color:var(--lb-fg);\nbackground-color:var(--lb-field);border:1px solid var(--lb-control-border);\nborder-radius:var(--lb-radius-sm);corner-shape:squircle;padding:0.4rem 0.55rem;min-height:2.125rem}\n/* Geometry, states and motion ported from the product\'s Button component\n (packages/ui/components/Button) so an artifact button and an app button are\n the same object. MUI spacing is 8px/unit, so its size=medium (py .875,\n px .875, borderRadius .875) is 7px/7px/7px and large (py 1.75, px 2,\n borderRadius 1.25) is 14px/16px/10px. A control sitting in a row beside a\n select reads as medium, so that is the default here; .lb-btn-lg opts into\n large. The app\'s default variant is secondary \\u2014 white ground, gray-5\n border, black text \\u2014 which is what an unadorned .lb-btn already was. */\n.lb-btn{font:inherit;font-family:var(--lb-font);font-size:0.8125rem;font-weight:600;\ncolor:var(--color-black);background-color:var(--color-white);\nborder:1px solid var(--color-gray-5);\nborder-radius:0.4375rem;corner-shape:squircle;padding:0.4375rem 0.4375rem;min-height:2.125rem;\ncursor:pointer;user-select:none;-webkit-user-select:none;text-wrap:nowrap;\nfont-variant-numeric:tabular-nums;\ntransition:background-color .16s ease,border .16s ease,color .16s ease,\nopacity .16s ease,transform .16s cubic-bezier(0.23,1,0.32,1)}\n/* The app hovers the GROUND to gray-2, not the border. */\n@media (hover:hover){\n.lb-btn:hover:not([disabled]):not([data-lb-state=loading]){\nbackground-color:var(--color-gray-2)}}\n/* Front-loaded press, so the tap leads the colour crossfade. */\n.lb-btn:active:not([disabled]):not([data-lb-state=loading]){transform:scale(0.97)}\n.lb-btn[disabled]{opacity:.4;cursor:default}\n/* A text button with a label + icon: the app lays the content out as a flex row\n with a 6px gap (its content style uses gap 0.75). */\n.lb-btn{display:inline-flex;align-items:center;justify-content:center;gap:0.375rem}\n.lb-btn>svg{display:block;flex-shrink:0;width:1.05rem;height:1.05rem}\n/* Opt-in large, for a button that stands alone rather than in a control row. */\n.lb-btn-lg{border-radius:0.625rem;padding:0.875rem 1rem}\n/* A SUBMIT is not a toggle. Like/Dislike are independent switches; "Set status"\n commits the value sitting in the select beside it. Rendered identically, the\n row reads as five peers and the rep cannot see which control ends the task.\n The accent border + tinted ground marks it as the commit without making it a\n loud filled button \\u2014 the state styles above still win when they apply. */\n/* INVERTED, not recoloured. A normal button is --lb-fg on --lb-field; the\n submit swaps them. That introduces no new hue, and it themes for free: light\n gives near-black on white, dark gives white on near-black \\u2014 the polarity flip\n reads as "this one commits" in both, without competing with the semantic\n state colours (success green / error red) that still override it. */\n/* This is the app\'s primary variant verbatim: black ground, white text, and a\n hover that mixes 32% gray-8 into the black rather than lightening opacity. */\n.lb-btn-submit{background-color:var(--lb-fg);color:var(--lb-field);\nborder-color:var(--lb-fg)}\n@media (hover:hover){\n.lb-btn-submit:hover:not([disabled]):not([data-lb-state=loading]){\nbackground-color:color-mix(in oklch,var(--lb-fg),var(--color-gray-8) 32%);\nborder-color:color-mix(in oklch,var(--lb-fg),var(--color-gray-8) 32%)}}\n/* The app\'s ai variant \\u2014 what QualifyButton/Requalify wears. Purple ground,\n purple-foreground text, border at 65% transparency of the foreground; hover\n mixes 7% black into the ground. Tokens mirror the product\'s style package. */\n.lb-btn-ai{background-color:var(--color-purple-background);\nborder-color:var(--color-purple-border);color:var(--color-purple-foreground)}\n@media (hover:hover){\n.lb-btn-ai:hover:not([disabled]):not([data-lb-state=loading]){\nbackground-color:color-mix(in oklch,var(--color-purple-background),black 7%)}}\n/* Toggles that act on the same axis belong in one visual unit, so the row reads\n as "taste | status | inspect" rather than five equal buttons. The gap inside\n a group is half the gap between groups \\u2014 the 2x rule, applied horizontally. */\n.lb-group{display:inline-flex;align-items:center;gap:0.375rem;flex-wrap:wrap}\n/* Square icon button. Only for actions whose glyph is unambiguous on its own \\u2014\n thumbs up/down qualify, "Set status" does not. It MUST carry an aria-label\n and a title: with no text the icon is the entire affordance, so an unlabelled\n one is unreadable to a screen reader and to anyone who does not know the\n glyph. Same 2.125rem box as a text button, so it keeps the row\'s baseline. */\n.lb-btn-icon{padding:0;width:2.125rem;justify-content:center;display:inline-flex;\nalign-items:center}\n.lb-btn-icon svg{width:1.05rem;height:1.05rem;flex-shrink:0}\n/* Pressed state. The taste chip carries the durable fact; this is the control\n reflecting it, and it must not rely on colour alone \\u2014 aria-pressed is the\n accessible half and the fill is the visible half. */\n/* A heart that stays hollow does not read as "liked" \\u2014 fill it from the same\n currentColor the stroke uses, so one rule covers both themes. */\n.lb-btn-icon[aria-pressed=true] svg{fill:currentColor}\n.lb-btn-icon[aria-pressed=true]{border-color:var(--color-red-like);\ncolor:var(--color-red-like);\nbackground-color:color-mix(in srgb,var(--color-red-like) 10%,var(--lb-field))}\n.lb-btn-icon[data-taste=disliked][aria-pressed=true]{border-color:var(--lb-muted);\ncolor:var(--lb-muted);\nbackground-color:color-mix(in srgb,var(--lb-muted) 10%,var(--lb-field))}\n/* A glyph-only control has no text to widen its hit area, so extend the target\n past the 34px box without inflating the row. */\n.lb-btn-icon{position:relative}\n.lb-btn-icon::before{content:"";position:absolute;inset:-5px}\n.lb-btn:focus-visible,.lb-select:focus-visible,.lb-input:focus-visible,\n.lb-link:focus-visible{\noutline:2px solid var(--color-blue-foreground);outline-offset:1px;\nborder-radius:var(--lb-radius-sm)}\n/* Forced colours replaces every background and custom outline with a system\n colour, collapsing the state styling above into one flat control. */\n@media(forced-colors:active){\n.lb-btn,.lb-select,.lb-input,.lb-chip{border:1px solid CanvasText}\n.lb-btn:focus-visible,.lb-select:focus-visible,.lb-input:focus-visible,\n.lb-link:focus-visible,.lb-link-out:focus-visible{outline:2px solid Highlight}\n.lb-link-out{opacity:1}}\n/* Each state carries a glyph as well as a hue: success and error were two\n pills with identical labels, indistinguishable to a red-green colour-blind\n reader and identical under forced colours. */\n.lb-btn[data-lb-state=loading]{opacity:.55;cursor:progress}\n.lb-btn[data-lb-state=loading]::after{content:"\\u2026";margin-inline-start:.35rem}\n/* An icon button has no room for a trailing glyph \\u2014 it would push the icon\n off-centre. Its states read through border and fill, which the forced-colors\n block below keeps distinguishable. */\n.lb-btn-icon::after{content:none!important}\n.lb-btn[data-lb-state=success]::after{content:"\\u2713";margin-inline-start:.35rem}\n.lb-btn[data-lb-state=error]::after{content:"\\u2715";margin-inline-start:.35rem}\n.lb-btn[data-lb-state=unavailable]::after{content:"\\u26A0";margin-inline-start:.35rem}\n/* With save-on-change there is no button to reflect the write, so the select\n itself must. Only error was styled before; loading and success were invisible\n on a select, leaving the rep unsure whether the pick had landed. */\n.lb-select[data-lb-state=loading]{opacity:.55;cursor:progress}\n.lb-select[data-lb-state=success]{border-color:var(--color-green-foreground)}\n.lb-msg[data-tone=error]::before{content:"\\u2715 "}\n.lb-msg[data-tone=ok]::before{content:"\\u2713 "}\n.lb-btn[data-lb-state=success]{background-color:var(--color-green-background);\nborder-color:var(--color-green-foreground);color:var(--color-green-foreground)}\n.lb-btn[data-lb-state=error],.lb-select[data-lb-state=error]{\nbackground-color:var(--color-red-background);border-color:var(--color-red-foreground);\ncolor:var(--color-red-foreground)}\n.lb-btn[data-lb-state=unavailable],.lb-btn[disabled]{opacity:.5;cursor:not-allowed}\n.lb-msg{font-size:0.8125rem;line-height:1.45;color:var(--lb-muted)}\n/* Screen-reader-only text: control labels, unit suffixes, "opens in a new tab". */\n.lb-vh{position:absolute;width:1px;height:1px;margin:-1px;padding:0;\noverflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}\n.lb-msg[data-tone=error]{color:var(--color-red-foreground)}\n.lb-msg[data-tone=ok]{color:var(--color-green-foreground)}\n.lb-chip{display:inline-flex;align-items:center;gap:.25rem;white-space:nowrap;\nfont-size:0.75rem;font-weight:600;line-height:1rem;padding:0.125rem 0.5rem;\nborder-radius:var(--lb-radius-sm);corner-shape:squircle;\nbackground-color:var(--lb-chip-bg);color:var(--lb-muted)}\n.lb-chip[data-status=WANTED]{background-color:var(--color-blue-background);color:var(--color-blue-foreground)}\n.lb-chip[data-status=WON]{background-color:var(--color-green-background);color:var(--color-green-foreground)}\n.lb-chip[data-status=LOST]{background-color:var(--color-red-background);color:var(--color-red-foreground)}\n.lb-chip[data-status=UNWANTED]{background-color:var(--lb-chip-bg);color:var(--lb-muted)}\n.lb-chip[data-taste=liked]{background-color:var(--color-cherry-background);color:var(--color-red-like)}\n.lb-chip[data-taste=disliked]{background-color:var(--lb-chip-bg);color:var(--lb-muted)}\n.lb-chips{display:flex;align-items:center;gap:0.5rem;flex-wrap:wrap}\n/* \\u2500\\u2500 Tag rows \\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\\u2500\n Two kinds, deliberately different so they never read as the same axis.\n FIRMOGRAPHIC (.lb-tags-plain): what the company IS \\u2014 location, size, sector.\n Quiet grey, because it is context the rep skims.\n INTENT (.lb-tags-intent): what the qualifier FOUND \\u2014 a buying signal. Teal,\n matching the product\'s own taste-profile tags, because it is the reason the\n lead is on screen. Both wrap and both sit on the section\'s 8px. */\n.lb-tags-plain,.lb-tags-intent{display:flex;flex-wrap:wrap;gap:0.5rem}\n/* Both tags round at 0.375rem: they are the innermost surface, and a tag whose\n radius drifts from its neighbours reads as a different kind of object. Their\n own padding is small enough that concentric math against the card does not\n apply \\u2014 past a point the layers are separate surfaces, each chosen on its\n own. */\n.lb-tags-plain>*{display:inline-flex;align-items:center;\nbackground-color:var(--lb-surface);border:1px solid var(--lb-border);\ncolor:var(--lb-muted);border-radius:0.375rem;padding:0.125rem 0.375rem;\nfont-size:0.75rem;font-weight:500;line-height:1.5;white-space:nowrap}\n.lb-tags-intent>*{display:inline-flex;align-items:center;\nbackground-color:var(--color-teal-background);border:1px solid var(--color-teal-border);\ncolor:var(--color-teal-foreground);border-radius:0.375rem;padding:0.1875rem 0.4375rem;\nfont-size:0.75rem;line-height:1.4}\n/* The honest empty state: a blank tag row reads as a rendering bug, so say\n what is missing and what fixes it. */\n.lb-tags-empty{font-size:0.78125rem;line-height:1.45;color:var(--lb-muted);\nfont-style:italic}\n/* The chips row is empty until a taste or a status lands. Left in flow it is a\n zero-height element that still consumes the gap above the first section, so\n hide it while it holds nothing \\u2014 set the hidden attribute from the code that\n paints the chips, since it is that code which knows. */\n.lb-chips[hidden]{display:none}\n.lb-chip[hidden]{display:none}\n.lb-table{width:100%;border-collapse:collapse;font-family:var(--lb-font);color:var(--lb-fg)}\n.lb-table th,.lb-table td{text-align:start;padding:0.5rem 0.4rem;\nborder-bottom:1px solid var(--lb-border);vertical-align:middle;font-size:0.8125rem}\n.lb-table th{font-size:0.75rem;font-weight:600;color:var(--lb-muted);\ntext-transform:uppercase;letter-spacing:.04em}\n/* Counts line up only when the digits do; a leaderboard whose numbers jitter\n column-to-column cannot be scanned down. */\n.lb-table td[data-num],.lb-table th[data-num]{text-align:end;\nfont-variant-numeric:tabular-nums}\n/* A sortable header is a control: it must look clickable and say which way it\n is sorting, in text as well as by arrow \\u2014 aria-sort is the accessible half. */\n.lb-table th[aria-sort]{cursor:pointer;user-select:none;color:var(--lb-fg)}\n.lb-table th[aria-sort]:hover{text-decoration:underline}\n.lb-table th[aria-sort=ascending]::after{content:" \\\\2191"}\n.lb-table th[aria-sort=descending]::after{content:" \\\\2193"}\n.lb-table th[aria-sort=none]::after{content:" \\\\2195";opacity:.35}\n/* The row a manager is acting on. */\n.lb-table tbody tr[aria-selected=true]{background-color:var(--lb-chip-bg)}\n.lb-link{color:var(--color-blue-foreground);text-decoration:none}\n.lb-link:hover{text-decoration:underline}\n/* Quiet text link out of the artifact. Button-height so it shares the row\'s\n baseline; understated so it never competes with the actions beside it. The\n arrow is a bare diagonal stroke \\u2014 an escape-hatch marker, not an icon that\n asks to be read. */\n.lb-link-out{display:inline-flex;align-items:center;gap:.3rem;\nfont-size:0.75rem;line-height:1rem;min-height:2.125rem;\ncolor:var(--lb-fg);text-decoration:none;opacity:.65;transition:opacity .15s}\n.lb-link-out:hover{opacity:1;text-decoration:underline}\n.lb-link-out:focus-visible{outline:2px solid var(--color-blue-foreground);outline-offset:1px;\nborder-radius:var(--lb-radius-sm)}\n.lb-link-out svg{width:.85em;height:.85em;flex-shrink:0}\n/* Pushes whatever follows it to the right edge of an .lb-row, so a trailing\n link sits on the SAME baseline as the row\'s buttons instead of on its own\n line below them. */\n/* A spacer only aligns items on its OWN flex line. .lb-row wraps, so once the\n link falls to a second line the spacer stays behind and the link renders\n left-aligned \\u2014 the opposite of what the contract promises. The auto margin\n re-anchors it to the trailing edge of whichever line it lands on, and is a\n no-op while the row is unwrapped. */\n.lb-spacer{flex:1 1 auto;min-width:0}\n.lb-row>.lb-link-out{margin-inline-start:auto}\n.lb-spinner{display:inline-block;width:.7em;height:.7em;border:2px solid var(--lb-border);\nborder-top-color:var(--color-blue-foreground);border-radius:50%;animation:lb-spin .8s linear infinite}\n@keyframes lb-spin{to{transform:rotate(1turn)}}\n/* animation:none left a static ring \\u2014 under reduced motion "sending" and\n "cannot click" looked identical. An opacity pulse is the sanctioned\n substitute. The 150ms colour fade is fine and stays. */\n@media(prefers-reduced-motion:reduce){.lb-spinner{animation:lb-pulse 1.4s ease-in-out infinite}}\n@keyframes lb-pulse{50%{opacity:.35}}\n`,F="lb-styles";var xe="2026-01-26";function Z(e,t){return Object.assign(new Error(e),{name:"LbError",code:t})}function X(){return typeof window<"u"&&window.parent!=null&&window.parent!==window}function ee(e,t={parent:window.parent,self:window}){let n=new Map,r=1,o=null,a=c=>t.parent.postMessage({jsonrpc:"2.0",...c},"*");function i(c,s){let u=r++;return new Promise((g,h)=>{n.set(u,{resolve:g,reject:h}),a({id:u,method:c,params:s})})}function l(c){if(c.source!==t.parent)return;let s=c.data;if(!s||typeof s!="object"||s.jsonrpc!=="2.0")return;if(typeof s.method=="string"){if(s.id===void 0){s.method==="ui/notifications/host-context-changed"&&J(s.params?.theme);return}s.method==="ping"||s.method==="ui/resource-teardown"?a({id:s.id,result:{}}):a({id:s.id,error:{code:-32601,message:`Method not found: ${s.method}`}});return}let u=n.get(s.id);u&&(n.delete(s.id),s.error?u.reject(Z(String(s.error.message||"The host refused the call"),"host_error")):u.resolve(s.result))}function d(){return o||(o=(async()=>{t.self.addEventListener("message",l);let c=r,s=i("ui/initialize",{appInfo:{name:"Leadbay",version:e},appCapabilities:{},protocolVersion:xe}),u,g=new Promise((f,y)=>{u=setTimeout(()=>{n.delete(c),y(Z("Leadbay is not reachable from this page \\u2014 the host never answered the MCP Apps handshake.","unavailable"))},5e3)}),h;try{h=await Promise.race([s,g])}finally{u&&clearTimeout(u)}J(h?.hostContext?.theme),a({method:"ui/notifications/initialized",params:{}}),_e(a),Se(i)})(),o.catch(()=>{o=null})),o}return async(c,s)=>(await d(),i("tools/call",{name:c,arguments:s}))}function J(e){typeof document>"u"||e!=="light"&&e!=="dark"||document.documentElement.setAttribute("data-theme",e)}function _e(e){if(typeof document>"u"||typeof ResizeObserver>"u")return;let t=!1,n=0,r=0,o=()=>{t||(t=!0,requestAnimationFrame(()=>{t=!1;let i=document.documentElement,l=i.style.height;i.style.height="max-content";let d=Math.ceil(i.getBoundingClientRect().height);i.style.height=l;let c=Math.ceil(window.innerWidth);c===n&&d===r||(n=c,r=d,e({method:"ui/notifications/size-changed",params:{width:c,height:d}}))}))};o();let a=new ResizeObserver(o);a.observe(document.documentElement),a.observe(document.body)}function Se(e){typeof document>"u"||document.addEventListener("click",t=>{let n=t.target,r=n&&typeof n.closest=="function"?n.closest("a[href]"):null;if(!r)return;let o=r.href;/^https?:\\/\\//i.test(o)&&(t.preventDefault(),e("ui/open-link",{url:o}).catch(()=>{window.open(o,"_blank","noopener")}))},!0)}var G="0.6.0",C=class extends Error{constructor(n,r={}){super(n);b(this,"code");b(this,"raw");this.name="LbError",this.code=r.code,this.raw=r.raw}},ne=null,O=3e4,re="Leadbay",oe=re;function ae(){let e=globalThis.cowork;if(e&&typeof e.callMcpTool=="function")return(n,r)=>e.callMcpTool(n,r);let t=globalThis.claude;return t&&typeof t.use=="function"?async(n,r)=>{let o=await Te(t.use);if(!o||typeof o.callTool!="function")throw new C("Leadbay is not reachable from this page \\u2014 the artifact must declare the Leadbay connector in its capabilities, and the viewer must have it enabled.",{code:"unavailable"});let a=await o.callTool(oe,n,r);return a&&"payload"in a&&a.payload!==void 0?a.payload:a}:X()?(N||(N=ee(G)),N):null}var N=null,M=null;function Te(e){return M||(M=Promise.resolve(e("mcp")).catch(()=>null)),M}var ie="leadbay_report_artifact_error",Ee=40,j=new Set,U=0,K=!0;function Ae(e){K=e}function xt(){j.clear(),U=0,K=!0,A=null,P="call"}function T(e){if(!K||U>=Ee)return;let t=`${e.kind}|${e.surface}|${e.tool??""}|${e.code??""}`;if(j.has(t))return;j.add(t),U++;let n=ae();if(n)try{let r=n(ie,{kind:e.kind,surface:e.surface,kit_version:G,...e.tool?{tool:e.tool}:{},...e.code?{code:e.code}:{}});r&&typeof r.catch=="function"&&r.catch(()=>{})}catch{}}var P="call",A=null;function q(e,t,n){let r=P,o=A;P=e,A=n??null;try{return t()}finally{P=r,A=o}}function Ce(e,t,n){let r=le(n);T({kind:r==="timeout"?"call_timeout":r==="unavailable"?"bridge_unavailable":"call_failed",surface:e,tool:t,code:r})}function te(e){if(e&&typeof e=="object"&&"content"in e){let t=e.content;if(Array.isArray(t)&&t[0]&&typeof t[0].text=="string")return t[0].text}return null}function Le(e,t,n="call"){if(!e||typeof e!="object")return e;let r=e;if(r.isError)throw new C(te(e)??"tool call failed",{raw:e});if("structuredContent"in r&&r.structuredContent!=null)return r.structuredContent;let o=te(e);if(o!=null)try{return JSON.parse(o)}catch{return T({kind:"parse_failed",surface:n,tool:t}),o}return e}function V(e){if(e instanceof Error)return e.message;if(e&&typeof e=="object"){let t=e.message;if(typeof t=="string"&&t)return t;try{return JSON.stringify(e)}catch{}}return String(e)}function le(e){if(e instanceof C)return e.code;if(e&&typeof e=="object"){let t=e.code;if(typeof t=="string"&&t)return t}}function D(e){let t=le(e);return{message:V(e),unavailable:t==="unavailable",code:t}}function Ie(e={}){ne=e.call??null,O=e.timeoutMs??3e4,oe=e.server??re,M=null,N=null,B.clear()}function Re(){if(typeof document>"u"||!document.head)return null;let e=document.getElementById(F);if(e)return e;let t=document.createElement("style");return t.id=F,t.textContent=Y,document.head.appendChild(t),t}async function Oe(e,t){if(!O||O<=0)return e;let n,r=new Promise((o,a)=>{n=setTimeout(()=>a(new C(`"${t}" timed out after ${O}ms`,{code:"timeout"})),O)});try{return await Promise.race([e,r])}finally{n&&clearTimeout(n)}}async function p(e,t={}){let n=e===ie,r=P;!n&&A&&A.tool===void 0&&(A.tool=e);let o=ne??ae();if(!o)throw n||T({kind:"bridge_unavailable",surface:r,tool:e,code:"unavailable"}),new C(\'Leadbay bridge unavailable \\u2014 no window.cowork, no window.claude.use("mcp") and no MCP Apps host\',{code:"unavailable"});try{return Le(await Oe(Promise.resolve(o(e,t)),e),n?void 0:e,r)}catch(a){throw n||Ce(r,e,a),a}}var I=class{constructor(){b(this,"subs",new Set)}subscribe(t){return this.subs.add(t),t(this),()=>this.subs.delete(t)}emit(){for(let t of this.subs)t(this)}};function Pe(e){return Array.isArray(e)?e.map(t=>t&&typeof t=="object"?t:{value:t,label:String(t)}):[]}var S=class extends I{constructor(n={}){super();b(this,"kind");b(this,"value");b(this,"options",[]);b(this,"loading",!1);b(this,"error",null);b(this,"ready",!1);b(this,"cfg");b(this,"depUnsubs",[]);b(this,"seq",0);this.cfg=n,this.kind=n.kind,this.value=n.value??"";for(let r of n.dependsOn??[]){let o=r.value;this.depUnsubs.push(r.subscribe(()=>{r.value!==o&&(o=r.value,this.cfg.load&&this.load())}))}n.load&&(n.autoLoad??!0)&&this.load()}async load(){if(!this.cfg.load)return;let n=++this.seq;this.loading=!0,this.error=null,this.emit();try{let r={},o=await q("field",()=>this.cfg.load(),r);if(n!==this.seq)return;this.options=this.cfg.options?this.cfg.options(o):Pe(o),this.ready=!0,this.options.length===0&&T({kind:"options_empty",surface:"field",tool:r.tool});let a=this.value==null?"":String(this.value);this.options.length&&(a===""||!this.options.some(i=>String(i.value)===a))&&(this.value=this.options[0].value)}catch(r){if(n!==this.seq)return;this.options=[],this.error=D(r)}finally{n===this.seq&&(this.loading=!1,this.emit())}}setValue(n){this.value=n;let r=this.validate();this.error=r?{message:r,unavailable:!1}:null,this.emit()}validate(){return this.cfg.validate?this.cfg.validate(this.value):null}get valid(){return this.validate()==null}reset(){this.value=this.cfg.value??"",this.error=null,this.emit()}dispose(){for(let n of this.depUnsubs)n();this.depUnsubs=[]}};function Ne(e){if(!e||typeof e!="object")return null;let t=e;if(t.error!==!0)return null;let n=typeof t.message=="string"&&t.message?t.message:"tool call failed",r=typeof t.hint=="string"&&t.hint?` \\u2014 ${t.hint}`:"";return`${n}${r}`}var v=class extends I{constructor(n){super();b(this,"loading",!1);b(this,"error",null);b(this,"lastResult",null);b(this,"cfg");this.cfg=n}async run(){if(this.loading)return;for(let o of this.cfg.fields??[]){let a=o.validate();if(a!=null){this.error={message:a,unavailable:!1},this.emit(),T({kind:"action_blocked",surface:"action",tool:this.cfg.tool});return}}if(this.cfg.confirm){if(typeof globalThis.confirm!="function"){this.error={message:"This action needs confirmation, which this page cannot show.",unavailable:!1},this.emit(),T({kind:"action_blocked",surface:"action",tool:this.cfg.tool});return}if(!globalThis.confirm(this.cfg.confirm))return}this.loading=!0,this.error=null,this.emit();let n;try{let o=typeof this.cfg.args=="function"?this.cfg.args():this.cfg.args??{};n=await q("action",()=>p(this.cfg.tool,o))}catch(o){this.error=D(o),this.loading=!1,this.emit(),this.cfg.onError?.(this.error);return}let r=Ne(n)??this.cfg.checkResult?.(n)??null;if(r!=null){this.error={message:r,unavailable:!1},this.loading=!1,this.emit();let o=n&&typeof n=="object"?n.code:void 0;T({kind:"result_rejected",surface:"action",tool:this.cfg.tool,...typeof o=="string"&&o?{code:o}:{}}),this.cfg.onError?.(this.error);return}return this.lastResult=n,this.loading=!1,this.emit(),this.cfg.onSuccess?.(n),n}reset(){this.error=null,this.lastResult=null,this.emit()}},x=class extends I{constructor(n){super();b(this,"data",null);b(this,"loading",!1);b(this,"refreshing",!1);b(this,"error",null);b(this,"done",!1);b(this,"cfg");b(this,"timer",null);b(this,"seq",0);this.cfg=n,(n.autoLoad??!0)&&this.load()}async load(){this.clearTimer();let n=++this.seq;this.data==null?this.loading=!0:this.refreshing=!0,this.error=null,this.emit();try{let o=await q("resource",()=>this.cfg.load());if(n!==this.seq)return;this.data=o,this.done=this.cfg.until?this.cfg.until(o):!0,this.cfg.pollEvery&&!this.done&&(this.timer=setTimeout(()=>void this.load(),this.cfg.pollEvery))}catch(o){if(n!==this.seq)return;this.error=D(o)}finally{n===this.seq&&(this.loading=!1,this.refreshing=!1,this.emit())}}refresh(){return this.load()}stop(){this.clearTimer()}clearTimer(){this.timer&&(clearTimeout(this.timer),this.timer=null)}},R=class extends I{constructor(n){super();b(this,"items",[]);b(this,"page",0);b(this,"pageSize");b(this,"total",0);b(this,"loading",!1);b(this,"error",null);b(this,"cfg");b(this,"seq",0);this.cfg=n,this.pageSize=n.pageSize??20,(n.autoLoad??!0)&&this.loadPage(0)}async loadPage(n){let r=++this.seq;this.loading=!0,this.error=null,this.emit();try{let o=await q("list",()=>this.cfg.load({page:n,pageSize:this.pageSize}));if(r!==this.seq)return;this.items=o.items??[],this.total=o.total??this.items.length,this.page=n}catch(o){if(r!==this.seq)return;this.error=D(o)}finally{r===this.seq&&(this.loading=!1,this.emit())}}next(){return this.loadPage(this.page+1)}prev(){return this.loadPage(Math.max(0,this.page-1))}get hasMore(){return(this.page+1)*this.pageSize<this.total}};function Me(e,t){let n=t.error?.unavailable?"unavailable":t.loading?"loading":t.error?"error":"ready";e.setAttribute("data-lb-state",n),t.error?e.setAttribute("data-lb-error",t.error.message):e.removeAttribute("data-lb-error")}function ze(e,t){let n=()=>t.setValue(e.value);e.addEventListener("change",n);let r=t.subscribe(()=>{Me(e,t),e.disabled=t.loading,e.innerHTML="";for(let o of t.options){let a=document.createElement("option");a.value=String(o.value),a.textContent=o.label,e.appendChild(a)}e.value=t.value==null?"":String(t.value)});return()=>{e.removeEventListener("change",n),r()}}function qe(e,t){let n=e.type==="checkbox",r=e.tagName==="SELECT"?"change":"input",o=()=>t.setValue(n?e.checked:e.value);e.addEventListener(r,o);let a=t.subscribe(()=>{if(n)e.checked=!!t.value;else{let i=t.value==null?"":String(t.value);e.value!==i&&(e.value=i)}e.setAttribute("data-lb-state",t.error?"error":"ready"),t.error?e.setAttribute("data-lb-error",t.error.message):e.removeAttribute("data-lb-error")});return()=>{e.removeEventListener(r,o),a()}}function De(e,t){let n=a=>{a.preventDefault(),t.run()};e.addEventListener("click",n);let r,o=t.subscribe(()=>{let a=t.error?.unavailable?"unavailable":t.loading?"loading":t.error?"error":t.lastResult!=null?"success":"ready";e.setAttribute("data-lb-state",a),"disabled"in e&&(e.disabled=t.loading),e.setAttribute("aria-busy",String(t.loading)),t.error?e.setAttribute("data-lb-error",t.error.message):e.removeAttribute("data-lb-error"),r&&clearTimeout(r),a==="success"&&(r=setTimeout(()=>{!t.loading&&!t.error&&e.setAttribute("data-lb-state","ready")},1600))});return()=>{e.removeEventListener("click",n),o(),r&&clearTimeout(r)}}var $=["STILL_CHASING","COULD_NOT_REACH_STILL_TRYING","INTEREST_VALIDATED_OR_MEETING_PLANED","NOT_INTERESTED_LOST"],H=[{value:"",label:"Default ranking"},{value:"SCORE:DESC",label:"Score \\u2193"},{value:"SCORE:ASC",label:"Score \\u2191"},{value:"NAME:ASC",label:"Name A\\u2192Z"},{value:"NAME:DESC",label:"Name Z\\u2192A"},{value:"SIZE:DESC",label:"Size \\u2193"},{value:"SIZE:ASC",label:"Size \\u2191"},{value:"SECTOR:ASC",label:"Sector A\\u2192Z"},{value:"STATUS:ASC",label:"Status A\\u2192Z"},{value:"CONTACT_COUNT:DESC",label:"Contacts \\u2193"},{value:"LAST_PROSPECTING_ACTION_AT:DESC",label:"Last action \\u2193"},{value:"LAST_PROSPECTING_ACTION_AT:ASC",label:"Last action \\u2191"},{value:"EPILOGUE_STATUS_SET_AT:DESC",label:"Outcome set \\u2193"},{value:"LIKED:DESC",label:"Liked first"},{value:"DISLIKED:DESC",label:"Disliked first"}];function Fe(e){let t=String(e??"").trim().toUpperCase(),n=H.some(r=>r.value===t);return new S({kind:"select",value:n?t:"",load:async()=>H.slice()})}var z=[{value:"WANTED",label:"Wanted"},{value:"WON",label:"Won"},{value:"LOST",label:"Lost"},{value:"UNWANTED",label:"Unwanted"}],je={value:"",label:"Pick a status"};function se(e){let t=String(e??"").trim().toUpperCase(),n=z.some(r=>r.value===t);return new S({kind:"select",value:n?t:"",validate:r=>String(r??"")===""?"Pick a status":null,load:async()=>n?z.slice():[je,...z]})}function ce(e){let t=()=>{let n=typeof e.leadIds=="function"?e.leadIds():e.leadIds;return Array.isArray(n)?n:e.leadId?[e.leadId]:[]};return new v({tool:"leadbay_set_lead_status",fields:e.date?[e.status,e.date]:[e.status],confirm:e.confirm,args:()=>({lead_ids:t(),status:e.status.value,...e.date&&e.date.value?{status_date:e.date.value}:{},...e.ask?{_triggered_by:e.ask}:{}}),checkResult:n=>{let r=n?.failed;if(!Array.isArray(r)||r.length===0)return null;let o=t().length,a=r[0]?.message??"write rejected";return r.length===o?`Status not applied: ${a}`:`${r.length} of ${o} leads failed: ${a}`}})}function Ue(e){return new S({kind:"select",load:()=>p("leadbay_list_campaigns",{_triggered_by:e}),options:t=>(t?.campaigns??[]).map(r=>{let o=r?.campaign??r;return o?.id?{value:o.id,label:o.name??o.ai_generated_name??String(o.id)}:null}).filter(r=>r!=null)})}function de(e){return new v({tool:"leadbay_report_outreach",fields:e.note?[e.note]:[],args:()=>({lead_id:e.leadId,...e.status?{epilogue_status:e.status.value}:{},note:e.note?e.note.value:"",verification:{source:"user_confirmed",ref:e.ref??"logged from artifact"},_triggered_by:e.ask})})}function $e(e){return new v({tool:"leadbay_add_note",fields:[e.note],args:()=>({leadId:e.leadId,note:e.note.value})})}function ue(e){return new v({tool:"leadbay_like_lead",args:{lead_id:e}})}function he(e){return new v({tool:"leadbay_dislike_lead",args:{lead_id:e}})}function ge(e){let t=e??{},n=t.ai_agent_lead_score;if(typeof n=="number"&&n>0)return"Requalify";let r=t.qualification_summary?.answered;return typeof r=="number"&&r>0?"Requalify":"Qualify"}function be(e){let t=()=>{let o=typeof e.leadIds=="function"?e.leadIds():e.leadIds;return Array.isArray(o)?o:e.leadId?[e.leadId]:[]},n=0,r=new v({tool:"leadbay_bulk_qualify_leads",confirm:e.confirm,args:()=>{let o=t();return n=o.length,{leadIds:o,wait_for_completion:!1,...e.ask?{_triggered_by:e.ask}:{}}},checkResult:o=>{let a=o??{},i=Array.isArray(a.failed)?a.failed:[],l=n;if(i.length>0){let d=i[0]?.error??"launch rejected";return i.length>=l?`Qualification did not start: ${d}`:`${i.length} of ${l} leads did not start: ${d}`}if(a.quota_exceeded){let d=a.launched_count??0;return d>0?`Quota reached \\u2014 ${d} of ${l} launched, the rest were not started.`:"Quota reached \\u2014 no leads were queued."}return null}});return Object.defineProperty(r,"label",{enumerable:!0,get:()=>(typeof e.scored=="function"?e.scored():e.scored)?"Requalify":"Qualify"}),r}function He(e,t,n=15e3){return new x({pollEvery:n,load:()=>p("leadbay_qualify_status",{...e?.notification_id?{notification_id:e.notification_id}:{},...e?.lead_ids?.length?{lead_ids:e.lead_ids}:{},...typeof e?.lens_id=="number"?{lens_id:e.lens_id}:{},...t?{_triggered_by:t}:{}}),until:r=>{let o=r??{};return Array.isArray(o.still_running)?o.still_running.length===0:o.status!=null&&o.status!=="running"}})}function Be(e,t){return new x({autoLoad:!1,load:()=>p("leadbay_account_history",{leadId:e,_triggered_by:t})})}function Ge(e,t){return new x({autoLoad:!1,load:()=>p("leadbay_research_lead_by_id",{leadId:e,_triggered_by:t})})}var B=new Map;function fe(e={}){let t=e.lang??"",n=B.get(t);return n||(n=(async()=>{try{let r=await p("leadbay_list_sectors",{...e.lang?{lang:e.lang}:{}}),o=Array.isArray(r)?r:Array.isArray(r?.sectors)?r.sectors:[],a={};for(let i of o){let l=i??{};l.id!=null&&typeof l.label=="string"&&l.label&&(a[String(l.id)]=l.label)}return a}catch{return{}}})(),B.set(t,n)),n}function me(e,t={}){let n=e??{},r=i=>typeof i=="string"&&i.trim()&&i.trim()!=="null"?i.trim():void 0,o=n.sector_id!=null?t[String(n.sector_id)]:void 0,a=Array.isArray(n.phone_numbers)?n.phone_numbers:[];return{summary:r(n.short_description)??r(n.description)??o,sector:o,phone:a.map(r).find(Boolean),email:r(n.email)}}function Ke(e){let t=()=>{let a=e.kind;return typeof a=="string"?a:typeof a=="function"?a():String(a?.value??"followups")||"followups"},n=()=>{let a=e.campaignId,i=typeof a=="string"?a:a?.value;return i?String(i):void 0},r=()=>typeof e.order=="string"?e.order:String(e.order?.value??""),o=new R({pageSize:e.pageSize??20,load:async({page:a,pageSize:i})=>{let l=t(),d;if(l==="campaign"){let u=n();if(!u)return{items:[],total:0};d=await p("leadbay_campaign_call_sheet",{campaign_id:u,page:a,count:i,_triggered_by:e.ask})}else l==="discover"?d=await p("leadbay_pull_leads",{page:a,count:i,...e.lensId?{lensId:e.lensId}:{},...r()?{order:r()}:{},_triggered_by:e.ask}):d=await p("leadbay_pull_followups",{page:a,count:i,...e.city?{city:e.city}:{},...r()?{order:r()}:{},_triggered_by:e.ask});let c=d??{},s=c.leads??c.items??[];return{items:s,total:c.pagination?.total??c.total_leads??s.length}}});return Object.assign(o,{leadUrl:a=>{let i=a??{},l=encodeURIComponent(String(i.id??"")),d=t();if(d==="campaign"){let s=n();if(s)return`https://leadbay.app/app/campaign?campaign=${encodeURIComponent(s)}&lead=${l}`}return`https://leadbay.app/app/${d==="discover"||i.in_monitor===!1?"discover":"monitor"}?lead=${l}`}})}function Ve(e){let t=e?.location?.pos;if(!Array.isArray(t)||t.length<2)return null;let[n,r]=t;return typeof n!="number"||typeof r!="number"||!Number.isFinite(n)||!Number.isFinite(r)||n===0&&r===0||n<-90||n>90||r<-180||r>180?null:[n,r]}function W(e,t){let n=Math.PI/180,r=(t[0]-e[0])*n,o=(t[1]-e[1])*n,a=Math.sin(r/2)**2+Math.cos(e[0]*n)*Math.cos(t[0]*n)*Math.sin(o/2)**2;return 6371*2*Math.atan2(Math.sqrt(a),Math.sqrt(1-a))}var pe=11;function We(e){let t=e.filter(a=>Array.isArray(a?.pos)&&a.pos.length===2);if(t.length===0)return null;let n=t.slice(0,pe),r=n.map(a=>a.pos.join(",")),o=new URLSearchParams({api:"1",travelmode:"driving"});return r.length===1?o.set("destination",r[0]):(o.set("origin",r[0]),o.set("destination",r[r.length-1]),r.length>2&&o.set("waypoints",r.slice(1,-1).join("|"))),{url:`https://www.google.com/maps/dir/?${o.toString()}`,used:n.length,truncated:t.length-n.length}}function Qe(e){let t=0;for(let n=1;n<e.length;n++)t+=W(e[n-1].pos,e[n].pos);return t}function Ye(e,t){let n=e.slice();if(n.length<=2)return n;let r=[],o=t??n[0].pos;for(;n.length;){let a=0,i=1/0;for(let d=0;d<n.length;d++){let c=W(o,n[d].pos);c<i&&(i=c,a=d)}let[l]=n.splice(a,1);r.push(l),o=l.pos}return r}function Ze(e){let t=se(e.currentStatus),n=new S({kind:"select",value:$[0],load:async()=>$.map(i=>({value:i,label:ye[i]??i}))}),r=new S({validate:i=>String(i??"").trim()?null:"Add a note before logging"}),o=new x({autoLoad:!1,load:async()=>{let i=await p("leadbay_research_lead_by_id",{leadId:e.leadId,_triggered_by:e.ask}),l=Array.isArray(i?.contacts?.reachable)?i.contacts.reachable:[],d=Array.isArray(i?.contacts?.candidates)?i.contacts.candidates:[],c=new Set,s=[];for(let g of[...l,...d]){let h=g?.id??g?.contact_id;h&&c.has(h)||(h&&c.add(h),s.push(g))}let u=i?.engagement?.recommended_contact?.contact_id;return s.map(g=>Xe(g,u))}}),a=new x({load:async()=>me(e.lead,await fe())});return{leadId:e.leadId,contacts:o,context:a,status:t,saveStatus:ce({leadId:e.leadId,status:t,ask:e.ask}),epilogue:n,note:r,logOutreach:de({leadId:e.leadId,ask:e.ask,status:n,note:r}),like:ue(e.leadId),dislike:he(e.leadId),qualify:be({leadId:e.leadId,ask:e.ask,scored:ge(e.lead)==="Requalify"})}}function Je(e){let t=r=>typeof r=="function"?r():r!==!1,n=new S({value:"ok",validate:()=>t(e.email)||t(e.phone)?null:"Pick email, phone, or both."});return new v({tool:"leadbay_enrich_contacts",fields:[n],confirm:e.confirm===""?void 0:e.confirm??"Reveal this contact? It uses enrichment quota.",args:()=>({leadId:e.leadId,contactId:e.contactId,email:t(e.email),phone:t(e.phone),...e.ask?{_triggered_by:e.ask}:{}}),checkResult:r=>{let o=r??{};return o.error?o.message??"Enrichment failed":null},onSuccess:()=>e.onDone?.()})}var ye={STILL_CHASING:"Still chasing",COULD_NOT_REACH_STILL_TRYING:"Could not reach \\u2014 still trying",INTEREST_VALIDATED_OR_MEETING_PLANED:"Interested / meeting planned",NOT_INTERESTED_LOST:"Not interested \\u2014 lost"};function Xe(e,t){let n=e??{},r=i=>typeof i=="string"&&i.trim()&&i!=="null"?i.trim():void 0,o=[r(n.first_name),r(n.last_name)].filter(Boolean).join(" ")||r(n.name)||"Unnamed contact",a=r(n.id)??r(n.contact_id);return{contactId:a,name:o,title:r(n.job_title)??r(n.title),email:r(n.email),phone:r(n.phone)??r(n.phone_number)??r((n.phone_numbers??[])[0]),linkedin:r(n.linkedin_page),recommended:n.recommended===!0||t!=null&&a===t,enriched:n.enrichment_done===!0}}function et(e){let t=null;return new x({...e.autoLoad!==void 0?{autoLoad:e.autoLoad}:{},pollEvery:e.pollEvery??4e3,until:n=>!!n?.all_done,load:async()=>{if(!t){let n=await p("leadbay_enrich_titles",{...e.leadIds?{leadIds:e.leadIds}:{},titles:e.titles,...e.email!==void 0?{email:e.email}:{},...e.phone!==void 0?{phone:e.phone}:{},...e.confirm!==void 0?{confirm:e.confirm}:{},_triggered_by:e.ask}),r=Array.isArray(n?.lead_ids)?n.lead_ids:[],o=n?.notification_id??null;if(t=o||r.length>0?{notification_id:o,lead_ids:r}:null,!t)return{...n,all_done:!0,no_job:!0}}return p("leadbay_bulk_enrich_status",{...t.notification_id?{notification_id:t.notification_id}:{},...t.lead_ids.length>0?{lead_ids:t.lead_ids}:{},...e.titles?{titles:e.titles}:{},...e.email!==void 0?{email:e.email}:{},...e.phone!==void 0?{phone:e.phone}:{},_triggered_by:e.ask})}})}function tt(e){let t=()=>typeof e.order=="string"?e.order:String(e.order?.value??"");return new R({pageSize:e.pageSize??20,load:async({page:n,pageSize:r})=>{let o=await p("leadbay_pull_leads",{page:n,count:r,...e.lensId?{lensId:e.lensId}:{},...t()?{order:t()}:{},_triggered_by:e.ask}),a=o.leads??[];return{items:a,total:o.pagination?.total??a.length}}})}function nt(e){let t=e.source??"followups",n=()=>typeof e.order=="string"?e.order:String(e.order?.value??"");return new R({pageSize:e.pageSize??20,load:async({page:r,pageSize:o})=>{let i=t==="campaign"?await p("leadbay_campaign_call_sheet",{campaign_id:e.campaignId,page:r,count:o,_triggered_by:e.ask}):await p("leadbay_pull_followups",{page:r,count:o,...e.city?{city:e.city}:{},...n()?{order:n()}:{},_triggered_by:e.ask}),l=i.leads??i.items??[];return{items:l,total:i.total_leads??i.pagination?.total??l.length}}})}async function rt(e){let t=await p("leadbay_pull_followups",{count:e.sample??200,filtered:!1,...e.personal===void 0?{}:{personal:e.personal},_triggered_by:e.ask}),n=new Map;for(let o of t.leads??[]){let a=o?.sector_id;if(a==null||a==="")continue;let i=String(a);n.set(i,(n.get(i)??0)+1)}let r=e.sectors??{};return[...n.entries()].map(([o,a])=>{let i=r[o];return{id:o,label:i??`Sector ${o}`,sampled:a,resolved:i!=null}}).sort((o,a)=>a.sampled-o.sampled||o.id.localeCompare(a.id))}async function Q(e){let t=await p("leadbay_pull_followups",{count:1,set_filter:{criteria:e.criteria},...e.city?{city:e.city}:{},...e.cityId?{city_id:e.cityId}:{},...e.personal===void 0?{}:{personal:e.personal},_triggered_by:e.ask}),n=t.active_filters?.criteria??[],r=u=>typeof u?.type=="string"?u.type:null,o=new Set;for(let u of e.criteria){let g=r(u);g&&o.add(g)}(e.city||e.cityId)&&o.add("location_ids");let a=new Set(n.map(r).filter(u=>u!=null)),i=[...o].every(u=>a.has(u)),l=[...a].every(u=>o.has(u)),d=new Set(["location_ids"]),c=(u,g)=>u.filter(h=>r(h)===g).map(h=>JSON.stringify(Object.keys(h).filter(f=>f!=="type").sort().map(f=>[f,h[f]]))).sort().join("|"),s=[...o].every(u=>d.has(u)||c(e.criteria,u)===c(n,u));return{total:k(t.pagination?.total),applied:n,trusted:i&&l&&s}}async function ot(e){let t=[];return e.sectorIds?.length&&t.push({type:"sector_ids",sectors:e.sectorIds,is_excluded:!1}),Q({criteria:t,personal:e.personal,ask:e.ask,city:e.city,cityId:e.cityId})}async function at(e){let t=[],n=e.buckets.length;for(let r of e.buckets){let o;try{let a=await Q({criteria:r.criterion?[r.criterion]:[],personal:e.personal,ask:e.ask});o={...r,total:a.total,trusted:a.trusted}}catch(a){o={...r,total:0,trusted:!1,error:V(a)}}t.push(o),e.onProgress?.(t.length,n,o)}return t}async function it(e){try{let t=await Q({criteria:[],personal:e.personal,ask:e.ask});return{id:"__all__",label:"Whole book",total:t.total,trusted:t.trusted}}catch(t){return{id:"__all__",label:"Whole book",total:0,trusted:!1,error:V(t)}}}async function lt(e){let t=await p("leadbay_pull_followups",{count:e.sample??200,filtered:!1,...e.personal===void 0?{}:{personal:e.personal},_triggered_by:e.ask}),n=new Map;for(let a of t.leads??[]){let i=a?.[e.field];if(i==null||i===""||i==="null")continue;let l=String(i);n.set(l,(n.get(l)??0)+1)}let r=e.labels??{},o=[...n.entries()].map(([a,i])=>({id:a,label:r[a]??`${e.field} ${a}`,sampled:i,...e.criterion?{criterion:e.criterion(a)}:{}})).sort((a,i)=>i.sampled-a.sampled||a.id.localeCompare(i.id));return e.limit!=null?o.slice(0,e.limit):o}var st=/[\\s,]+(inc|llc|corp|ltd|gmbh|co|s\\.?a|s\\.?l|plc|ag|sas|sarl)\\.?$/i;function ct(e,t){let n=e??{},r=s=>typeof s=="string"&&s.trim()&&s!=="null"?s.trim():null,o=r(n.first_name),a=r(n.last_name),i=[o,a].filter(Boolean).join(" ")||r(n.name);if(!i)return null;let l=r(n.linkedin_page);if(l&&/^https:\\/\\//i.test(l))return{url:l,profile:!0};let d=(r(t)??"").replace(st,"").trim(),c=[i,d].filter(Boolean).join(" ");return{url:"https://www.linkedin.com/search/results/people/?keywords="+encodeURIComponent(c).replace(/%20/g,"+"),profile:!1}}function we(e){let t=e??{},n=l=>typeof l=="string"&&l&&l!=="null"?l:null,r=Array.isArray(t.phone_numbers)?t.phone_numbers:[],o=t.has_phone===!0||r.some(l=>n(l)!=null),a=n(t.email)!=null;return o||a?"reachable":k(t.contacts_count)+k(t.org_contacts_count)>0?"contacts_only":"empty"}async function dt(e){let t=e.sample??200,n=await p("leadbay_pull_followups",{count:t,filtered:!1,...e.personal===void 0?{}:{personal:e.personal},_triggered_by:e.ask}),r=Array.isArray(n.leads)?n.leads:[],o={reachable:0,contacts_only:0,empty:0};for(let i of r)o[we(i)]++;let a=[["reachable","Callable now"],["contacts_only","Contacts, no channel"],["empty","No contacts"]];return{sampled:r.length,bookTotal:k(n.pagination?.total),rows:a.map(([i,l])=>({id:i,label:l,total:o[i],trusted:!0,sampled:o[i]}))}}function ut(e){return new x({load:()=>p("leadbay_team_activity",{weeks:e.weeks??4,_triggered_by:e.ask})})}var ht="http://www.w3.org/2000/svg",E=(e,t)=>{let n=document.createElementNS(ht,e);for(let[r,o]of Object.entries(t))n.setAttribute(r,String(o));return n};function k(e){return typeof e=="number"&&isFinite(e)?e:0}function gt(e,t={}){let n=Array.isArray(e)?e:[];if(n.length===0){let m=document.createElement("div");m.className="lb-empty";let w=document.createElement("div");if(w.className="lb-empty-title",w.textContent=t.emptyTitle??"Nothing in this window",m.appendChild(w),t.emptyHint){let L=document.createElement("div");L.className="lb-empty-hint",L.textContent=t.emptyHint,m.appendChild(L)}return m}let r=t.width??640,o=t.height??160,a=40,i=8,l=12,d=26,c=r-a-i,s=o-l-d,u=Math.max(1,...n.map(m=>k(m.count))),g=m=>n.length===1?a+c/2:a+m/(n.length-1)*c,h=m=>l+s-k(m)/u*s,f=E("svg",{class:"lb-chart",viewBox:`0 0 ${r} ${o}`,preserveAspectRatio:"none",role:"img","aria-label":t.label??`Trend across ${n.length} points, peak ${u}`});for(let m of[0,u]){f.appendChild(E("line",{class:"lb-chart-grid",x1:a,x2:r-i,y1:h(m),y2:h(m)}));let w=E("text",{x:a-6,y:h(m)+4,"text-anchor":"end"});w.textContent=String(m),f.appendChild(w)}let y=n.map((m,w)=>`${g(w)},${h(m.count)}`);f.appendChild(E("path",{class:"lb-chart-area",d:`M${g(0)},${h(0)} L${y.join(" L")} L${g(n.length-1)},${h(0)} Z`})),f.appendChild(E("path",{class:"lb-chart-line",d:`M${y.join(" L")}`})),n.forEach((m,w)=>{f.appendChild(E("circle",{class:"lb-chart-dot",cx:g(w),cy:h(m.count),r:3}))});let _=n.length===1?[[0,"middle"]]:[[0,"start"],[n.length-1,"end"]];for(let[m,w]of _){let L=E("text",{x:g(m),y:o-8,"text-anchor":w});L.textContent=String(n[m].date??"").slice(0,10),f.appendChild(L)}return f}function bt(e){let t=document.createElement("div");t.className="lb-tiles";for(let n of e){let r=document.createElement("div");r.className="lb-tile";let o=document.createElement("span");o.className="lb-tile-label",o.textContent=n.label;let a=document.createElement("span");a.className="lb-tile-value",a.textContent=String(n.value),r.append(o,a),t.appendChild(r)}return t}function ft(e){let{rows:t,columns:n}=e;if(!t||t.length===0){let d=document.createElement("div");d.className="lb-empty";let c=document.createElement("div");if(c.className="lb-empty-title",c.textContent=e.emptyTitle??"Nothing to show",d.appendChild(c),e.emptyHint){let s=document.createElement("div");s.className="lb-empty-hint",s.textContent=e.emptyHint,d.appendChild(s)}return d}let r=e.sortKey??n[0].key,o=e.sortDir??"descending",a=document.createElement("table");a.className="lb-table";let i=()=>{a.textContent="";let d=document.createElement("thead"),c=document.createElement("tr");for(let g of n){let h=document.createElement("th");h.textContent=g.label,g.num&&h.setAttribute("data-num",""),h.setAttribute("aria-sort",g.key===r?o:"none"),h.setAttribute("tabindex","0"),h.setAttribute("role","button");let f=()=>{r===g.key?o=o==="ascending"?"descending":"ascending":(r=g.key,o=g.num?"descending":"ascending"),i(),e.onSort?.(r,o)};h.addEventListener("click",f),h.addEventListener("keydown",y=>{(y.key==="Enter"||y.key===" ")&&(y.preventDefault(),f())}),c.appendChild(h)}d.appendChild(c),a.appendChild(d);let s=t.slice().sort((g,h)=>{let f=g[r],y=h[r];if(typeof f=="string"||typeof y=="string"){let _=String(f??"").localeCompare(String(y??""));return o==="ascending"?_:-_}return o==="ascending"?k(f)-k(y):k(y)-k(f)}),u=document.createElement("tbody");for(let g of s){let h=document.createElement("tr");h.setAttribute("aria-selected","false");for(let f of n){let y=document.createElement("td");f.num&&y.setAttribute("data-num","");let _=f.cell?.(g);_==null?y.textContent=f.num?String(k(g[f.key])):String(g[f.key]??"\\u2014"):typeof _=="string"?y.textContent=_:y.appendChild(_),h.appendChild(y)}u.appendChild(h)}a.appendChild(u)};i();let l=document.createElement("div");return l.style.overflowX="auto",l.appendChild(a),l}var mt={VERSION:G,configure:Ie,styles:Re,call:p,report:T,setTelemetry:Ae,field:e=>new S(e),action:e=>new v(e),resource:e=>new x(e),list:e=>new R(e),bindSelect:ze,bindValue:qe,bindAction:De,sparkline:gt,tiles:bt,leaderboard:ft,campaigns:Ue,segmentCount:ot,portfolioSectors:rt,coverage:at,coverageBuckets:lt,coverageTotal:it,reachCoverage:dt,leadReach:we,outreach:de,note:$e,like:ue,dislike:he,qualify:be,qualifyLabel:ge,qualifyStatus:He,leadStatus:se,setStatus:ce,relanceRow:Ze,enrichContact:Je,sectorLabels:fe,leadContext:me,contactLinkedin:ct,leadPos:Ve,distanceKm:W,routeUrl:We,routeDistanceKm:Qe,orderByProximity:Ye,GOOGLE_MAPS_STOP_LIMIT:pe,EPILOGUE_LABELS:ye,sortOrder:Fe,leadHistory:Be,leadProfile:Ge,enrichment:et,callList:nt,leadList:tt,leadSource:Ke,teamActivity:ut,EPILOGUE_STATUSES:$,LEAD_STATUSES:z,SORT_ORDERS:H};typeof globalThis<"u"&&(globalThis.LeadbayArtifacts=mt);})();</script>\n<script>(function () {\n // The recipe pins the light theme, set before the skin.\n document.documentElement.setAttribute("data-lb-theme", "light")\n const lb = window.LeadbayArtifacts\n lb.styles()\n\n const ASK = "Triage board"\n const PAGE_SIZE = 10\n const ACTIONS = [\n { value: "STILL_CHASING", label: "Still chasing" },\n { value: "INTEREST_VALIDATED_OR_MEETING_PLANED", label: "Meeting planned" },\n { value: "COULD_NOT_REACH_STILL_TRYING", label: "Could not reach" },\n { value: "NOT_INTERESTED_LOST", label: "Not interested" },\n ]\n\n const state = { page: 0, leads: [], total: 0, loaded: false, selected: new Set(), taste: "all", verdict: "all" }\n\n // ---- small helpers ----\n function h(tag, props, ...kids) {\n const el = document.createElement(tag)\n for (const [k, v] of Object.entries(props || {})) {\n if (v == null || v === false) continue\n if (k === "class") el.className = v\n else if (k === "text") el.textContent = v\n else if (k.startsWith("on")) el.addEventListener(k.slice(2).toLowerCase(), v)\n else el.setAttribute(k, v === true ? "" : String(v))\n }\n for (const kid of kids.flat()) if (kid != null && kid !== false) el.append(kid instanceof Node ? kid : String(kid))\n return el\n }\n const real = (v) => (v && v !== "null" ? v : null)\n const svg = (paths) => {\n const s = document.createElementNS("http://www.w3.org/2000/svg", "svg")\n s.setAttribute("viewBox", "0 0 24 24"); s.setAttribute("fill", "none"); s.setAttribute("stroke", "currentColor")\n s.setAttribute("stroke-width", "2"); s.setAttribute("stroke-linecap", "round"); s.setAttribute("stroke-linejoin", "round")\n s.setAttribute("aria-hidden", "true"); s.innerHTML = paths; return s\n }\n const ICON = {\n like: \'<path d="M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z"/>\',\n dislike: \'<path d="M17 14V2"/><path d="M9 18.12 10 14H4.17a2 2 0 0 1-1.92-2.56l2.33-8A2 2 0 0 1 6.5 2H20a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.76a2 2 0 0 0-1.79 1.11L12 22a3.13 3.13 0 0 1-3-3.88Z"/>\',\n out: \'<line x1="7" y1="17" x2="17" y2="7"/><polyline points="7 7 17 7 17 17"/>\',\n }\n // 10-segment fit bar: \u25B0 profile fit, \u2756 AI boost at the end of the run, \u25B1 empty.\n function bar(lead) {\n const filled = Math.max(0, Math.min(10, Math.round((lead.score || 0) / 10)))\n const boost = (lead.qualification_summary && lead.qualification_summary.avg_qualification_boost) || 0\n const ai = Math.max(0, Math.min(filled, Math.round(boost / 3.3)))\n return "\u25B0".repeat(filled - ai) + "\u2756".repeat(ai) + "\u25B1".repeat(10 - filled)\n }\n function verdictOf(lead) {\n const b = (lead.qualification_summary && lead.qualification_summary.avg_qualification_boost) || 0\n return b > 0 ? "boosted" : b < 0 ? "penalised" : "neutral"\n }\n function sizeText(size) {\n if (!size || (!size.min && !size.max)) return null\n return size.min && size.max ? `${size.min}\u2013${size.max} employees` : `${size.min || size.max}+ employees`\n }\n function whyFits(lead) {\n return (\n real(lead.short_description) ||\n (lead.tags || []).slice(0, 2).map((t) => t.display_name).join(" \xB7 ") ||\n (lead.qualification_summary && lead.qualification_summary.best_response_excerpt) ||\n "No description yet \u2014 qualify to add one"\n )\n }\n const url = (host) => (/^https?:\\/\\//.test(host) ? host : "https://" + host)\n const leadUrl = (lead) => `https://leadbay.app/app/discover?lead=${encodeURIComponent(lead.id)}`\n const today = (lead) => new Set((lead.epilogue_today_statuses || []).map((e) => String(e.type).replace(/^EPILOGUE_/, "")))\n function toolMissing(err) {\n return /unknown tool|\\btool\\b[^.]*\\bnot found|not_in_manifest|no such tool/i.test(String((err && (err.message || err.code)) || ""))\n }\n function say(msg, text, tone) { msg.textContent = text; msg.dataset.tone = tone || "" }\n\n // ---- toolbar ----\n const tally = document.getElementById("tally")\n const deck = document.getElementById("deck")\n const range = document.getElementById("range")\n const prev = document.getElementById("prev")\n const next = document.getElementById("next")\n const bulkMsg = document.getElementById("bulk-msg")\n document.getElementById("f-taste").addEventListener("change", (e) => { state.taste = e.target.value; render() })\n document.getElementById("f-verdict").addEventListener("change", (e) => { state.verdict = e.target.value; render() })\n\n const bulkStatus = lb.leadStatus("")\n lb.bindSelect(document.getElementById("bulk-status"), bulkStatus)\n const bulkWrite = lb.setStatus({ leadIds: () => [...state.selected], status: bulkStatus, ask: ASK })\n lb.bindAction(document.getElementById("bulk-apply"), bulkWrite)\n bulkWrite.subscribe((a) => {\n if (a.loading) say(bulkMsg, "Applying\u2026")\n else if (a.error) say(bulkMsg, a.error.message, "error")\n else if (a.lastResult) say(bulkMsg, `Status applied to ${state.selected.size} lead${state.selected.size === 1 ? "" : "s"}.`, "ok")\n })\n document.getElementById("select-all").addEventListener("change", (e) => {\n for (const lead of visible()) e.target.checked ? state.selected.add(lead.id) : state.selected.delete(lead.id)\n render()\n })\n\n prev.addEventListener("click", () => loadPage(state.page - 1))\n next.addEventListener("click", () => loadPage(state.page + 1))\n\n async function loadPage(page) {\n deck.setAttribute("data-lb-state", "loading")\n prev.disabled = next.disabled = true\n try {\n const res = await lb.call("leadbay_pull_leads", { page, count: PAGE_SIZE, _triggered_by: ASK })\n state.leads = (res && res.leads) || []\n state.total = (res && res.pagination && res.pagination.total) || state.leads.length\n state.page = page\n state.loaded = true\n render()\n } catch (err) {\n state.loaded = true\n render()\n say(bulkMsg, err.message || "Could not load that page.", "error")\n } finally {\n deck.setAttribute("data-lb-state", "ready")\n renderPager()\n }\n }\n\n function visible() {\n return state.leads.filter((lead) => {\n if (state.taste === "liked" && !lead.liked) return false\n if (state.taste === "disliked" && !lead.disliked) return false\n if (state.taste === "none" && (lead.liked || lead.disliked)) return false\n if (state.verdict !== "all" && verdictOf(lead) !== state.verdict) return false\n return true\n })\n }\n\n function renderPager() {\n const from = state.page * PAGE_SIZE + 1\n range.textContent = state.leads.length ? `${from}\u2013${Math.min(from + state.leads.length - 1, state.total)} of ${state.total}` : ""\n prev.disabled = state.page === 0\n next.disabled = (state.page + 1) * PAGE_SIZE >= state.total\n }\n\n function render() {\n if (!state.loaded) {\n tally.textContent = "Loading today\'s leads\u2026"\n deck.replaceChildren(h("div", { class: "lb-empty" }, h("div", { class: "lb-empty-title", text: "Loading today\'s leads\u2026" })))\n return\n }\n const rows = visible()\n tally.textContent = `${rows.length} lead${rows.length === 1 ? "" : "s"}${rows.length !== state.leads.length ? ` of ${state.leads.length}` : ""}`\n deck.replaceChildren(...(rows.length ? rows.map(card) : [h("div", { class: "lb-empty" }, h("div", { class: "lb-empty-title", text: "No lead matches these filters" }), h("div", { class: "lb-empty-hint", text: "Reset Taste and Verdict to All." }))]))\n renderPager()\n }\n\n // ---- one card ----\n function card(lead) {\n const name = lead.name || "Unnamed company"\n const msg = h("div", { class: "lb-msg", role: "status", "aria-live": "polite" })\n\n // taste\n const likeBtn = h("button", { class: "lb-btn lb-btn-icon", type: "button", title: "Like", "aria-label": `Like ${name}`, "aria-pressed": lead.liked ? "true" : "false" }, svg(ICON.like))\n const dislikeBtn = h("button", { class: "lb-btn lb-btn-icon", type: "button", title: "Dislike", "data-taste": "disliked", "aria-label": `Dislike ${name}`, "aria-pressed": lead.disliked ? "true" : "false" }, svg(ICON.dislike))\n const like = lb.like(lead.id), dislike = lb.dislike(lead.id)\n lb.bindAction(likeBtn, like); lb.bindAction(dislikeBtn, dislike)\n like.subscribe((a) => { if (a.lastResult) { lead.liked = true; lead.disliked = false; paintTaste() } if (a.error) say(msg, a.error.message, "error") })\n dislike.subscribe((a) => { if (a.lastResult) { lead.disliked = true; lead.liked = false; paintTaste() } if (a.error) say(msg, a.error.message, "error") })\n const tasteChip = h("span", { class: "lb-chip", "data-taste": "", hidden: true })\n function paintTaste() {\n likeBtn.setAttribute("aria-pressed", lead.liked ? "true" : "false")\n dislikeBtn.setAttribute("aria-pressed", lead.disliked ? "true" : "false")\n tasteChip.hidden = !lead.liked && !lead.disliked\n tasteChip.textContent = lead.liked ? "Liked" : lead.disliked ? "Disliked" : ""\n }\n paintTaste()\n\n // selection for the bulk apply\n const pick = h("input", { type: "checkbox", "aria-label": `Select ${name} for bulk apply` })\n pick.checked = state.selected.has(lead.id)\n pick.addEventListener("change", () => { pick.checked ? state.selected.add(lead.id) : state.selected.delete(lead.id) })\n\n // what it is\n const rc = lead.recommended_contact\n const who = rc ? [rc.first_name, rc.last_name].filter(Boolean).join(" ") : null\n // The contact\'s name links to LinkedIn, as it does in the agent\'s table:\n // their profile, else a people search (lb.contactLinkedin).\n const li = who ? lb.contactLinkedin(rc, lead.name) : null\n const phone = real((lead.phone_numbers || [])[0])\n const email = real(lead.email)\n const place = [lead.location && lead.location.city, lead.location && lead.location.state].filter(Boolean).join(", ")\n const facts = [place, sizeText(lead.size)].filter(Boolean)\n\n // status \u2014 saves on change, no button\n const statusMsg = h("div", { class: "lb-msg", role: "status", "aria-live": "polite" })\n const statusSel = h("select", { class: "lb-select", "aria-label": `Lead status for ${name}` })\n const statusField = lb.leadStatus("")\n lb.bindSelect(statusSel, statusField)\n const statusWrite = lb.setStatus({ leadId: lead.id, status: statusField, ask: ASK })\n statusSel.addEventListener("change", () => statusWrite.run())\n statusWrite.subscribe((a) => {\n if (a.loading) say(statusMsg, "Saving\u2026")\n else if (a.error) say(statusMsg, a.error.message, "error")\n else if (a.lastResult) say(statusMsg, "Saved", "ok")\n })\n\n // prospecting actions \u2014 toggles over today\'s list, as in the web app\n const actMsg = h("div", { class: "lb-msg", role: "status", "aria-live": "polite" })\n const toggles = ACTIONS.map((a) =>\n h("button", { class: "lb-action", type: "button", role: "checkbox", "data-value": a.value, "aria-label": `${a.label} for ${name}`, text: a.label, onClick: () => toggle(a) }),\n )\n function paintToggles() { const on = today(lead); for (const b of toggles) b.setAttribute("aria-checked", on.has(b.dataset.value) ? "true" : "false") }\n paintToggles()\n async function toggle(a) {\n const selected = !today(lead).has(a.value)\n for (const b of toggles) b.disabled = true\n say(actMsg, "Saving\u2026")\n try {\n await lb.call("leadbay_set_prospecting_action", { lead_id: lead.id, action: a.value, selected, _triggered_by: ASK })\n const type = "EPILOGUE_" + a.value\n const list = lead.epilogue_today_statuses || []\n lead.epilogue_today_statuses = selected ? list.concat({ type, added_at: new Date().toISOString() }) : list.filter((e) => e.type !== type)\n say(actMsg, `\u201C${a.label}\u201D ${selected ? "on" : "off"}`, "ok")\n } catch (err) {\n say(actMsg, toolMissing(err) ? "Needs the next Leadbay release \u2014 set it in the web app for now." : err.message || "Could not save.", "error")\n } finally {\n for (const b of toggles) b.disabled = false\n paintToggles()\n }\n }\n\n // note \u2014 the web app\'s note field, never report_outreach\n const noteInput = h("input", { class: "lb-input", type: "text", placeholder: "What happened?", "aria-label": `Outreach note for ${name}` })\n const noteField = lb.field({ validate: (v) => (v && String(v).trim() ? null : "Add a note first") })\n lb.bindValue(noteInput, noteField)\n const noteBtn = h("button", { class: "lb-btn lb-btn-submit", type: "button", text: "Log outreach" })\n const noteWrite = lb.note({ leadId: lead.id, note: noteField })\n lb.bindAction(noteBtn, noteWrite)\n noteWrite.subscribe((a) => {\n if (a.loading) say(actMsg, "Saving note\u2026")\n else if (a.error) say(actMsg, a.error.message, "error")\n else if (a.lastResult) { say(actMsg, "Outreach logged", "ok"); noteInput.value = ""; noteField.setValue("") }\n })\n\n // qualify \u2014 mandatory on every card\n const qBtn = h("button", { class: "lb-btn lb-btn-ai", type: "button", text: lb.qualifyLabel(lead), "aria-label": `${lb.qualifyLabel(lead)} ${name}` })\n const q = lb.qualify({ leadId: lead.id, ask: ASK, scored: lb.qualifyLabel(lead) === "Requalify" })\n lb.bindAction(qBtn, q)\n q.subscribe((a) => {\n if (a.loading) say(msg, "Queueing\u2026")\n else if (a.error) say(msg, a.error.message, "error")\n else if (a.lastResult) say(msg, "Qualifying \u2014 the verdict lands shortly.", "ok")\n })\n\n const excerpt = lead.qualification_summary && lead.qualification_summary.best_response_excerpt\n const boost = (lead.qualification_summary && lead.qualification_summary.avg_qualification_boost) || 0\n const tags = (lead.tags || []).map((t) => h("span", { text: t.display_name }))\n\n return h("article", { class: "lb-card" },\n h("div", { class: "lb-card-top" },\n pick,\n h("div", { class: "lb-lead-title" }, lead.website ? h("a", { href: url(lead.website), target: "_blank", rel: "noopener", text: name }) : name),\n h("span", { class: "lb-group" }, likeBtn, dislikeBtn),\n ),\n h("div", { class: "lb-chips" }, tasteChip),\n h("div", { class: "lb-sections" },\n h("div", { class: "lb-section" },\n facts.length ? h("div", { class: "lb-tags-plain" }, facts.map((f) => h("span", { text: f }))) : null,\n h("div", { class: "lb-sub", text: whyFits(lead) }),\n ),\n h("div", { class: "lb-section" },\n h("div", { class: "lb-sec-title", text: "Fit" }),\n h("div", { class: "fit" },\n h("code", { class: "bar", "aria-hidden": "true", text: bar(lead) }),\n h("span", { class: "lb-vh", text: `Fit: ${verdictOf(lead)}` }),\n h("span", { class: "verdict", "data-v": verdictOf(lead), text: boost > 0 ? `AI boost +${Math.round(boost)}` : boost < 0 ? `AI penalty ${Math.round(boost)}` : "No AI adjustment" }),\n ),\n excerpt ? h("div", { class: "lb-sub excerpt", text: excerpt }) : null,\n ),\n h("div", { class: "lb-section" },\n h("div", { class: "lb-sec-title", text: "Intent tags" }),\n tags.length ? h("div", { class: "lb-tags-intent" }, tags) : h("div", { class: "lb-tags-empty", text: "None \u2014 the qualifier found no buying signal" }),\n ),\n h("div", { class: "lb-section" },\n h("div", { class: "lb-sec-title", text: "Data" }),\n h("div", { class: "lb-sub" }, h("span", { "aria-hidden": "true", text: "\u{1F464} " }),\n who\n ? [\n li\n ? h("a", {\n class: "lb-link", href: li.url, target: "_blank", rel: "noopener",\n title: li.profile ? `${who} on LinkedIn` : `No LinkedIn profile on file \u2014 search LinkedIn for ${who}`,\n text: who,\n })\n : who,\n rc.job_title ? " \xB7 " + rc.job_title : null,\n ]\n : "No contact yet \u2014 enrich to find one"),\n h("div", { class: "lb-sub" }, h("span", { class: "lb-vh", text: "Company switchboard: " }), h("span", { "aria-hidden": "true", text: "\u{1F3E2} " }),\n [phone && "\u260E " + phone, email && "\u2709 " + email].filter(Boolean).join(" \xB7 ") ? [phone && "\u260E " + phone, email && "\u2709 " + email].filter(Boolean).join(" \xB7 ") + " (company line)" : "No phone or email \u2014 enrich to look for them"),\n ),\n h("div", { class: "lb-section" },\n h("div", { class: "lb-sec-title", text: "Status" }),\n statusSel, statusMsg,\n ),\n h("div", { class: "lb-section" },\n h("div", { class: "lb-sec-title", text: "Outreach" }),\n h("div", { class: "lb-stack" },\n h("div", { class: "actions", role: "group", "aria-label": `Prospecting actions for ${name}` }, toggles),\n noteInput, noteBtn,\n ),\n actMsg,\n ),\n h("div", { class: "lb-card-foot" },\n qBtn,\n h("span", { class: "lb-spacer" }),\n h("a", { class: "lb-link-out", href: leadUrl(lead), target: "_blank", rel: "noopener", "aria-label": `Open ${name} in Leadbay` }, "Open in Leadbay ", svg(ICON.out)),\n ),\n ),\n msg,\n )\n }\n\n render()\n loadPage(0)\n})()</script>\n' } };
|
|
27499
27499
|
ARTIFACT_BASEMAPS = { "fr": `{"type":"FeatureCollection","features":[{"type":"Feature","properties":{"code":"01","nom":"Ain"},"geometry":{"type":"Polygon","coordinates":[[[4.78021,46.17668],[4.78024,46.18905],[4.7932,46.20192],[4.79495,46.21938],[4.80776,46.23697],[4.81099,46.25992],[4.82497,46.27315],[4.83321,46.30014],[4.85342,46.3299],[4.85146,46.35627],[4.88821,46.40298],[4.89354,46.44404],[4.91354,46.46074],[4.91556,46.48894],[4.93359,46.51244],[4.94237,46.51302],[4.94125,46.51965],[4.95454,46.51269],[4.9442,46.51063],[4.95006,46.50081],[4.95977,46.50767],[4.97035,46.50553],[4.96266,46.51234],[4.98355,46.51539],[5.01059,46.51107],[5.01297,46.50129],[5.05643,46.48393],[5.07668,46.48623],[5.09725,46.49996],[5.11455,46.49265],[5.13436,46.50148],[5.13507,46.50898],[5.16625,46.50312],[5.16728,46.51907],[5.17749,46.51112],[5.20186,46.50826],[5.21506,46.46836],[5.22554,46.46827],[5.23522,46.45785],[5.248,46.45937],[5.25765,46.44985],[5.3149,46.44513],[5.32447,46.42849],[5.30898,46.42453],[5.3124,46.416],[5.30242,46.417],[5.2988,46.41268],[5.31477,46.40948],[5.33421,46.3974],[5.34142,46.4018],[5.35347,46.39738],[5.35215,46.39341],[5.36267,46.39425],[5.36342,46.38901],[5.37788,46.38223],[5.36282,46.3699],[5.37705,46.36412],[5.37346,46.35224],[5.38058,46.34579],[5.40142,46.33955],[5.40465,46.31034],[5.41024,46.3091],[5.41683,46.34526],[5.42366,46.34768],[5.43783,46.3157],[5.45707,46.31706],[5.45944,46.32316],[5.46692,46.32327],[5.4753,46.31539],[5.46596,46.29182],[5.45891,46.29071],[5.45684,46.27448],[5.46918,46.27108],[5.47385,46.26428],[5.50255,46.27109],[5.50912,46.26455],[5.5391,46.2688],[5.56516,46.29345],[5.59354,46.29436],[5.61324,46.3272],[5.63051,46.33021],[5.64314,46.34478],[5.6498,46.33419],[5.64443,46.3248],[5.66844,46.32437],[5.6837,46.31686],[5.68458,46.31092],[5.71472,46.30877],[5.7193,46.29346],[5.71449,46.28091],[5.72518,46.26073],[5.76565,46.26829],[5.85307,46.26151],[5.86433,46.27121],[5.86919,46.26497],[5.89463,46.28661],[5.9092,46.28394],[5.92177,46.31223],[5.94136,46.30873],[5.98354,46.36304],[6.0282,46.38564],[6.06058,46.41751],[6.09819,46.40879],[6.10606,46.39921],[6.11294,46.39984],[6.14928,46.37763],[6.15985,46.37903],[6.17022,46.36648],[6.14876,46.34247],[6.13859,46.33939],[6.1198,46.31223],[6.11946,46.29427],[6.10237,46.28485],[6.12013,46.26475],[6.12425,46.25101],[6.11668,46.24489],[6.10176,46.23749],[6.08437,46.24689],[6.06967,46.24103],[6.06318,46.2457],[6.04616,46.23118],[6.03372,46.23842],[6.01291,46.23077],[6.00256,46.22091],[5.99059,46.222],[5.9934,46.21557],[5.97474,46.21512],[5.96917,46.20642],[5.97333,46.20276],[5.96368,46.19696],[5.99529,46.18299],[5.98852,46.17085],[5.98226,46.17322],[5.96478,46.14514],[5.96563,46.13665],[5.94621,46.12795],[5.92027,46.13121],[5.90353,46.12003],[5.89404,46.11947],[5.88532,46.1079],[5.89352,46.09562],[5.88745,46.08582],[5.85932,46.08534],[5.83155,46.10625],[5.81956,46.10311],[5.82269,46.09225],[5.80762,46.06393],[5.81424,46.05716],[5.807,46.04383],[5.8124,46.02398],[5.80564,46.01429],[5.81092,46.00993],[5.81051,45.9882],[5.83403,45.97203],[5.83502,45.95111],[5.82187,45.92931],[5.82854,45.9093],[5.79722,45.83105],[5.78407,45.81651],[5.77904,45.75989],[5.7835,45.74431],[5.76984,45.74131],[5.77624,45.72638],[5.755,45.70731],[5.7006,45.70995],[5.70976,45.68648],[5.68488,45.66616],[5.6872,45.64312],[5.67812,45.63836],[5.6536,45.63715],[5.62879,45.61083],[5.60519,45.63358],[5.60266,45.65153],[5.58736,45.65987],[5.58641,45.66707],[5.56323,45.67437],[5.55251,45.67229],[5.54595,45.69733],[5.55599,45.69763],[5.56682,45.68413],[5.57554,45.6881],[5.57368,45.69473],[5.55195,45.70224],[5.54955,45.71181],[5.52567,45.71673],[5.51623,45.73225],[5.48468,45.75268],[5.42216,45.80767],[5.42117,45.82202],[5.43619,45.82813],[5.41901,45.83968],[5.41313,45.85222],[5.35383,45.88327],[5.34091,45.88051],[5.3293,45.86357],[5.30202,45.84765],[5.28892,45.81112],[5.27024,45.79172],[5.22359,45.76866],[5.19153,45.77169],[5.17571,45.79419],[5.12554,45.81106],[5.11246,45.80991],[5.11016,45.79788],[5.10372,45.81367],[5.04479,45.81174],[5.01345,45.80506],[5.00313,45.81003],[4.98161,45.80545],[4.96308,45.81097],[4.9238,45.804],[4.91834,45.80703],[4.91793,45.84303],[4.90057,45.8576],[4.90902,45.8741],[4.88383,45.87999],[4.8807,45.89717],[4.87201,45.89458],[4.87208,45.90346],[4.85316,45.90678],[4.84804,45.91298],[4.80518,45.89633],[4.80856,45.92015],[4.7898,45.92281],[4.77707,45.93843],[4.75421,45.93483],[4.7287,45.94433],[4.75451,45.97227],[4.73953,46.04721],[4.76168,46.06884],[4.74681,46.08779],[4.80255,46.15207],[4.78021,46.17668]]]}},{"type":"Feature","properties":{"code":"02","nom":"Aisne"},"geometry":{"type":"Polygon","coordinates":[[[3.17296,50.01131],[3.20898,50.01971],[3.22731,50.0325],[3.25824,50.02437],[3.2581,50.03201],[3.27102,50.02937],[3.27769,50.01434],[3.31307,50.01995],[3.32786,50.01585],[3.35079,50.02723],[3.35214,50.03575],[3.36349,50.03674],[3.37736,50.03666],[3.38889,50.03067],[3.39891,50.03476],[3.41353,50.02568],[3.42492,50.02748],[3.42824,50.02207],[3.49066,50.01889],[3.50714,50.03578],[3.5252,50.03606],[3.53197,50.04576],[3.54321,50.04596],[3.54136,50.05521],[3.56719,50.05326],[3.59403,50.04415],[3.61412,50.02505],[3.64172,50.03873],[3.6585,50.02936],[3.66231,50.03911],[3.6486,50.04256],[3.658,50.04448],[3.66079,50.05196],[3.71518,50.06927],[3.74663,50.05279],[3.77443,50.05052],[3.77793,50.04599],[3.79921,50.0481],[3.81583,50.03904],[3.83553,50.04827],[3.84871,50.03907],[3.87503,50.03657],[3.88719,50.03043],[3.87832,50.02789],[3.88969,50.02264],[3.88743,50.00955],[3.9235,50.02643],[3.94428,50.0302],[3.95012,50.02705],[3.98231,50.04443],[3.9955,50.02768],[3.97945,50.00299],[3.9808,49.99358],[4.00537,49.99606],[4.01171,49.98549],[4.03112,49.98207],[4.03416,49.98578],[4.0567,49.98543],[4.08366,49.979],[4.08428,49.96932],[4.1409,49.97876],[4.15211,49.97467],[4.17282,49.9772],[4.19711,49.96772],[4.19632,49.9553],[4.23316,49.95775],[4.22072,49.93721],[4.2176,49.91268],[4.23339,49.90939],[4.23497,49.90399],[4.2557,49.90321],[4.24876,49.85675],[4.23297,49.84841],[4.21427,49.80611],[4.22175,49.80452],[4.21899,49.80025],[4.22668,49.79303],[4.20592,49.77819],[4.2139,49.77111],[4.22861,49.77311],[4.24283,49.76714],[4.2496,49.75711],[4.22971,49.74661],[4.2259,49.73285],[4.23191,49.73045],[4.19145,49.71601],[4.18519,49.69888],[4.14418,49.68854],[4.14859,49.67832],[4.12702,49.67792],[4.12555,49.65107],[4.11575,49.63292],[4.10221,49.6326],[4.09916,49.62835],[4.06897,49.63751],[4.05568,49.63434],[4.04108,49.63827],[4.03791,49.62292],[4.02461,49.62126],[4.04729,49.59953],[4.06648,49.59443],[4.05793,49.59155],[4.05945,49.57614],[4.06333,49.57122],[4.07657,49.57113],[4.04876,49.54527],[4.0758,49.54146],[4.07584,49.51835],[4.06215,49.52272],[4.05662,49.52104],[4.06186,49.51257],[4.05756,49.50818],[4.04071,49.50853],[4.04237,49.46869],[4.06791,49.44488],[4.05213,49.44381],[4.05033,49.44761],[4.03766,49.43826],[4.0423,49.41665],[4.05027,49.41227],[4.03991,49.3974],[4.0355,49.3599],[4.01273,49.3583],[3.99494,49.3779],[3.96131,49.37734],[3.92523,49.40758],[3.91472,49.40353],[3.91033,49.39483],[3.89574,49.39278],[3.88118,49.40529],[3.82238,49.40238],[3.83961,49.39101],[3.85985,49.38615],[3.8561,49.36424],[3.84789,49.36457],[3.85874,49.35412],[3.85284,49.34497],[3.82406,49.35735],[3.80223,49.35891],[3.77969,49.35193],[3.77753,49.35582],[3.75782,49.34761],[3.74109,49.34759],[3.74222,49.33651],[3.66916,49.32475],[3.64394,49.31272],[3.63834,49.30136],[3.65899,49.28682],[3.6516,49.27836],[3.66149,49.26996],[3.65387,49.25423],[3.66069,49.26008],[3.66861,49.24089],[3.67815,49.23533],[3.66998,49.23286],[3.66357,49.22187],[3.65148,49.22156],[3.65283,49.21543],[3.68179,49.20534],[3.67611,49.20095],[3.68158,49.19747],[3.69861,49.2055],[3.70487,49.19859],[3.69694,49.19455],[3.69731,49.18843],[3.70685,49.18593],[3.70439,49.18137],[3.71123,49.17819],[3.72544,49.17352],[3.73011,49.17832],[3.75115,49.1777],[3.74877,49.15708],[3.70274,49.14145],[3.68726,49.15418],[3.65344,49.14869],[3.62225,49.1511],[3.62057,49.13925],[3.60964,49.13501],[3.61166,49.12874],[3.60002,49.12069],[3.60309,49.11467],[3.6118,49.11809],[3.63847,49.07744],[3.6238,49.07087],[3.60906,49.0731],[3.59994,49.062],[3.58771,49.05939],[3.5852,49.03887],[3.58761,49.03381],[3.61571,49.03363],[3.63133,49.03971],[3.64261,49.03701],[3.65008,49.04282],[3.66354,49.03731],[3.67772,49.01397],[3.66026,49.00426],[3.63989,49.00409],[3.62334,48.98268],[3.62121,48.96603],[3.60093,48.96634],[3.59156,48.96037],[3.60163,48.95348],[3.60255,48.94393],[3.57444,48.93902],[3.57645,48.92325],[3.56418,48.9113],[3.56002,48.91702],[3.52858,48.91214],[3.50832,48.8904],[3.50191,48.87192],[3.48183,48.86594],[3.48519,48.85191],[3.47046,48.851],[3.46071,48.83944],[3.44536,48.84323],[3.45223,48.85629],[3.44563,48.86035],[3.43035,48.86074],[3.42399,48.86738],[3.40421,48.86398],[3.40586,48.87588],[3.38143,48.87157],[3.38369,48.88891],[3.36897,48.89368],[3.3765,48.90968],[3.36831,48.92766],[3.36053,48.9184],[3.3303,48.90871],[3.31308,48.92122],[3.30475,48.94876],[3.28453,48.94053],[3.26487,48.93915],[3.24935,48.97436],[3.23122,48.97675],[3.22918,48.98842],[3.20932,48.99379],[3.19754,49.00849],[3.1674,49.0124],[3.16103,49.02423],[3.17692,49.03075],[3.18046,49.04449],[3.1909,49.04762],[3.18996,49.05257],[3.18217,49.05236],[3.17663,49.06958],[3.15358,49.08328],[3.16523,49.09965],[3.14397,49.10192],[3.13817,49.10713],[3.08098,49.11183],[3.07188,49.11755],[3.09669,49.13156],[3.09343,49.14206],[3.11123,49.13191],[3.11531,49.13908],[3.1055,49.14688],[3.12706,49.14507],[3.12493,49.14845],[3.14808,49.16075],[3.12135,49.16157],[3.116,49.16987],[3.10827,49.16637],[3.11673,49.17647],[3.11287,49.19265],[3.10074,49.1975],[3.08403,49.17274],[3.09898,49.15488],[3.09422,49.15424],[3.08157,49.16479],[3.08747,49.18751],[3.0815,49.18715],[3.08024,49.19444],[3.05677,49.19665],[3.06495,49.2047],[3.04568,49.2099],[3.03558,49.20488],[3.02373,49.21552],[3.00634,49.21539],[2.99542,49.20907],[3.00252,49.20624],[2.99668,49.20057],[3.00214,49.18795],[3.01245,49.1846],[3.02602,49.19297],[3.02576,49.1875],[3.03507,49.18361],[3.0379,49.16921],[3.02298,49.16994],[3.01627,49.18238],[2.99643,49.18663],[2.99166,49.19393],[2.98372,49.1842],[2.97161,49.18771],[2.96768,49.19178],[2.9738,49.19723],[2.96627,49.20532],[2.97065,49.21429],[2.95866,49.22696],[2.96476,49.23259],[3.00339,49.23502],[3.01494,49.23],[3.00382,49.22143],[3.01441,49.22241],[3.02167,49.21621],[3.03217,49.22163],[3.03178,49.22676],[3.03693,49.22223],[3.04191,49.23038],[3.02585,49.25993],[3.02689,49.27553],[3.03615,49.2788],[3.03763,49.28639],[3.02536,49.2879],[3.01707,49.28003],[3.02097,49.28967],[3.00506,49.29288],[2.99592,49.28673],[2.98712,49.28794],[2.9957,49.29626],[2.96786,49.30271],[2.97891,49.30579],[2.98015,49.31141],[2.96675,49.31756],[2.96844,49.32631],[2.99308,49.33292],[3.00151,49.34002],[3.02094,49.33653],[3.03633,49.32574],[3.04394,49.32875],[3.04223,49.33313],[3.07472,49.34897],[3.07903,49.37394],[3.0951,49.37654],[3.09042,49.39392],[3.0972,49.40507],[3.09313,49.43262],[3.09784,49.43723],[3.11074,49.43844],[3.12071,49.43158],[3.13188,49.43178],[3.16006,49.43927],[3.16619,49.44701],[3.10446,49.47275],[3.12381,49.48012],[3.12386,49.48633],[3.12128,49.49367],[3.10035,49.50572],[3.09633,49.5179],[3.12172,49.52075],[3.12761,49.527],[3.12592,49.5418],[3.13148,49.54338],[3.13389,49.56],[3.1261,49.57008],[3.13836,49.57597],[3.12201,49.60374],[3.09358,49.62255],[3.11277,49.63133],[3.10841,49.63692],[3.11286,49.6418],[3.10538,49.65025],[3.09645,49.65064],[3.09778,49.65668],[3.10799,49.65807],[3.1083,49.66466],[3.11727,49.66672],[3.12112,49.66022],[3.12771,49.66189],[3.12419,49.67688],[3.11435,49.68376],[3.12637,49.69665],[3.1184,49.70597],[3.11922,49.71824],[3.11359,49.72728],[3.1005,49.73261],[3.0941,49.74935],[3.10044,49.76614],[3.07822,49.76578],[3.06548,49.77045],[3.06133,49.78125],[3.08597,49.79202],[3.08784,49.8031],[3.07785,49.8127],[3.08495,49.81797],[3.07828,49.82242],[3.06072,49.8201],[3.05542,49.83227],[3.08551,49.84382],[3.07962,49.86618],[3.07022,49.87304],[3.07551,49.8785],[3.08477,49.87861],[3.08276,49.86625],[3.08755,49.8661],[3.11274,49.87794],[3.12005,49.88429],[3.11651,49.89642],[3.12381,49.90089],[3.11573,49.90848],[3.12136,49.9089],[3.12275,49.92436],[3.16465,49.94743],[3.15945,49.95219],[3.16811,49.96147],[3.16265,49.96499],[3.20304,49.98394],[3.19252,49.98887],[3.17366,49.98576],[3.17294,49.98991],[3.16495,49.98925],[3.16787,49.99503],[3.16504,49.99066],[3.1557,49.99164],[3.17296,50.01131]],[[2.99023,49.21067],[3.00276,49.21884],[2.99775,49.22358],[2.98182,49.21643],[2.99023,49.21067]]]}},{"type":"Feature","properties":{"code":"03","nom":"Allier"},"geometry":{"type":"Polygon","coordinates":[[[3.03207,46.79491],[3.04153,46.76714],[3.06676,46.74548],[3.12978,46.7272],[3.16316,46.69354],[3.19545,46.68061],[3.20443,46.67875],[3.22193,46.68523],[3.22852,46.69629],[3.25996,46.70773],[3.26979,46.71674],[3.30092,46.7163],[3.31397,46.68875],[3.34671,46.68442],[3.36575,46.6896],[3.37855,46.71238],[3.39737,46.71455],[3.41717,46.71031],[3.42182,46.71373],[3.43369,46.71223],[3.42842,46.70076],[3.43298,46.69334],[3.45305,46.69009],[3.45464,46.67531],[3.44208,46.662],[3.45729,46.65176],[3.48183,46.65067],[3.48635,46.66079],[3.51125,46.6756],[3.51442,46.68358],[3.53206,46.68879],[3.54648,46.67829],[3.56115,46.68862],[3.54821,46.70617],[3.54724,46.72143],[3.56882,46.71549],[3.57593,46.72288],[3.57731,46.71485],[3.598,46.72398],[3.57569,46.74952],[3.58865,46.76134],[3.59776,46.76203],[3.60204,46.75124],[3.62337,46.7538],[3.62959,46.74802],[3.62333,46.73824],[3.63759,46.72453],[3.63764,46.70748],[3.65066,46.70517],[3.65783,46.68516],[3.67315,46.68184],[3.66898,46.67351],[3.69695,46.66058],[3.70919,46.63533],[3.72399,46.62633],[3.71286,46.61023],[3.73732,46.60157],[3.73389,46.59512],[3.7431,46.5655],[3.73154,46.54958],[3.74185,46.53951],[3.75467,46.53602],[3.77253,46.5385],[3.78067,46.52836],[3.79324,46.52779],[3.80513,46.51932],[3.83916,46.53129],[3.84647,46.52436],[3.84187,46.51421],[3.8638,46.51274],[3.86491,46.48974],[3.89521,46.48069],[3.91016,46.49538],[3.95572,46.49168],[3.95233,46.47849],[3.97683,46.47895],[4.00081,46.46245],[3.99745,46.45026],[4.00554,46.44246],[3.98945,46.43782],[3.9961,46.42738],[3.98408,46.41963],[3.9887,46.40877],[3.97722,46.39922],[3.99161,46.36963],[3.98474,46.32973],[4.00457,46.32748],[3.98941,46.32296],[3.98981,46.31508],[3.97143,46.32151],[3.94578,46.32124],[3.94543,46.30046],[3.89722,46.29246],[3.89124,46.28525],[3.89815,46.27493],[3.87766,46.27576],[3.86763,46.26253],[3.8038,46.25807],[3.80338,46.23971],[3.78222,46.24399],[3.76957,46.2414],[3.77196,46.22865],[3.79664,46.20701],[3.78817,46.20211],[3.78897,46.18568],[3.80881,46.16464],[3.78976,46.15485],[3.80175,46.13095],[3.79349,46.1122],[3.80585,46.10777],[3.82153,46.08983],[3.80553,46.05234],[3.81543,46.01945],[3.82973,45.99924],[3.82379,45.98735],[3.79879,45.9839],[3.78714,45.97299],[3.76483,45.9761],[3.75603,45.98283],[3.75401,45.97166],[3.74179,45.96596],[3.70961,45.97413],[3.70192,45.9686],[3.70581,45.95659],[3.6934,45.94756],[3.69402,45.93073],[3.68184,45.94172],[3.67676,45.95806],[3.64161,45.96658],[3.63199,45.96107],[3.6256,45.98539],[3.59209,46.024],[3.54354,46.01315],[3.5374,46.02194],[3.52338,46.02165],[3.52531,46.01208],[3.50642,46.01696],[3.46414,46.00817],[3.46803,46.02465],[3.46183,46.03995],[3.47188,46.03918],[3.46024,46.05072],[3.45935,46.06103],[3.43369,46.06079],[3.41856,46.07367],[3.40199,46.06609],[3.38143,46.06556],[3.37237,46.05476],[3.33205,46.0441],[3.33535,46.05478],[3.31562,46.05711],[3.31623,46.06201],[3.30127,46.06097],[3.30239,46.06577],[3.24483,46.06213],[3.23365,46.06355],[3.22905,46.07051],[3.22136,46.06675],[3.21451,46.07494],[3.184,46.075],[3.17533,46.06593],[3.13091,46.0694],[3.11557,46.08071],[3.09828,46.08361],[3.10112,46.09309],[3.09062,46.11453],[3.06738,46.10281],[3.04808,46.10031],[3.03846,46.1074],[3.01428,46.10291],[3.00104,46.12031],[2.98499,46.12512],[2.97163,46.12183],[2.9624,46.13024],[2.95199,46.17133],[2.94328,46.16814],[2.91327,46.17666],[2.92074,46.19089],[2.90959,46.20349],[2.9147,46.21404],[2.94112,46.22496],[2.93516,46.22401],[2.93162,46.23289],[2.94539,46.24082],[2.92143,46.25031],[2.90437,46.24855],[2.89092,46.25361],[2.86481,46.24951],[2.85976,46.25659],[2.84497,46.2487],[2.83791,46.2512],[2.81916,46.24179],[2.82331,46.21995],[2.80876,46.19469],[2.78678,46.19865],[2.76971,46.21176],[2.75894,46.20973],[2.74922,46.21935],[2.73305,46.22332],[2.72072,46.21176],[2.7322,46.19426],[2.72192,46.18768],[2.7231,46.18152],[2.70172,46.18069],[2.67492,46.17204],[2.67638,46.15706],[2.66816,46.15477],[2.66998,46.14727],[2.66135,46.14258],[2.65496,46.12438],[2.64069,46.11848],[2.60693,46.13035],[2.59138,46.12678],[2.56538,46.14303],[2.55852,46.17495],[2.54316,46.17561],[2.52599,46.18769],[2.51462,46.23994],[2.50356,46.24692],[2.48916,46.24753],[2.47709,46.26936],[2.48076,46.28101],[2.44303,46.295],[2.43187,46.29442],[2.42802,46.28533],[2.42134,46.28462],[2.41421,46.29691],[2.4211,46.30153],[2.42066,46.31013],[2.38608,46.33197],[2.37575,46.31578],[2.36497,46.3107],[2.3549,46.32568],[2.33588,46.32329],[2.33088,46.3287],[2.32127,46.32901],[2.31158,46.34183],[2.30099,46.34223],[2.30944,46.34867],[2.30275,46.35442],[2.3169,46.35838],[2.32314,46.36738],[2.33789,46.36414],[2.33139,46.37872],[2.31547,46.3752],[2.29825,46.38411],[2.28673,46.38285],[2.27694,46.42513],[2.28335,46.44928],[2.30079,46.47237],[2.30547,46.47543],[2.32071,46.46851],[2.32787,46.47377],[2.32377,46.49011],[2.33464,46.50103],[2.3654,46.51785],[2.41695,46.52057],[2.43006,46.52654],[2.44549,46.52005],[2.48293,46.5327],[2.49695,46.53367],[2.49718,46.52152],[2.51243,46.52389],[2.51819,46.53062],[2.53076,46.52943],[2.52937,46.52327],[2.53665,46.5197],[2.61496,46.55328],[2.60328,46.56428],[2.60938,46.57133],[2.60011,46.59524],[2.58156,46.59316],[2.57778,46.60788],[2.56838,46.60938],[2.58832,46.61596],[2.58425,46.62582],[2.59665,46.63722],[2.5931,46.64658],[2.56674,46.65293],[2.57055,46.65927],[2.59777,46.66465],[2.60543,46.67121],[2.60715,46.6605],[2.62391,46.65663],[2.63382,46.67356],[2.62499,46.67314],[2.62005,46.67972],[2.62337,46.68964],[2.6396,46.69154],[2.64513,46.68725],[2.65473,46.69654],[2.67438,46.70193],[2.6716,46.70886],[2.68596,46.71435],[2.68556,46.72262],[2.69169,46.7196],[2.69612,46.72347],[2.70228,46.71817],[2.70498,46.73939],[2.7145,46.74449],[2.7186,46.74168],[2.72886,46.74849],[2.73453,46.74622],[2.75852,46.71775],[2.77035,46.72328],[2.77371,46.71823],[2.7859,46.7225],[2.79509,46.73434],[2.82749,46.73533],[2.83521,46.72801],[2.84677,46.72706],[2.84542,46.74286],[2.87702,46.76147],[2.87617,46.76845],[2.91039,46.77939],[2.90792,46.78768],[2.91327,46.79103],[2.93152,46.79575],[2.95323,46.79113],[2.9628,46.80399],[2.98238,46.80294],[2.99259,46.79708],[3.01752,46.7999],[3.02465,46.79401],[3.03207,46.79491]]]}},{"type":"Feature","properties":{"code":"04","nom":"Alpes-de-Haute-Provence"},"geometry":{"type":"Polygon","coordinates":[[[5.67604,44.19143],[5.69209,44.18648],[5.71391,44.19927],[5.73673,44.20077],[5.75107,44.20935],[5.77651,44.20553],[5.79539,44.21346],[5.81392,44.21025],[5.82857,44.20067],[5.90931,44.19047],[5.91474,44.20343],[5.87643,44.21436],[5.86002,44.24509],[5.82666,44.26251],[5.82391,44.2789],[5.83613,44.29754],[5.84758,44.30129],[5.86655,44.29584],[5.87733,44.28929],[5.88013,44.27101],[5.91319,44.24871],[5.92183,44.24841],[5.92461,44.26651],[5.913,44.26832],[5.91273,44.28873],[5.92643,44.29322],[5.92481,44.31498],[5.9118,44.31075],[5.89844,44.31571],[5.90325,44.33741],[5.91751,44.3385],[5.93736,44.35936],[5.95707,44.39738],[5.98097,44.40983],[6.0184,44.41854],[6.02631,44.43464],[6.05696,44.45198],[6.07565,44.43845],[6.07114,44.45054],[6.08284,44.46326],[6.07686,44.46929],[6.08376,44.47777],[6.10175,44.47203],[6.11602,44.47547],[6.12636,44.46814],[6.15562,44.46196],[6.15988,44.43504],[6.17502,44.43878],[6.22822,44.3817],[6.24819,44.38909],[6.26249,44.41225],[6.23277,44.46287],[6.26594,44.46602],[6.26883,44.47164],[6.29349,44.48093],[6.31186,44.46692],[6.32711,44.46346],[6.32659,44.4679],[6.33874,44.47072],[6.34827,44.49809],[6.3324,44.51],[6.35731,44.52264],[6.38511,44.49924],[6.39881,44.49416],[6.41206,44.47012],[6.42365,44.46764],[6.435,44.47508],[6.44516,44.46566],[6.45912,44.46555],[6.46856,44.45129],[6.48203,44.45401],[6.51959,44.44796],[6.5363,44.45208],[6.56244,44.44549],[6.6323,44.44692],[6.64167,44.48554],[6.6685,44.5003],[6.68331,44.53119],[6.68092,44.54103],[6.70419,44.53915],[6.7293,44.5532],[6.73718,44.55254],[6.75221,44.57048],[6.77183,44.57576],[6.769,44.58823],[6.78172,44.59477],[6.79206,44.59229],[6.80122,44.60434],[6.80891,44.60138],[6.82443,44.60888],[6.84336,44.60899],[6.8539,44.61476],[6.85842,44.62941],[6.88262,44.63044],[6.9156,44.66],[6.9396,44.65205],[6.94834,44.65482],[6.95375,44.63703],[6.96837,44.6198],[6.94926,44.61918],[6.95031,44.61004],[6.93375,44.59686],[6.93287,44.57337],[6.91358,44.56927],[6.91498,44.55884],[6.89038,44.55234],[6.87856,44.55434],[6.86984,44.53684],[6.8534,44.52881],[6.85967,44.50279],[6.87684,44.48871],[6.87737,44.48079],[6.90618,44.46766],[6.91278,44.45049],[6.94809,44.4297],[6.93331,44.42975],[6.92475,44.42235],[6.91796,44.4274],[6.89287,44.42078],[6.89518,44.37016],[6.85962,44.34417],[6.84027,44.34646],[6.8224,44.33265],[6.80892,44.33052],[6.80717,44.3214],[6.79609,44.31611],[6.79613,44.29831],[6.78649,44.28948],[6.79034,44.27234],[6.76353,44.2796],[6.75909,44.26206],[6.72399,44.24984],[6.72502,44.22628],[6.71408,44.21823],[6.7176,44.20818],[6.69808,44.18982],[6.70191,44.17831],[6.68654,44.16925],[6.69995,44.15662],[6.69804,44.14939],[6.70729,44.14436],[6.70759,44.12447],[6.7186,44.1194],[6.75648,44.07959],[6.74763,44.06479],[6.74711,44.04093],[6.7762,44.0238],[6.78873,44.02344],[6.79798,44.00533],[6.83873,43.9897],[6.83471,43.98329],[6.84569,43.97825],[6.84762,43.95438],[6.87547,43.95282],[6.88432,43.93502],[6.89829,43.92685],[6.91326,43.92777],[6.94395,43.8995],[6.88461,43.88912],[6.86458,43.90683],[6.85419,43.90706],[6.85327,43.91467],[6.83229,43.91846],[6.79859,43.90966],[6.78162,43.88355],[6.74839,43.87168],[6.67325,43.888],[6.67792,43.87912],[6.69622,43.8755],[6.70283,43.85604],[6.67823,43.85195],[6.66791,43.83061],[6.7028,43.82423],[6.71201,43.81486],[6.70606,43.80841],[6.64152,43.79547],[6.6364,43.78895],[6.62793,43.79157],[6.62372,43.80475],[6.58691,43.80532],[6.54568,43.7753],[6.54241,43.79188],[6.51728,43.80876],[6.4869,43.79171],[6.47491,43.79815],[6.45683,43.79313],[6.43881,43.79775],[6.43653,43.79183],[6.41443,43.79159],[6.41335,43.76023],[6.38354,43.73443],[6.37474,43.743],[6.35117,43.73617],[6.32628,43.74687],[6.31733,43.75791],[6.26862,43.77722],[6.25422,43.80043],[6.21671,43.79951],[6.19064,43.78017],[6.18289,43.76218],[6.15429,43.74364],[6.1297,43.73622],[6.11474,43.74614],[6.10673,43.74446],[6.07705,43.7072],[6.03513,43.69407],[6.03945,43.67865],[6.02174,43.66828],[6.01161,43.67415],[6.00574,43.68763],[5.98794,43.69506],[5.98544,43.71396],[5.97362,43.71475],[5.96458,43.7254],[5.95723,43.71892],[5.94048,43.72733],[5.93876,43.74879],[5.92747,43.75018],[5.92547,43.75691],[5.90296,43.75343],[5.90498,43.73743],[5.88455,43.72391],[5.8562,43.72358],[5.84904,43.71818],[5.84256,43.73685],[5.83117,43.74693],[5.78134,43.75566],[5.75733,43.72941],[5.74587,43.7429],[5.71695,43.75553],[5.71356,43.78112],[5.70496,43.77954],[5.68573,43.78721],[5.67448,43.80736],[5.65445,43.82511],[5.6277,43.83093],[5.60062,43.82603],[5.5746,43.83029],[5.56428,43.81973],[5.54429,43.81835],[5.54862,43.85148],[5.57348,43.86338],[5.60823,43.91477],[5.58159,43.91508],[5.56892,43.94225],[5.54499,43.93905],[5.52688,43.94753],[5.51267,43.94539],[5.50766,43.9577],[5.51765,43.9917],[5.54363,44.02596],[5.54499,44.06842],[5.50264,44.06344],[5.49879,44.11572],[5.51106,44.12411],[5.5414,44.13263],[5.55133,44.14979],[5.56882,44.14803],[5.57873,44.15208],[5.58298,44.15762],[5.56437,44.1709],[5.57619,44.18804],[5.60933,44.19071],[5.61613,44.1778],[5.63959,44.16759],[5.63114,44.15058],[5.67794,44.14638],[5.68236,44.16363],[5.64697,44.16629],[5.64327,44.17072],[5.65159,44.18958],[5.67604,44.19143]]]}},{"type":"Feature","properties":{"code":"05","nom":"Hautes-Alpes"},"geometry":{"type":"Polygon","coordinates":[[[6.26057,45.12685],[6.29355,45.10851],[6.31733,45.11199],[6.33448,45.12284],[6.36574,45.10096],[6.37467,45.08317],[6.36488,45.07017],[6.39635,45.06105],[6.40378,45.06476],[6.42278,45.06008],[6.43427,45.06359],[6.4518,45.05172],[6.48725,45.05685],[6.48049,45.09417],[6.51042,45.109],[6.52971,45.09857],[6.53916,45.09909],[6.5613,45.10531],[6.57653,45.1231],[6.59271,45.11894],[6.61555,45.12148],[6.62999,45.10933],[6.62671,45.10376],[6.63326,45.09407],[6.64676,45.08497],[6.64524,45.07564],[6.66211,45.07164],[6.65883,45.05221],[6.66949,45.04424],[6.6642,45.03385],[6.67388,45.01962],[6.72119,45.02203],[6.7454,45.0143],[6.75169,44.99663],[6.73716,44.99349],[6.73785,44.98923],[6.76347,44.97122],[6.76525,44.96197],[6.75839,44.9478],[6.74414,44.93721],[6.75797,44.93709],[6.7609,44.9332],[6.74886,44.92244],[6.75071,44.90565],[6.77118,44.90344],[6.78468,44.88975],[6.80152,44.89112],[6.80335,44.87807],[6.86324,44.85061],[6.91316,44.84499],[6.93121,44.86353],[6.97103,44.8463],[7.00125,44.84229],[7.00983,44.82599],[7.02384,44.82307],[6.9994,44.78968],[7.02229,44.77079],[7.02345,44.74003],[7.02991,44.72976],[7.04211,44.71855],[7.06602,44.71333],[7.07711,44.68092],[7.05973,44.67996],[7.03031,44.6914],[7.00471,44.68716],[6.98707,44.69014],[6.97121,44.6772],[6.96318,44.67811],[6.9588,44.66247],[6.94834,44.65482],[6.9396,44.65205],[6.9156,44.66],[6.88262,44.63044],[6.85842,44.62941],[6.8539,44.61476],[6.84336,44.60899],[6.82443,44.60888],[6.80891,44.60138],[6.80122,44.60434],[6.79206,44.59229],[6.78172,44.59477],[6.769,44.58823],[6.77183,44.57576],[6.75221,44.57048],[6.73718,44.55254],[6.7293,44.5532],[6.70419,44.53915],[6.68092,44.54103],[6.68331,44.53119],[6.6685,44.5003],[6.64167,44.48554],[6.6323,44.44692],[6.56244,44.44549],[6.5363,44.45208],[6.51959,44.44796],[6.48203,44.45401],[6.46856,44.45129],[6.45912,44.46555],[6.44516,44.46566],[6.435,44.47508],[6.42365,44.46764],[6.41206,44.47012],[6.39881,44.49416],[6.38511,44.49924],[6.35731,44.52264],[6.3324,44.51],[6.34827,44.49809],[6.33874,44.47072],[6.32659,44.4679],[6.32711,44.46346],[6.31186,44.46692],[6.29349,44.48093],[6.26883,44.47164],[6.26594,44.46602],[6.23277,44.46287],[6.26249,44.41225],[6.24819,44.38909],[6.22822,44.3817],[6.17502,44.43878],[6.15988,44.43504],[6.15562,44.46196],[6.12636,44.46814],[6.11602,44.47547],[6.10175,44.47203],[6.08376,44.47777],[6.07686,44.46929],[6.08284,44.46326],[6.07114,44.45054],[6.07565,44.43845],[6.05696,44.45198],[6.02631,44.43464],[6.0184,44.41854],[5.98097,44.40983],[5.95707,44.39738],[5.93736,44.35936],[5.91751,44.3385],[5.90325,44.33741],[5.89844,44.31571],[5.9118,44.31075],[5.92481,44.31498],[5.92643,44.29322],[5.91273,44.28873],[5.913,44.26832],[5.92461,44.26651],[5.92183,44.24841],[5.91319,44.24871],[5.88013,44.27101],[5.87733,44.28929],[5.86655,44.29584],[5.84758,44.30129],[5.83613,44.29754],[5.82391,44.2789],[5.82666,44.26251],[5.86002,44.24509],[5.87643,44.21436],[5.91474,44.20343],[5.90931,44.19047],[5.82857,44.20067],[5.81392,44.21025],[5.79539,44.21346],[5.77651,44.20553],[5.75107,44.20935],[5.73673,44.20077],[5.71391,44.19927],[5.69209,44.18648],[5.67817,44.19051],[5.68645,44.19716],[5.67602,44.21215],[5.68241,44.2343],[5.673,44.23984],[5.67299,44.24619],[5.67419,44.25639],[5.68657,44.26692],[5.67561,44.27589],[5.64678,44.26709],[5.64751,44.27248],[5.63211,44.2839],[5.63299,44.29045],[5.643,44.29381],[5.63821,44.299],[5.61615,44.30944],[5.6079,44.30667],[5.61107,44.31594],[5.63257,44.32835],[5.63082,44.33299],[5.56803,44.33217],[5.56051,44.33557],[5.54727,44.33],[5.53737,44.33353],[5.53986,44.34264],[5.52896,44.34303],[5.52137,44.35108],[5.49129,44.33786],[5.48246,44.34981],[5.46786,44.35216],[5.46255,44.36738],[5.43191,44.37099],[5.43022,44.37699],[5.44415,44.37945],[5.44303,44.39124],[5.43123,44.41425],[5.42295,44.41577],[5.4184,44.42477],[5.43672,44.4337],[5.47649,44.41972],[5.48656,44.42931],[5.49362,44.42822],[5.4983,44.43732],[5.46443,44.44789],[5.459,44.46903],[5.46773,44.47333],[5.45841,44.49939],[5.4714,44.49976],[5.47988,44.49124],[5.51609,44.49173],[5.55878,44.47307],[5.5703,44.47676],[5.60338,44.46542],[5.61174,44.4696],[5.62502,44.48457],[5.62979,44.50119],[5.6645,44.50189],[5.62737,44.53458],[5.61499,44.53282],[5.59725,44.54327],[5.60702,44.56834],[5.61536,44.57325],[5.61785,44.5839],[5.62632,44.58662],[5.63533,44.60915],[5.64719,44.61156],[5.64946,44.61937],[5.63921,44.63552],[5.64172,44.65107],[5.65446,44.65539],[5.66844,44.64837],[5.67996,44.65223],[5.72804,44.6392],[5.73865,44.64064],[5.73679,44.64975],[5.75356,44.64858],[5.74748,44.65471],[5.75394,44.66271],[5.76381,44.65557],[5.79062,44.65329],[5.79942,44.67415],[5.83044,44.69055],[5.82541,44.70147],[5.80125,44.70828],[5.81117,44.71275],[5.81768,44.73097],[5.82931,44.74161],[5.82709,44.75969],[5.84679,44.75162],[5.88181,44.74663],[5.90015,44.75832],[5.91901,44.75143],[5.93727,44.76361],[5.95112,44.75962],[5.95316,44.77131],[5.98015,44.78118],[5.97778,44.79098],[5.94952,44.80453],[5.97918,44.81858],[6.00552,44.82082],[6.01594,44.83548],[6.03021,44.8381],[6.0565,44.81581],[6.1007,44.84258],[6.11068,44.84316],[6.1329,44.8645],[6.16845,44.85225],[6.19638,44.85898],[6.24998,44.85191],[6.26941,44.87047],[6.2886,44.87406],[6.30391,44.87305],[6.32409,44.85221],[6.33632,44.84837],[6.35395,44.85348],[6.35078,44.8812],[6.3593,44.88807],[6.35299,44.92451],[6.35884,44.94128],[6.33052,44.94641],[6.32292,44.95302],[6.32954,44.96924],[6.31482,44.98018],[6.32352,44.99907],[6.3064,45.00475],[6.25343,44.99521],[6.20393,45.01247],[6.22008,45.06537],[6.24452,45.07171],[6.22885,45.10831],[6.26057,45.12685]]]}},{"type":"Feature","properties":{"code":"06","nom":"Alpes-Maritimes"},"geometry":{"type":"MultiPolygon","coordinates":[[[[7.06711,43.51365],[7.03577,43.51748],[7.03221,43.52344],[7.0636,43.5201],[7.07088,43.51736],[7.06711,43.51365]]],[[[7.04782,43.5045],[7.0371,43.5085],[7.05544,43.50782],[7.04782,43.5045]]],[[[6.88743,44.36105],[6.92257,44.35073],[6.92724,44.33242],[6.96053,44.31085],[6.95753,44.29511],[6.97022,44.29441],[6.97188,44.28362],[6.98135,44.28675],[6.99572,44.27988],[6.99663,44.25209],[7.00852,44.23524],[7.03035,44.23138],[7.03884,44.22373],[7.07681,44.23221],[7.09254,44.22025],[7.1139,44.21782],[7.1436,44.20012],[7.16274,44.20801],[7.17766,44.19725],[7.18613,44.20135],[7.19361,44.1871],[7.20068,44.18698],[7.2194,44.16847],[7.22832,44.16818],[7.23556,44.17544],[7.2409,44.17336],[7.25169,44.15608],[7.28136,44.14087],[7.31084,44.14748],[7.32121,44.14275],[7.34187,44.14585],[7.358,44.11602],[7.39289,44.12503],[7.42475,44.11193],[7.42979,44.12975],[7.46068,44.12579],[7.507,44.1444],[7.52019,44.13767],[7.53456,44.14798],[7.55459,44.14638],[7.56482,44.15517],[7.62005,44.14951],[7.63662,44.1771],[7.67783,44.17682],[7.68399,44.17153],[7.67084,44.15293],[7.67946,44.14715],[7.66656,44.13112],[7.67412,44.11827],[7.71881,44.08253],[7.71444,44.06122],[7.70508,44.05458],[7.70046,44.04073],[7.66225,44.02822],[7.67044,43.99826],[7.66374,43.98693],[7.65566,43.98519],[7.65244,43.97371],[7.64346,43.97395],[7.61081,43.95422],[7.59847,43.95736],[7.58143,43.94818],[7.56938,43.94742],[7.57115,43.92918],[7.55795,43.9176],[7.56195,43.89974],[7.51714,43.88227],[7.5115,43.88487],[7.49788,43.87165],[7.49667,43.84978],[7.5079,43.8413],[7.51872,43.8025],[7.53016,43.78805],[7.49021,43.7672],[7.48209,43.75688],[7.48683,43.749],[7.45782,43.7596],[7.44491,43.74986],[7.43082,43.74873],[7.41227,43.73439],[7.40911,43.72959],[7.41564,43.72592],[7.40575,43.71937],[7.38873,43.71963],[7.38902,43.723],[7.37272,43.71778],[7.35587,43.72073],[7.3298,43.70247],[7.33388,43.68961],[7.34974,43.68701],[7.34161,43.68259],[7.33522,43.68639],[7.3313,43.67452],[7.32412,43.67695],[7.31989,43.69031],[7.32534,43.70016],[7.31472,43.70653],[7.30402,43.68483],[7.29361,43.68663],[7.28417,43.69782],[7.28493,43.69274],[7.26243,43.69426],[7.24065,43.68777],[7.23064,43.67855],[7.2303,43.66544],[7.21162,43.64732],[7.20072,43.64521],[7.20288,43.6513],[7.19454,43.65792],[7.15698,43.65349],[7.13729,43.63634],[7.12647,43.60528],[7.13025,43.59029],[7.1218,43.58704],[7.12951,43.58343],[7.12501,43.57382],[7.14056,43.56893],[7.13465,43.55553],[7.14507,43.55165],[7.13637,43.54458],[7.119,43.54289],[7.12175,43.5595],[7.11294,43.56703],[7.09626,43.57089],[7.06941,43.563],[7.03773,43.53471],[7.03253,43.54584],[7.01657,43.55077],[6.97183,43.54545],[6.95515,43.53717],[6.93837,43.51639],[6.93783,43.50947],[6.95705,43.5008],[6.94868,43.48546],[6.9327,43.48435],[6.93373,43.48007],[6.91381,43.48277],[6.91266,43.49369],[6.88423,43.50254],[6.89638,43.52716],[6.87876,43.52917],[6.8878,43.55274],[6.90104,43.56384],[6.90824,43.56391],[6.89843,43.58156],[6.91199,43.59833],[6.89427,43.61153],[6.86651,43.60304],[6.85748,43.6108],[6.85172,43.60441],[6.81679,43.62976],[6.79874,43.62818],[6.78324,43.65362],[6.7608,43.66649],[6.76104,43.68054],[6.77435,43.69341],[6.77424,43.70364],[6.75247,43.74105],[6.74625,43.73682],[6.71498,43.73866],[6.71391,43.746],[6.7014,43.75407],[6.68271,43.75794],[6.65742,43.74872],[6.6521,43.76545],[6.64009,43.76861],[6.64596,43.77515],[6.6354,43.78566],[6.64152,43.79547],[6.69133,43.80426],[6.71201,43.81486],[6.7028,43.82423],[6.66791,43.83061],[6.67823,43.85195],[6.70283,43.85604],[6.69622,43.8755],[6.67792,43.87912],[6.67325,43.888],[6.74839,43.87168],[6.78162,43.88355],[6.79859,43.90966],[6.83229,43.91846],[6.85327,43.91467],[6.85419,43.90706],[6.86458,43.90683],[6.88461,43.88912],[6.94395,43.8995],[6.91326,43.92777],[6.89829,43.92685],[6.88432,43.93502],[6.87547,43.95282],[6.84762,43.95438],[6.84569,43.97825],[6.83471,43.98329],[6.83873,43.9897],[6.79798,44.00533],[6.78873,44.02344],[6.7762,44.0238],[6.74711,44.04093],[6.74763,44.06479],[6.75648,44.07959],[6.7186,44.1194],[6.70759,44.12447],[6.70729,44.14436],[6.69804,44.14939],[6.69995,44.15662],[6.68654,44.16925],[6.70191,44.17831],[6.69808,44.18982],[6.7176,44.20818],[6.71408,44.21823],[6.72502,44.22628],[6.72399,44.24984],[6.75909,44.26206],[6.76353,44.2796],[6.79034,44.27234],[6.78649,44.28948],[6.79613,44.29831],[6.79609,44.31611],[6.80717,44.3214],[6.80892,44.33052],[6.8224,44.33265],[6.84027,44.34646],[6.85962,44.34417],[6.88743,44.36105]]]]}},{"type":"Feature","properties":{"code":"2A","nom":"Corse-du-Sud"},"geometry":{"type":"MultiPolygon","coordinates":[[[[8.5864,41.87389],[8.59789,41.88207],[8.59421,41.87416],[8.5864,41.87389]]],[[[8.54194,42.3704],[8.54166,42.36619],[8.53514,42.37075],[8.54194,42.3704]]],[[[9.26095,41.3387],[9.25896,41.33363],[9.24912,41.34015],[9.25688,41.34767],[9.26095,41.3387]]],[[[9.27103,41.36496],[9.26656,41.36239],[9.25038,41.36856],[9.25848,41.37418],[9.2683,41.37294],[9.26586,41.36862],[9.27466,41.36852],[9.27103,41.36496]]],[[[8.57341,42.38141],[8.60164,42.36904],[8.61811,42.37491],[8.62373,42.37135],[8.6407,42.37367],[8.65005,42.36233],[8.68265,42.35946],[8.68348,42.34803],[8.7145,42.34906],[8.73027,42.33961],[8.75897,42.33814],[8.77089,42.32476],[8.78948,42.32646],[8.81992,42.31602],[8.86132,42.32993],[8.85902,42.29995],[8.87748,42.29321],[8.88623,42.28377],[8.882,42.27115],[8.90477,42.25386],[8.92317,42.25778],[8.94011,42.2372],[8.97429,42.23248],[8.99469,42.21432],[9.02164,42.20314],[9.04566,42.20692],[9.04805,42.17503],[9.05061,42.17],[9.0655,42.16669],[9.07654,42.13692],[9.07203,42.13001],[9.09387,42.11508],[9.10765,42.11526],[9.12505,42.10493],[9.13483,42.087],[9.12797,42.06645],[9.13092,42.0544],[9.15207,42.04032],[9.16153,42.02493],[9.18891,42.03143],[9.22108,42.0276],[9.21523,41.99363],[9.22656,41.97207],[9.22314,41.95047],[9.21545,41.94203],[9.23049,41.93232],[9.21328,41.91746],[9.24843,41.90992],[9.25221,41.89898],[9.23497,41.87934],[9.2275,41.85559],[9.23225,41.84979],[9.23692,41.84653],[9.24463,41.85044],[9.26844,41.83982],[9.30143,41.8449],[9.3091,41.83215],[9.31717,41.83246],[9.339,41.84657],[9.34374,41.84402],[9.37611,41.8675],[9.38593,41.86776],[9.40227,41.8587],[9.40595,41.81782],[9.39408,41.79791],[9.39985,41.78947],[9.39595,41.77444],[9.40395,41.77372],[9.40815,41.76636],[9.40138,41.71774],[9.40647,41.7137],[9.40019,41.69296],[9.38263,41.68885],[9.37231,41.67883],[9.37574,41.67062],[9.3881,41.67026],[9.38131,41.66436],[9.3868,41.66013],[9.38134,41.65099],[9.38546,41.64626],[9.37712,41.64813],[9.37042,41.63662],[9.3579,41.64097],[9.34943,41.63846],[9.34639,41.63002],[9.35333,41.62742],[9.35461,41.6166],[9.33535,41.62154],[9.32008,41.61511],[9.31629,41.61724],[9.32585,41.61828],[9.30761,41.6283],[9.30619,41.6152],[9.28784,41.60915],[9.28744,41.59883],[9.28094,41.59719],[9.28321,41.58987],[9.29602,41.5847],[9.31806,41.60486],[9.33401,41.60319],[9.34054,41.59419],[9.36863,41.59739],[9.36796,41.59124],[9.36129,41.59079],[9.34761,41.5752],[9.35017,41.56619],[9.34281,41.55937],[9.32945,41.55943],[9.31143,41.55065],[9.28763,41.53038],[9.2738,41.53091],[9.27368,41.52252],[9.28453,41.51734],[9.26821,41.50081],[9.27609,41.49591],[9.28581,41.49924],[9.28775,41.48385],[9.27566,41.47082],[9.26705,41.47071],[9.27794,41.46422],[9.27115,41.46206],[9.26644,41.46614],[9.24381,41.4468],[9.22395,41.44249],[9.22887,41.42612],[9.22392,41.41467],[9.21543,41.41442],[9.21971,41.40522],[9.24547,41.42207],[9.2651,41.42829],[9.25974,41.41366],[9.22183,41.37726],[9.22004,41.36739],[9.18035,41.3662],[9.16724,41.38559],[9.14897,41.3852],[9.15896,41.38947],[9.14277,41.38788],[9.13509,41.39453],[9.1295,41.39288],[9.13294,41.39976],[9.09846,41.39135],[9.09358,41.39386],[9.09503,41.41179],[9.10893,41.41994],[9.10435,41.42551],[9.12237,41.44149],[9.10803,41.441],[9.10654,41.44569],[9.09904,41.4428],[9.09384,41.44984],[9.0826,41.44175],[9.07012,41.44461],[9.06745,41.46554],[9.07994,41.47749],[9.06872,41.4754],[9.05494,41.46136],[9.0418,41.45681],[9.0374,41.47035],[9.02254,41.46256],[9.02547,41.46591],[9.01522,41.47247],[9.01819,41.47781],[9.003,41.47505],[8.99589,41.48531],[8.98355,41.4738],[8.97277,41.48517],[8.96578,41.48274],[8.95991,41.49193],[8.94084,41.48943],[8.93286,41.49586],[8.92003,41.48911],[8.91475,41.50721],[8.8833,41.50524],[8.89046,41.51638],[8.87781,41.52379],[8.85552,41.5179],[8.84088,41.51969],[8.85557,41.53433],[8.85328,41.54711],[8.84662,41.54089],[8.84291,41.54689],[8.82181,41.54435],[8.8084,41.55621],[8.78884,41.55725],[8.78219,41.56633],[8.78816,41.56419],[8.80262,41.57574],[8.7915,41.57926],[8.79161,41.58706],[8.78314,41.58533],[8.77415,41.59226],[8.78706,41.59731],[8.79168,41.61094],[8.78568,41.61837],[8.79472,41.62377],[8.79435,41.63269],[8.80297,41.63337],[8.80581,41.64174],[8.81205,41.63091],[8.82047,41.62967],[8.85122,41.64791],[8.87244,41.64718],[8.88125,41.67024],[8.91337,41.67977],[8.9135,41.691],[8.88624,41.68951],[8.87829,41.69597],[8.84344,41.69684],[8.81272,41.71413],[8.79521,41.70962],[8.79225,41.70121],[8.78283,41.69921],[8.78787,41.70854],[8.77115,41.7136],[8.7846,41.73225],[8.77498,41.74142],[8.7072,41.7218],[8.70456,41.73938],[8.67177,41.74369],[8.65872,41.74026],[8.65976,41.74946],[8.67331,41.75254],[8.68452,41.747],[8.70804,41.75742],[8.72801,41.7739],[8.73275,41.7796],[8.71753,41.79495],[8.71062,41.79466],[8.71083,41.80101],[8.71775,41.80392],[8.72125,41.79781],[8.73931,41.79738],[8.74895,41.81115],[8.77129,41.81124],[8.77488,41.82526],[8.78452,41.83112],[8.76384,41.84386],[8.75654,41.84088],[8.75093,41.84516],[8.78823,41.85046],[8.79028,41.86642],[8.78068,41.87368],[8.78526,41.87894],[8.77927,41.88361],[8.80331,41.89314],[8.78582,41.92027],[8.77265,41.92738],[8.76285,41.9227],[8.75238,41.93339],[8.74039,41.93131],[8.74131,41.91582],[8.73104,41.9159],[8.71944,41.90815],[8.68762,41.90898],[8.67572,41.90422],[8.64148,41.90991],[8.60661,41.89517],[8.61575,41.90276],[8.60911,41.90957],[8.6234,41.93484],[8.62077,41.93954],[8.60934,41.93948],[8.60682,41.9519],[8.59731,41.95292],[8.59208,41.9644],[8.61432,41.97154],[8.6482,41.96841],[8.66887,41.98243],[8.66824,41.99235],[8.65895,41.99151],[8.65446,41.99925],[8.65999,42.01231],[8.68507,42.02639],[8.71651,42.02962],[8.72518,42.03451],[8.72342,42.04227],[8.74133,42.04091],[8.7469,42.04877],[8.73784,42.06521],[8.71886,42.06379],[8.71477,42.08154],[8.70494,42.08754],[8.71016,42.09484],[8.70034,42.11231],[8.68915,42.1151],[8.68036,42.10534],[8.66562,42.10647],[8.65893,42.10129],[8.64701,42.12114],[8.62387,42.12263],[8.61209,42.1346],[8.57986,42.12942],[8.59371,42.14441],[8.58546,42.15173],[8.55879,42.14632],[8.5934,42.16831],[8.56114,42.1716],[8.56593,42.17767],[8.58511,42.17901],[8.57792,42.18866],[8.58139,42.20594],[8.56772,42.20452],[8.57002,42.21314],[8.57712,42.21434],[8.56713,42.21958],[8.57385,42.22797],[8.56184,42.23182],[8.55164,42.22746],[8.53971,42.23713],[8.57301,42.23857],[8.58034,42.24513],[8.5924,42.24496],[8.61672,42.25546],[8.63938,42.253],[8.64391,42.25759],[8.68738,42.26272],[8.6928,42.26829],[8.68719,42.28201],[8.67431,42.2838],[8.67437,42.29422],[8.66047,42.30235],[8.64128,42.29952],[8.62896,42.30458],[8.62799,42.31208],[8.60726,42.30653],[8.60165,42.30896],[8.59782,42.31874],[8.62822,42.33201],[8.62893,42.33911],[8.61772,42.34139],[8.61487,42.34959],[8.61266,42.34627],[8.60025,42.353],[8.59038,42.35236],[8.56462,42.333],[8.55413,42.33335],[8.55932,42.34466],[8.55127,42.34636],[8.55773,42.36005],[8.55514,42.3652],[8.54322,42.36729],[8.54462,42.37524],[8.55029,42.37905],[8.55363,42.37102],[8.56918,42.36941],[8.57834,42.37527],[8.57341,42.38141]]]]}},{"type":"Feature","properties":{"code":"2B","nom":"Haute-Corse"},"geometry":{"type":"MultiPolygon","coordinates":[[[[9.40227,41.8587],[9.38593,41.86776],[9.37611,41.8675],[9.34374,41.84402],[9.339,41.84657],[9.31717,41.83246],[9.3091,41.83215],[9.30143,41.8449],[9.26844,41.83982],[9.24463,41.85044],[9.23692,41.84653],[9.23225,41.84979],[9.2275,41.85559],[9.23497,41.87934],[9.25221,41.89898],[9.24843,41.90992],[9.21328,41.91746],[9.23049,41.93232],[9.21545,41.94203],[9.22314,41.95047],[9.22656,41.97207],[9.21523,41.99363],[9.22108,42.0276],[9.18891,42.03143],[9.16153,42.02493],[9.15207,42.04032],[9.13092,42.0544],[9.12797,42.06645],[9.13483,42.087],[9.12505,42.10493],[9.10765,42.11526],[9.09387,42.11508],[9.07203,42.13001],[9.07654,42.13692],[9.0655,42.16669],[9.05061,42.17],[9.04805,42.17503],[9.04566,42.20692],[9.02164,42.20314],[8.99469,42.21432],[8.97429,42.23248],[8.94011,42.2372],[8.92317,42.25778],[8.90477,42.25386],[8.882,42.27115],[8.88623,42.28377],[8.87748,42.29321],[8.85902,42.29995],[8.86132,42.32993],[8.81992,42.31602],[8.78948,42.32646],[8.77089,42.32476],[8.75897,42.33814],[8.73027,42.33961],[8.7145,42.34906],[8.68348,42.34803],[8.68265,42.35946],[8.65005,42.36233],[8.6407,42.37367],[8.62373,42.37135],[8.61811,42.37491],[8.60164,42.36904],[8.57341,42.38141],[8.60791,42.38612],[8.60196,42.39736],[8.61169,42.4032],[8.60174,42.40866],[8.60859,42.41131],[8.60611,42.41645],[8.62052,42.41739],[8.62202,42.42154],[8.6458,42.41315],[8.65682,42.4168],[8.66372,42.43447],[8.64822,42.44228],[8.66834,42.44478],[8.66467,42.45685],[8.67966,42.47006],[8.6748,42.47625],[8.65118,42.47357],[8.65018,42.47886],[8.6636,42.49045],[8.66667,42.51559],[8.67442,42.5187],[8.68257,42.51482],[8.69934,42.5268],[8.70672,42.52319],[8.7202,42.52542],[8.71026,42.53573],[8.72268,42.54515],[8.7166,42.54904],[8.72282,42.55678],[8.71547,42.56378],[8.71837,42.57057],[8.70663,42.57041],[8.72527,42.58445],[8.72704,42.56161],[8.75576,42.57139],[8.76231,42.56967],[8.7562,42.56373],[8.76044,42.55857],[8.78105,42.55652],[8.80481,42.57089],[8.79795,42.5831],[8.8111,42.59167],[8.80263,42.60257],[8.82767,42.60613],[8.8324,42.60149],[8.85058,42.61184],[8.86739,42.6084],[8.88332,42.6252],[8.87916,42.62873],[8.91147,42.62896],[8.92247,42.63941],[8.93434,42.63899],[8.93066,42.64531],[8.94669,42.63364],[9.00277,42.64414],[9.01495,42.64136],[9.0285,42.65271],[9.05932,42.66007],[9.0536,42.68098],[9.06006,42.68286],[9.0571,42.69548],[9.07024,42.69223],[9.08427,42.70555],[9.08582,42.71489],[9.10042,42.71562],[9.10682,42.72451],[9.11804,42.72452],[9.12456,42.73164],[9.13512,42.72853],[9.1629,42.73668],[9.19806,42.72498],[9.2211,42.73567],[9.23308,42.72033],[9.25779,42.7179],[9.254,42.70621],[9.26032,42.70018],[9.26898,42.70156],[9.28442,42.67634],[9.29332,42.67432],[9.30099,42.67827],[9.30026,42.68333],[9.32283,42.69701],[9.32279,42.71702],[9.34512,42.73639],[9.33751,42.76382],[9.34158,42.79757],[9.30955,42.83378],[9.3403,42.86567],[9.32905,42.87379],[9.32204,42.90014],[9.36147,42.92476],[9.34969,42.92882],[9.35905,42.9454],[9.3471,42.95277],[9.35054,42.96827],[9.34016,42.99306],[9.35769,43.00727],[9.37561,43.00505],[9.38318,43.01019],[9.40839,43.00554],[9.4199,43.01161],[9.44099,43.00111],[9.44375,42.9934],[9.46355,42.9864],[9.45159,42.96176],[9.46935,42.93633],[9.46904,42.90509],[9.47815,42.88046],[9.47286,42.87437],[9.48145,42.86743],[9.48565,42.85087],[9.48015,42.83715],[9.49279,42.80588],[9.49128,42.79432],[9.46671,42.76061],[9.44619,42.67358],[9.4622,42.64012],[9.51911,42.57895],[9.53269,42.54802],[9.52962,42.48944],[9.54112,42.46039],[9.54349,42.4293],[9.53224,42.37191],[9.55996,42.28231],[9.55251,42.23312],[9.55912,42.1967],[9.54998,42.10416],[9.41705,41.96123],[9.41368,41.91509],[9.39702,41.87462],[9.40227,41.8587]]]]}},{"type":"Feature","properties":{"code":"07","nom":"Ard\xE8che"},"geometry":{"type":"Polygon","coordinates":[[[4.48313,45.23645],[4.4879,45.23218],[4.50845,45.2313],[4.51316,45.23477],[4.5094,45.24479],[4.52923,45.23978],[4.53136,45.23417],[4.54055,45.23475],[4.53831,45.24263],[4.5604,45.24779],[4.5848,45.24407],[4.60679,45.25463],[4.60603,45.26279],[4.59065,45.27344],[4.5986,45.28949],[4.62283,45.29141],[4.61447,45.3106],[4.64057,45.31698],[4.64315,45.32925],[4.68013,45.34626],[4.69802,45.34499],[4.71596,45.35146],[4.732,45.36381],[4.756,45.36567],[4.77256,45.35486],[4.77358,45.34649],[4.76198,45.34241],[4.76054,45.32746],[4.80946,45.28985],[4.81026,45.26391],[4.80134,45.24289],[4.81257,45.20431],[4.80481,45.19403],[4.81215,45.18232],[4.81053,45.16686],[4.8291,45.15669],[4.80446,45.1332],[4.80323,45.12502],[4.82996,45.09731],[4.82987,45.07185],[4.85448,45.06344],[4.86075,45.05543],[4.84034,45.03578],[4.84557,45.0201],[4.83621,45.00788],[4.85126,44.99468],[4.86017,44.96586],[4.87568,44.95521],[4.88659,44.93665],[4.86816,44.90911],[4.85586,44.90136],[4.86094,44.8737],[4.84477,44.85825],[4.84438,44.84601],[4.82016,44.83623],[4.82251,44.81709],[4.79985,44.81296],[4.79567,44.79377],[4.76094,44.77171],[4.7693,44.7602],[4.759,44.74799],[4.76329,44.71725],[4.78111,44.68283],[4.77907,44.6547],[4.7404,44.60239],[4.74151,44.58927],[4.71027,44.58155],[4.70476,44.56188],[4.69816,44.56434],[4.69277,44.55854],[4.69364,44.54223],[4.70741,44.5339],[4.6882,44.5055],[4.68895,44.49293],[4.69987,44.47938],[4.70038,44.45991],[4.69365,44.4435],[4.66738,44.43066],[4.66395,44.39647],[4.64895,44.37246],[4.65367,44.29728],[4.64922,44.27036],[4.63493,44.28482],[4.616,44.27818],[4.60453,44.29138],[4.5587,44.30244],[4.54447,44.32077],[4.54879,44.32572],[4.53224,44.32267],[4.52288,44.33042],[4.51275,44.32809],[4.50368,44.34419],[4.49902,44.33825],[4.48153,44.33691],[4.47494,44.34202],[4.45422,44.33963],[4.44842,44.29661],[4.45321,44.29787],[4.44042,44.28342],[4.43465,44.28326],[4.43311,44.29113],[4.39979,44.28795],[4.38959,44.30109],[4.40326,44.33358],[4.38818,44.34717],[4.36772,44.33939],[4.32577,44.33832],[4.32995,44.33212],[4.31663,44.32069],[4.29415,44.31334],[4.29043,44.31673],[4.28941,44.29321],[4.27792,44.27522],[4.25522,44.26498],[4.21525,44.29067],[4.1872,44.29931],[4.17799,44.31774],[4.16497,44.31215],[4.14287,44.31335],[4.1403,44.32788],[4.13005,44.33683],[4.11576,44.32687],[4.09643,44.33474],[4.08514,44.32852],[4.07371,44.32986],[4.05145,44.31732],[4.03698,44.32816],[4.05353,44.33867],[4.05757,44.36346],[4.04137,44.39353],[4.04783,44.3975],[4.05634,44.39259],[4.06453,44.39456],[4.06844,44.40511],[4.03549,44.42009],[4.04646,44.43271],[4.0376,44.44572],[4.02321,44.44558],[4.01449,44.45471],[3.99816,44.4598],[3.98765,44.47278],[3.9881,44.50419],[3.96966,44.52889],[3.95148,44.57059],[3.93665,44.57382],[3.92946,44.56875],[3.91702,44.57912],[3.91828,44.58848],[3.90517,44.59271],[3.9071,44.61059],[3.894,44.6137],[3.89475,44.65113],[3.88288,44.65768],[3.87882,44.67393],[3.86954,44.67825],[3.8843,44.69758],[3.86965,44.6971],[3.87256,44.70723],[3.86151,44.71202],[3.86686,44.72842],[3.8782,44.73231],[3.87752,44.73745],[3.86253,44.74386],[3.86946,44.7548],[3.89876,44.75265],[3.90021,44.76415],[3.92538,44.77012],[3.91077,44.77873],[3.92254,44.7774],[3.92621,44.7912],[3.937,44.79542],[3.94495,44.82456],[3.96318,44.82975],[3.9703,44.81791],[3.98854,44.8118],[3.98248,44.83263],[3.99074,44.83391],[4.00039,44.81931],[4.00528,44.83802],[4.0134,44.83682],[4.01446,44.8292],[4.02652,44.83114],[4.02917,44.83763],[4.02005,44.84586],[4.03396,44.87159],[4.05626,44.87292],[4.07134,44.86666],[4.11658,44.8789],[4.13268,44.8736],[4.15692,44.87341],[4.17948,44.88651],[4.18219,44.90801],[4.21657,44.93357],[4.22732,44.96579],[4.23599,44.9704],[4.25314,44.9589],[4.3139,44.97351],[4.30792,44.98552],[4.28983,44.99731],[4.29749,45.01913],[4.30446,45.01857],[4.30154,45.02609],[4.31127,45.02462],[4.31029,45.03152],[4.35211,45.02796],[4.35618,45.03361],[4.37907,45.03617],[4.38172,45.04158],[4.37775,45.05483],[4.35961,45.05568],[4.34604,45.06884],[4.34701,45.07683],[4.35976,45.08017],[4.35708,45.08687],[4.36693,45.08896],[4.35922,45.09921],[4.37224,45.10633],[4.38458,45.10107],[4.38797,45.10541],[4.39957,45.10476],[4.40019,45.11839],[4.37746,45.12257],[4.36947,45.12855],[4.37652,45.13613],[4.37394,45.14396],[4.39666,45.1391],[4.41417,45.14158],[4.42298,45.13727],[4.43169,45.12831],[4.42629,45.11792],[4.43604,45.10874],[4.44124,45.11139],[4.43794,45.12198],[4.4564,45.11908],[4.44324,45.14537],[4.44846,45.16319],[4.45926,45.17502],[4.47254,45.17941],[4.48056,45.19546],[4.47658,45.21191],[4.48777,45.21634],[4.49066,45.22359],[4.48313,45.23645]]]}},{"type":"Feature","properties":{"code":"08","nom":"Ardennes"},"geometry":{"type":"Polygon","coordinates":[[[4.23316,49.95775],[4.26931,49.96531],[4.2973,49.96458],[4.30874,49.9697],[4.33742,49.96206],[4.35012,49.95203],[4.3815,49.95423],[4.39169,49.94744],[4.41843,49.94698],[4.44694,49.9375],[4.48161,49.94785],[4.52326,49.95041],[4.54224,49.9693],[4.56425,49.97014],[4.58208,49.98357],[4.63318,49.98706],[4.66622,49.99666],[4.69358,49.99552],[4.68498,50.00704],[4.68465,50.02724],[4.69967,50.05356],[4.6959,50.05908],[4.68631,50.05752],[4.68018,50.06645],[4.70208,50.09553],[4.75135,50.11174],[4.74781,50.12229],[4.75596,50.12164],[4.76216,50.1364],[4.80581,50.15261],[4.82507,50.16912],[4.82429,50.16073],[4.83224,50.15323],[4.87601,50.15391],[4.88124,50.14134],[4.89497,50.14036],[4.89489,50.1346],[4.87838,50.13087],[4.86718,50.1187],[4.87366,50.10754],[4.86792,50.09673],[4.87596,50.09417],[4.87213,50.08773],[4.85089,50.10132],[4.83765,50.09289],[4.84632,50.08492],[4.84055,50.08287],[4.83793,50.06711],[4.81931,50.06588],[4.81876,50.06108],[4.82903,50.05713],[4.82727,50.05011],[4.84042,50.04632],[4.84132,50.04],[4.81938,50.0258],[4.81894,49.99514],[4.80378,49.98264],[4.7933,49.9821],[4.79011,49.97002],[4.79092,49.9584],[4.84711,49.94902],[4.85905,49.93185],[4.88078,49.92229],[4.88998,49.90927],[4.87741,49.9045],[4.88727,49.89866],[4.87737,49.89425],[4.86308,49.86726],[4.8512,49.86499],[4.8576,49.84182],[4.86729,49.84195],[4.86879,49.82309],[4.87693,49.8194],[4.86514,49.81318],[4.86266,49.80167],[4.85148,49.79355],[4.86353,49.78901],[4.87912,49.79299],[4.90574,49.78548],[4.93093,49.78685],[4.95712,49.8017],[4.96261,49.79785],[4.96894,49.80176],[4.99878,49.79963],[5.01355,49.78009],[5.06138,49.76687],[5.06318,49.76193],[5.0935,49.76373],[5.11851,49.73834],[5.12564,49.71238],[5.1393,49.71359],[5.14364,49.7093],[5.15132,49.71752],[5.15822,49.71682],[5.1653,49.71197],[5.16621,49.69292],[5.19882,49.69212],[5.20517,49.69614],[5.21817,49.68746],[5.23162,49.69099],[5.24285,49.68598],[5.25581,49.69407],[5.27067,49.69532],[5.332,49.65478],[5.30491,49.63006],[5.3135,49.6108],[5.3402,49.61686],[5.34725,49.63135],[5.36351,49.62301],[5.39354,49.61709],[5.37811,49.59302],[5.35133,49.58841],[5.34016,49.59477],[5.30817,49.56285],[5.31177,49.55929],[5.28511,49.55333],[5.2763,49.5443],[5.26271,49.54182],[5.25419,49.55554],[5.23468,49.56224],[5.23558,49.56919],[5.20854,49.57435],[5.19751,49.56672],[5.18412,49.5696],[5.16275,49.56252],[5.14431,49.59092],[5.11379,49.59187],[5.10457,49.57585],[5.11311,49.56062],[5.10839,49.55529],[5.09608,49.55779],[5.08804,49.54492],[5.08981,49.53486],[5.10038,49.53717],[5.09931,49.53157],[5.07878,49.50947],[5.06175,49.50749],[5.0595,49.50057],[5.08351,49.48412],[5.08296,49.47036],[5.09505,49.45964],[5.11122,49.45754],[5.10028,49.44088],[5.10488,49.42588],[5.11484,49.41898],[5.07674,49.40307],[5.0881,49.40207],[5.08578,49.39879],[5.10415,49.38978],[5.10115,49.37815],[5.08492,49.36981],[5.06147,49.37198],[5.05334,49.36574],[5.05565,49.35866],[5.02631,49.33623],[5.03815,49.3162],[5.02545,49.31043],[5.03581,49.3074],[5.03981,49.2952],[5.05425,49.29494],[5.05941,49.28987],[5.04904,49.28531],[5.05118,49.27405],[5.03359,49.27069],[5.02575,49.27416],[4.99644,49.26404],[4.99942,49.25947],[4.96754,49.24927],[4.95099,49.23687],[4.94588,49.24378],[4.92158,49.25211],[4.93427,49.25957],[4.91692,49.26041],[4.92398,49.26654],[4.89276,49.25812],[4.87738,49.26268],[4.88305,49.25652],[4.86185,49.23986],[4.86646,49.22657],[4.83675,49.2355],[4.83081,49.23337],[4.82582,49.23672],[4.82985,49.24307],[4.81713,49.24146],[4.81542,49.24985],[4.79072,49.24108],[4.77313,49.2451],[4.74423,49.24147],[4.72701,49.25353],[4.7038,49.25091],[4.70381,49.2554],[4.68893,49.25747],[4.6705,49.24124],[4.63426,49.2318],[4.61865,49.23864],[4.60801,49.26933],[4.59214,49.27345],[4.58988,49.28096],[4.59792,49.29145],[4.58369,49.2909],[4.57587,49.29665],[4.55708,49.29532],[4.51605,49.28017],[4.48384,49.28078],[4.44722,49.27254],[4.43954,49.2801],[4.42258,49.28064],[4.41669,49.28781],[4.39617,49.29218],[4.37562,49.32381],[4.34384,49.31398],[4.34617,49.32225],[4.33751,49.32596],[4.3083,49.32665],[4.28799,49.34916],[4.29405,49.35266],[4.27714,49.35146],[4.2584,49.36352],[4.24832,49.38226],[4.21367,49.38787],[4.20131,49.38378],[4.19143,49.40104],[4.07691,49.40161],[4.04797,49.40564],[4.0495,49.41561],[4.0423,49.41665],[4.03766,49.43826],[4.05033,49.44761],[4.05213,49.44381],[4.06791,49.44488],[4.04237,49.46869],[4.04071,49.50853],[4.05756,49.50818],[4.06186,49.51257],[4.05662,49.52104],[4.06215,49.52272],[4.07584,49.51835],[4.0758,49.54146],[4.04876,49.54527],[4.07657,49.57113],[4.06333,49.57122],[4.05945,49.57614],[4.05793,49.59155],[4.06648,49.59443],[4.04729,49.59953],[4.02461,49.62126],[4.03791,49.62292],[4.04108,49.63827],[4.05568,49.63434],[4.06897,49.63751],[4.09916,49.62835],[4.10221,49.6326],[4.11575,49.63292],[4.12555,49.65107],[4.12702,49.67792],[4.14859,49.67832],[4.14418,49.68854],[4.18519,49.69888],[4.19145,49.71601],[4.23191,49.73045],[4.2259,49.73285],[4.22971,49.74661],[4.2496,49.75711],[4.24283,49.76714],[4.22861,49.77311],[4.2139,49.77111],[4.20592,49.77819],[4.22668,49.79303],[4.21899,49.80025],[4.22175,49.80452],[4.21427,49.80611],[4.22359,49.83411],[4.22971,49.83607],[4.23297,49.84841],[4.24876,49.85675],[4.25276,49.86965],[4.2557,49.90321],[4.23497,49.90399],[4.23339,49.90939],[4.21696,49.91439],[4.22072,49.93721],[4.23316,49.95775]]]}},{"type":"Feature","properties":{"code":"09","nom":"Ari\xE8ge"},"geometry":{"type":"Polygon","coordinates":[[[1.68842,43.27355],[1.70215,43.25708],[1.69499,43.24699],[1.7051,43.24589],[1.70214,43.24042],[1.72384,43.22452],[1.72551,43.21194],[1.70819,43.19824],[1.71133,43.18669],[1.74087,43.18411],[1.74463,43.17611],[1.78064,43.15982],[1.7836,43.1512],[1.79276,43.15912],[1.82477,43.14581],[1.84942,43.14602],[1.84161,43.15534],[1.85196,43.16061],[1.85663,43.14451],[1.87675,43.14284],[1.88008,43.14713],[1.88091,43.12679],[1.89069,43.12544],[1.89372,43.11541],[1.90233,43.13025],[1.91417,43.13355],[1.92735,43.12949],[1.928,43.12419],[1.94915,43.12107],[1.95578,43.08545],[1.94973,43.08003],[1.95685,43.08028],[1.96386,43.06918],[1.943,43.0674],[1.94076,43.05295],[1.95086,43.0466],[1.9606,43.05044],[1.97308,43.04616],[1.985,43.03261],[1.98469,43.0224],[1.97086,43.00957],[1.98677,43.00255],[1.98496,42.96727],[2.00594,42.96219],[1.9949,42.95298],[1.97996,42.9609],[1.95758,42.96425],[1.95559,42.9583],[1.93645,42.95397],[1.93373,42.93914],[1.98057,42.92958],[1.99193,42.9051],[1.98477,42.903],[1.98101,42.87842],[1.98692,42.87101],[1.94566,42.8562],[1.87589,42.85274],[1.8761,42.84007],[1.86024,42.82761],[1.85951,42.82023],[1.89609,42.80867],[1.92884,42.77495],[1.90938,42.76921],[1.91361,42.75788],[1.92982,42.7552],[1.95163,42.73669],[2.00384,42.73348],[2.01448,42.73973],[2.02543,42.73899],[2.03142,42.74652],[2.04163,42.74633],[2.05641,42.756],[2.08629,42.7518],[2.09217,42.73466],[2.13955,42.7123],[2.14666,42.70138],[2.15971,42.70221],[2.16786,42.69618],[2.176,42.68145],[2.16605,42.66392],[2.15129,42.66196],[2.12784,42.67227],[2.10897,42.66386],[2.0853,42.66678],[2.06088,42.66168],[2.04702,42.66359],[2.04327,42.6575],[2.02763,42.65251],[1.99856,42.66133],[1.97176,42.61692],[1.95012,42.61774],[1.93339,42.60482],[1.92666,42.60943],[1.90729,42.60863],[1.90018,42.6149],[1.89127,42.59331],[1.87423,42.59],[1.87449,42.58141],[1.86432,42.57899],[1.86038,42.58401],[1.83706,42.58454],[1.79601,42.57148],[1.78613,42.57362],[1.78094,42.5826],[1.76074,42.58092],[1.72612,42.58969],[1.73607,42.61715],[1.71411,42.61461],[1.6836,42.62486],[1.6644,42.61904],[1.63716,42.6303],[1.60205,42.62548],[1.57978,42.63753],[1.57489,42.64803],[1.54925,42.65578],[1.51891,42.64548],[1.50061,42.64515],[1.49375,42.65321],[1.47877,42.65165],[1.46834,42.63082],[1.47656,42.61302],[1.45704,42.60229],[1.43783,42.60321],[1.4207,42.62473],[1.41366,42.65552],[1.40537,42.65721],[1.39664,42.66805],[1.38778,42.66837],[1.38933,42.68679],[1.35124,42.70266],[1.35738,42.71941],[1.33835,42.71857],[1.33527,42.72404],[1.32538,42.72422],[1.30937,42.71741],[1.25316,42.71463],[1.24722,42.72249],[1.22911,42.72772],[1.21674,42.72002],[1.18884,42.71731],[1.16593,42.70871],[1.13327,42.72807],[1.12808,42.75538],[1.1093,42.7657],[1.10698,42.77229],[1.08645,42.77846],[1.07908,42.78828],[1.07335,42.78236],[1.0468,42.78076],[1.04167,42.78614],[1.00559,42.7908],[0.98649,42.78652],[0.96013,42.80574],[0.92612,42.7891],[0.88507,42.8133],[0.86141,42.821],[0.84821,42.86533],[0.83506,42.87236],[0.844,42.88976],[0.82687,42.91627],[0.84463,42.92596],[0.85774,42.92353],[0.88364,42.93129],[0.87491,42.95778],[0.90557,42.9575],[0.92803,42.96669],[0.95207,42.96637],[0.97624,42.97309],[1.00324,43.00506],[1.02239,43.0102],[1.01346,43.0096],[1.0064,43.02036],[0.98685,43.0254],[0.98427,43.04445],[0.99303,43.0396],[0.99431,43.04588],[0.98406,43.05093],[0.98558,43.06544],[0.97896,43.07258],[0.99592,43.07227],[1.00646,43.08212],[0.99094,43.09215],[1.00424,43.10446],[1.00207,43.11362],[1.03605,43.0993],[1.05062,43.11932],[1.05227,43.13379],[1.04686,43.13669],[1.05354,43.14545],[1.05997,43.13846],[1.08798,43.13383],[1.08984,43.14181],[1.11276,43.14458],[1.12404,43.15596],[1.14511,43.14386],[1.14543,43.13782],[1.16597,43.1303],[1.17498,43.14097],[1.20823,43.11911],[1.22357,43.08593],[1.26185,43.09165],[1.2602,43.10923],[1.28093,43.11061],[1.28919,43.12292],[1.30272,43.12259],[1.27387,43.14839],[1.26235,43.14612],[1.21896,43.15263],[1.21398,43.16244],[1.22773,43.174],[1.23213,43.18827],[1.24367,43.18956],[1.25105,43.18341],[1.27407,43.19623],[1.29628,43.18928],[1.30572,43.19491],[1.3205,43.18992],[1.32961,43.19702],[1.32782,43.20456],[1.34549,43.21224],[1.36849,43.20924],[1.37437,43.21375],[1.38343,43.22868],[1.37376,43.2447],[1.34027,43.24415],[1.33588,43.24987],[1.31842,43.25115],[1.33206,43.25721],[1.33067,43.26256],[1.29395,43.26366],[1.30195,43.2709],[1.29253,43.28837],[1.30255,43.28625],[1.30513,43.2982],[1.31803,43.29589],[1.33231,43.31564],[1.37302,43.31014],[1.36386,43.30773],[1.37774,43.29618],[1.37626,43.28852],[1.40194,43.27761],[1.42902,43.25425],[1.41611,43.22603],[1.43427,43.21658],[1.46761,43.20884],[1.48735,43.22735],[1.50768,43.22147],[1.50427,43.23283],[1.49335,43.23793],[1.50433,43.25034],[1.48943,43.25842],[1.49722,43.29178],[1.5066,43.28617],[1.51235,43.29325],[1.51759,43.28942],[1.51873,43.26917],[1.54621,43.27738],[1.56501,43.25333],[1.57332,43.2619],[1.5675,43.26983],[1.57204,43.27621],[1.58253,43.26884],[1.60205,43.26597],[1.60692,43.25978],[1.63733,43.25548],[1.63508,43.2371],[1.6555,43.24393],[1.65001,43.26104],[1.67361,43.28134],[1.68842,43.27355]]]}},{"type":"Feature","properties":{"code":"10","nom":"Aube"},"geometry":{"type":"Polygon","coordinates":[[[3.41479,48.39027],[3.4221,48.41619],[3.4025,48.41517],[3.41183,48.42131],[3.39167,48.42325],[3.39515,48.43682],[3.40494,48.43941],[3.40648,48.45245],[3.39438,48.46274],[3.39964,48.46768],[3.38336,48.47944],[3.40507,48.48855],[3.40966,48.48569],[3.42044,48.49174],[3.43464,48.49025],[3.42355,48.51481],[3.4054,48.52801],[3.41424,48.53347],[3.45695,48.52963],[3.48175,48.54145],[3.47909,48.54552],[3.48589,48.54727],[3.47638,48.55208],[3.47423,48.56449],[3.46552,48.57049],[3.49318,48.59025],[3.51586,48.58978],[3.50321,48.60456],[3.53462,48.61035],[3.54084,48.61604],[3.55703,48.61586],[3.55561,48.62028],[3.56322,48.61322],[3.56259,48.60262],[3.57989,48.60486],[3.58259,48.58546],[3.5927,48.58763],[3.60424,48.57245],[3.62121,48.58025],[3.62627,48.57765],[3.63344,48.56862],[3.62873,48.56229],[3.63355,48.54178],[3.64402,48.54066],[3.64364,48.53626],[3.65061,48.53924],[3.66161,48.53472],[3.68801,48.53996],[3.70419,48.53348],[3.73842,48.53832],[3.7661,48.52808],[3.79804,48.52911],[3.8259,48.51517],[3.8514,48.52338],[3.86558,48.53793],[3.85861,48.55818],[3.86496,48.56817],[3.85512,48.57279],[3.85386,48.58023],[3.87165,48.58121],[3.90005,48.57484],[3.90842,48.60175],[3.92084,48.60643],[3.94924,48.60343],[3.96845,48.63167],[3.97014,48.62691],[3.97867,48.62639],[3.98471,48.65338],[4.0017,48.66388],[4.03005,48.65914],[4.04705,48.66199],[4.05346,48.66851],[4.0582,48.66627],[4.06904,48.67915],[4.06282,48.68208],[4.06496,48.68699],[4.07979,48.70112],[4.13109,48.68615],[4.16526,48.70763],[4.23304,48.70231],[4.24311,48.71667],[4.26405,48.70605],[4.29938,48.71459],[4.32559,48.70028],[4.32289,48.68366],[4.33425,48.67524],[4.32282,48.66385],[4.32839,48.65629],[4.31733,48.65166],[4.33438,48.63248],[4.31492,48.61622],[4.33063,48.60196],[4.34958,48.59766],[4.39741,48.56393],[4.49393,48.53875],[4.51104,48.54782],[4.52197,48.54505],[4.52121,48.53988],[4.52854,48.54042],[4.52563,48.52815],[4.54541,48.52525],[4.54883,48.53661],[4.56831,48.54819],[4.61504,48.55374],[4.64134,48.55388],[4.63492,48.5515],[4.63774,48.54186],[4.66978,48.53459],[4.67662,48.51748],[4.65814,48.50591],[4.65347,48.47055],[4.62781,48.46864],[4.62935,48.46115],[4.67845,48.44053],[4.67778,48.43213],[4.68953,48.42469],[4.68176,48.41761],[4.69355,48.4152],[4.70836,48.40118],[4.70015,48.39595],[4.7053,48.39085],[4.71715,48.39564],[4.76019,48.38761],[4.75458,48.36655],[4.77865,48.35618],[4.79433,48.35665],[4.81555,48.34481],[4.83249,48.34623],[4.84147,48.33946],[4.81422,48.32301],[4.82521,48.31234],[4.82628,48.30224],[4.83754,48.30392],[4.85085,48.29625],[4.84239,48.28357],[4.86162,48.26636],[4.85712,48.25999],[4.84499,48.2572],[4.84811,48.2511],[4.83946,48.23748],[4.84782,48.23896],[4.85387,48.22876],[4.83525,48.22106],[4.84172,48.21435],[4.86355,48.20791],[4.86442,48.19921],[4.84708,48.17992],[4.8506,48.17607],[4.83545,48.16173],[4.83699,48.15149],[4.85237,48.14274],[4.8286,48.12908],[4.83439,48.10516],[4.80427,48.10481],[4.73187,48.11944],[4.72416,48.10624],[4.7041,48.10011],[4.70613,48.08951],[4.65907,48.0809],[4.66074,48.07715],[4.69048,48.07269],[4.71101,48.04992],[4.72315,48.04576],[4.70504,48.02773],[4.71453,48.0212],[4.69855,48.02368],[4.67323,48.01505],[4.66551,48.02079],[4.65584,48.01747],[4.64768,48.02568],[4.62195,48.02435],[4.61681,48.03137],[4.57863,48.02909],[4.54942,48.00446],[4.53577,48.00657],[4.54093,47.99212],[4.55706,47.98187],[4.55997,47.97142],[4.55424,47.96748],[4.49331,47.96818],[4.44696,47.9562],[4.4179,47.96846],[4.34321,47.95586],[4.3128,47.9625],[4.29792,47.9497],[4.30287,47.93851],[4.29342,47.92568],[4.27374,47.92348],[4.24546,47.92975],[4.22215,47.9497],[4.22596,47.97194],[4.20242,47.973],[4.19281,47.9646],[4.20268,47.95981],[4.21307,47.9619],[4.20312,47.95917],[4.20783,47.9466],[4.20188,47.94116],[4.18539,47.94025],[4.18425,47.95542],[4.16633,47.9598],[4.14017,47.94275],[4.14184,47.93711],[4.13038,47.93679],[4.10961,47.92604],[4.10706,47.92981],[4.09209,47.9282],[4.0897,47.94501],[4.06094,47.9457],[4.05888,47.93171],[4.04481,47.92512],[4.03128,47.93318],[4.01814,47.92847],[4.00386,47.94203],[3.98563,47.93051],[3.96257,47.93596],[3.94809,47.9309],[3.94539,47.93467],[3.92645,47.93457],[3.91849,47.92802],[3.91172,47.93009],[3.90216,47.92554],[3.89403,47.9293],[3.90355,47.93834],[3.89946,47.94073],[3.91469,47.97569],[3.91092,47.98182],[3.89343,48.0017],[3.88166,48.00029],[3.88536,47.99147],[3.87766,47.98703],[3.8833,47.9852],[3.87997,47.97917],[3.8618,47.97644],[3.86592,47.9844],[3.85003,47.98366],[3.83981,48.00389],[3.86369,48.00705],[3.87068,48.00295],[3.87061,48.01681],[3.82198,48.04392],[3.83019,48.04709],[3.82406,48.05311],[3.82955,48.05772],[3.80693,48.08415],[3.79808,48.0865],[3.80565,48.10051],[3.79169,48.11764],[3.77988,48.12062],[3.76802,48.13376],[3.75691,48.12531],[3.73972,48.13275],[3.74287,48.14288],[3.75482,48.15024],[3.74747,48.16625],[3.71352,48.17394],[3.72157,48.15527],[3.70502,48.14431],[3.69298,48.15462],[3.69092,48.14502],[3.66787,48.13921],[3.66064,48.15885],[3.63494,48.18792],[3.62166,48.19198],[3.59418,48.17888],[3.57985,48.18434],[3.57519,48.18874],[3.59991,48.20233],[3.62162,48.22574],[3.61477,48.2318],[3.60468,48.22989],[3.59985,48.23591],[3.62433,48.25453],[3.6168,48.27134],[3.5778,48.28459],[3.58797,48.30081],[3.56109,48.31194],[3.5634,48.32144],[3.5439,48.31979],[3.54511,48.33454],[3.50449,48.36578],[3.47488,48.36926],[3.46747,48.37568],[3.45083,48.37392],[3.42739,48.35809],[3.41328,48.3763],[3.41479,48.39027]]]}},{"type":"Feature","properties":{"code":"11","nom":"Aude"},"geometry":{"type":"Polygon","coordinates":[[[1.68842,43.27355],[1.71629,43.29545],[1.70401,43.30282],[1.73581,43.3142],[1.73407,43.32306],[1.72382,43.32975],[1.72973,43.33617],[1.72377,43.3409],[1.73351,43.33511],[1.75162,43.34961],[1.77227,43.33698],[1.78254,43.34613],[1.79697,43.34057],[1.81348,43.34149],[1.81663,43.34938],[1.80421,43.35793],[1.80742,43.37252],[1.80146,43.37619],[1.81112,43.38178],[1.80296,43.39255],[1.8261,43.39484],[1.81727,43.41065],[1.8261,43.41812],[1.84212,43.41508],[1.84818,43.42563],[1.84295,43.43254],[1.85644,43.44327],[1.87181,43.43811],[1.87324,43.42879],[1.89612,43.41845],[1.90478,43.40742],[1.89558,43.39658],[1.90499,43.39337],[1.91463,43.40075],[1.91021,43.40595],[1.9214,43.41365],[1.92043,43.42157],[1.93424,43.42525],[1.94945,43.41959],[1.95411,43.42645],[1.96375,43.42275],[1.96592,43.41519],[1.97213,43.42095],[1.97821,43.41835],[1.9883,43.40761],[2.01436,43.41471],[2.02074,43.42319],[2.03121,43.41935],[2.03723,43.42211],[2.02913,43.4369],[2.05307,43.4303],[2.07459,43.3947],[2.08667,43.39878],[2.09193,43.39389],[2.10928,43.39455],[2.14078,43.40425],[2.15741,43.41642],[2.17013,43.41676],[2.18586,43.39534],[2.21398,43.38315],[2.22985,43.40554],[2.22347,43.43194],[2.2564,43.45255],[2.2583,43.4601],[2.28201,43.44123],[2.30552,43.44771],[2.31137,43.44155],[2.39684,43.41664],[2.40685,43.41926],[2.40327,43.4247],[2.42873,43.43567],[2.45224,43.43186],[2.48963,43.43794],[2.51922,43.42357],[2.56579,43.42296],[2.57968,43.41245],[2.59346,43.41259],[2.58762,43.39982],[2.56922,43.4003],[2.55522,43.38832],[2.55136,43.37842],[2.557,43.36689],[2.5407,43.34596],[2.55133,43.33437],[2.55634,43.3376],[2.58542,43.33344],[2.59971,43.31383],[2.60136,43.29812],[2.61708,43.28427],[2.63247,43.29822],[2.65907,43.29297],[2.67458,43.30234],[2.67576,43.31426],[2.68762,43.31715],[2.68913,43.3225],[2.69815,43.31608],[2.69833,43.30311],[2.70714,43.29427],[2.69885,43.28062],[2.70491,43.27456],[2.71503,43.27686],[2.72573,43.27274],[2.75252,43.25459],[2.77225,43.25779],[2.78752,43.27244],[2.78781,43.28875],[2.81835,43.30973],[2.80635,43.31999],[2.81816,43.32396],[2.83786,43.32212],[2.86926,43.33061],[2.87576,43.34031],[2.86914,43.35942],[2.85538,43.37299],[2.8686,43.38211],[2.8697,43.37333],[2.89017,43.36535],[2.89237,43.3436],[2.88415,43.33504],[2.89045,43.32808],[2.9141,43.31973],[2.92125,43.32608],[2.94694,43.31208],[3.00435,43.32013],[3.00477,43.28529],[3.01306,43.28189],[3.0108,43.274],[3.02296,43.27685],[3.02229,43.28194],[3.05374,43.28018],[3.07834,43.26183],[3.08656,43.26376],[3.11094,43.25347],[3.12009,43.26156],[3.14163,43.25951],[3.14751,43.25286],[3.14398,43.24725],[3.15758,43.24247],[3.19877,43.25036],[3.22587,43.2201],[3.24056,43.21281],[3.18068,43.16827],[3.14404,43.13258],[3.12924,43.11377],[3.13244,43.1106],[3.12208,43.10735],[3.09288,43.06914],[3.06571,43.02235],[3.03932,42.94168],[3.04047,42.9297],[3.05426,42.92584],[3.06071,42.91742],[3.04351,42.83815],[2.98499,42.86703],[2.91711,42.88486],[2.90687,42.89581],[2.88261,42.89976],[2.86527,42.91834],[2.83473,42.91226],[2.81773,42.90028],[2.78905,42.89599],[2.76215,42.87368],[2.75441,42.85193],[2.73706,42.83557],[2.68046,42.83067],[2.66513,42.83664],[2.6043,42.83587],[2.55152,42.84669],[2.51658,42.84241],[2.50516,42.85123],[2.45247,42.83693],[2.38217,42.84847],[2.33745,42.84114],[2.32712,42.83744],[2.32765,42.82907],[2.31929,42.82399],[2.33213,42.82043],[2.33338,42.80193],[2.34392,42.80122],[2.34295,42.77535],[2.35253,42.7627],[2.35539,42.72701],[2.31969,42.70649],[2.29706,42.701],[2.2768,42.70247],[2.26471,42.70926],[2.26454,42.70156],[2.25515,42.698],[2.24652,42.6812],[2.20629,42.66708],[2.19217,42.65906],[2.19125,42.65207],[2.17695,42.64918],[2.16532,42.66585],[2.176,42.68145],[2.16786,42.69618],[2.15971,42.70221],[2.14666,42.70138],[2.13955,42.7123],[2.09217,42.73466],[2.08629,42.7518],[2.05641,42.756],[2.04163,42.74633],[2.03142,42.74652],[2.02543,42.73899],[2.01448,42.73973],[2.00384,42.73348],[1.95163,42.73669],[1.92982,42.7552],[1.91361,42.75788],[1.90938,42.76921],[1.92884,42.77495],[1.89609,42.80867],[1.85951,42.82023],[1.86024,42.82761],[1.8761,42.84007],[1.87589,42.85274],[1.94566,42.8562],[1.98692,42.87101],[1.98101,42.87842],[1.98477,42.903],[1.99193,42.9051],[1.98057,42.92958],[1.93373,42.93914],[1.93645,42.95397],[1.95559,42.9583],[1.95758,42.96425],[1.97996,42.9609],[1.9949,42.95298],[2.00594,42.96219],[1.98496,42.96727],[1.98677,43.00255],[1.97086,43.00957],[1.98469,43.0224],[1.985,43.03261],[1.97308,43.04616],[1.9606,43.05044],[1.95086,43.0466],[1.94076,43.05295],[1.943,43.0674],[1.96386,43.06918],[1.95685,43.08028],[1.94973,43.08003],[1.95578,43.08545],[1.94915,43.12107],[1.928,43.12419],[1.92735,43.12949],[1.91417,43.13355],[1.90233,43.13025],[1.89372,43.11541],[1.89069,43.12544],[1.88091,43.12679],[1.88008,43.14713],[1.87675,43.14284],[1.85663,43.14451],[1.85196,43.16061],[1.84161,43.15534],[1.84942,43.14602],[1.82477,43.14581],[1.79276,43.15912],[1.7836,43.1512],[1.78064,43.15982],[1.74463,43.17611],[1.74087,43.18411],[1.71133,43.18669],[1.70819,43.19824],[1.72551,43.21194],[1.72384,43.22452],[1.70214,43.24042],[1.7051,43.24589],[1.69499,43.24699],[1.70215,43.25708],[1.68842,43.27355]]]}},{"type":"Feature","properties":{"code":"12","nom":"Aveyron"},"geometry":{"type":"Polygon","coordinates":[[[2.20748,44.61553],[2.22057,44.62203],[2.20841,44.64384],[2.21591,44.65069],[2.23415,44.65547],[2.25089,44.65189],[2.28529,44.66676],[2.30458,44.66245],[2.32679,44.66969],[2.33788,44.6566],[2.33296,44.64873],[2.35453,44.64013],[2.3667,44.64121],[2.38005,44.65129],[2.38894,44.6493],[2.39071,44.64359],[2.40362,44.64727],[2.435,44.63888],[2.44845,44.64868],[2.46804,44.64289],[2.47096,44.65161],[2.48319,44.65034],[2.49128,44.65749],[2.48752,44.66842],[2.50012,44.69019],[2.51105,44.69576],[2.51414,44.69309],[2.51802,44.70415],[2.56042,44.72118],[2.5595,44.73149],[2.55368,44.72525],[2.54453,44.72513],[2.55572,44.73352],[2.55058,44.75608],[2.56126,44.75915],[2.56284,44.77787],[2.57355,44.78496],[2.58656,44.78399],[2.6,44.79305],[2.59695,44.82028],[2.61161,44.83068],[2.60268,44.84317],[2.61854,44.85217],[2.63054,44.87284],[2.65425,44.86968],[2.65796,44.88685],[2.68048,44.90686],[2.69031,44.90215],[2.69427,44.90767],[2.69661,44.90379],[2.70828,44.90834],[2.71359,44.92713],[2.72402,44.92458],[2.72924,44.93693],[2.73825,44.94122],[2.74178,44.92961],[2.75524,44.93297],[2.77609,44.90896],[2.77209,44.89849],[2.77859,44.8875],[2.76741,44.86558],[2.77385,44.85474],[2.80418,44.87439],[2.8135,44.86939],[2.85968,44.87446],[2.8549,44.85041],[2.86513,44.84725],[2.85998,44.83879],[2.87041,44.82942],[2.88786,44.78921],[2.90511,44.78377],[2.92019,44.79431],[2.93775,44.77487],[2.93074,44.76177],[2.91745,44.76669],[2.91147,44.76182],[2.93377,44.74987],[2.92326,44.72864],[2.93509,44.705],[2.93274,44.69665],[2.9444,44.68466],[2.93935,44.67758],[2.94821,44.67443],[2.95493,44.66076],[2.96318,44.65868],[2.973,44.64572],[2.98564,44.64407],[2.99914,44.63333],[3.03318,44.59691],[3.07591,44.57297],[3.08386,44.56041],[3.06884,44.50132],[3.09956,44.48043],[3.11585,44.47555],[3.12464,44.46131],[3.13683,44.45624],[3.13487,44.44126],[3.14345,44.43534],[3.1417,44.42635],[3.13027,44.42208],[3.12672,44.41396],[3.13715,44.41091],[3.14042,44.39221],[3.11784,44.38427],[3.12444,44.38017],[3.11933,44.3641],[3.13198,44.35717],[3.12732,44.34703],[3.13374,44.33033],[3.15426,44.33095],[3.14505,44.31815],[3.15425,44.30837],[3.12349,44.28464],[3.12017,44.26184],[3.13836,44.26414],[3.14649,44.27669],[3.15475,44.27182],[3.16164,44.24454],[3.1893,44.24749],[3.19227,44.24076],[3.23054,44.23034],[3.2247,44.21189],[3.20409,44.18973],[3.23769,44.18996],[3.26715,44.20138],[3.28776,44.19959],[3.2939,44.20698],[3.31799,44.20019],[3.33494,44.20409],[3.36279,44.2015],[3.35741,44.19323],[3.3748,44.17926],[3.37365,44.17076],[3.33462,44.15882],[3.33227,44.14179],[3.32029,44.1359],[3.32293,44.10982],[3.31179,44.10434],[3.29102,44.10586],[3.2626,44.09288],[3.27718,44.08762],[3.28916,44.07221],[3.2974,44.07232],[3.29471,44.0678],[3.30739,44.06908],[3.31836,44.07908],[3.32891,44.07903],[3.33768,44.05829],[3.35184,44.0502],[3.36708,44.05822],[3.3714,44.0494],[3.39009,44.05755],[3.40082,44.04328],[3.41726,44.0416],[3.45158,44.02145],[3.44583,44.00454],[3.43917,43.99804],[3.41775,43.99258],[3.40562,43.96968],[3.37816,43.96755],[3.37564,43.95601],[3.35709,43.94902],[3.35053,43.93233],[3.35836,43.91383],[3.34027,43.90173],[3.34257,43.89419],[3.31893,43.89062],[3.26948,43.8975],[3.25683,43.87872],[3.23789,43.87027],[3.23446,43.85756],[3.25136,43.84343],[3.24904,43.82958],[3.22933,43.82493],[3.21144,43.81335],[3.1811,43.81282],[3.15804,43.81758],[3.14959,43.81364],[3.13191,43.81624],[3.08646,43.83581],[3.06113,43.83329],[3.05763,43.8186],[3.06308,43.80923],[3.04857,43.8015],[3.05906,43.77952],[3.07588,43.76852],[3.05257,43.74578],[3.05905,43.7381],[3.05185,43.73224],[3.05848,43.72671],[3.05346,43.71617],[3.06917,43.70684],[3.06017,43.69294],[3.04523,43.69737],[3.02733,43.69273],[3.0123,43.70377],[2.98505,43.70879],[2.93759,43.69047],[2.92497,43.70615],[2.92157,43.73544],[2.90261,43.74227],[2.87004,43.73887],[2.86193,43.74827],[2.83159,43.75219],[2.82225,43.76226],[2.78765,43.75205],[2.78119,43.73696],[2.74284,43.72904],[2.71791,43.7411],[2.68173,43.74351],[2.67004,43.74953],[2.62593,43.78327],[2.59974,43.81709],[2.58826,43.81928],[2.57675,43.83577],[2.56168,43.84449],[2.56381,43.86577],[2.58022,43.87884],[2.55042,43.89249],[2.55382,43.92506],[2.54449,43.92459],[2.54613,43.92945],[2.53776,43.92487],[2.53306,43.93658],[2.5093,43.94211],[2.508,43.94778],[2.49908,43.9451],[2.50265,43.95414],[2.51863,43.95843],[2.52504,43.97701],[2.52113,43.98241],[2.50213,43.98551],[2.49176,44.00353],[2.49645,44.00793],[2.49155,44.01882],[2.46403,44.03331],[2.46006,44.05135],[2.41021,44.05585],[2.4121,44.06971],[2.38921,44.09457],[2.36599,44.09795],[2.3405,44.11025],[2.33244,44.12302],[2.31788,44.12347],[2.3084,44.11766],[2.30352,44.12198],[2.28828,44.1222],[2.29782,44.13805],[2.28488,44.14533],[2.27106,44.14798],[2.23759,44.13401],[2.2242,44.13889],[2.18152,44.13858],[2.19306,44.14926],[2.19825,44.14346],[2.21295,44.14586],[2.21362,44.15194],[2.23243,44.15461],[2.23554,44.16384],[2.22992,44.16195],[2.22497,44.1682],[2.20594,44.1711],[2.19178,44.16203],[2.18032,44.17126],[2.18061,44.17894],[2.15533,44.1803],[2.1622,44.18724],[2.15068,44.19127],[2.14921,44.20054],[2.10613,44.19439],[2.10699,44.18116],[2.09701,44.1748],[2.09427,44.18891],[2.08091,44.17997],[2.06939,44.18431],[2.06887,44.18967],[2.05211,44.18873],[2.05938,44.17228],[2.02983,44.16883],[2.0297,44.15704],[1.99017,44.14945],[2.00062,44.15907],[1.97666,44.16197],[1.97805,44.17952],[1.96219,44.18438],[1.94476,44.18256],[1.94071,44.16976],[1.93079,44.17811],[1.9334,44.18811],[1.92535,44.19121],[1.9111,44.18546],[1.91232,44.1901],[1.90285,44.19277],[1.90716,44.20075],[1.89035,44.20757],[1.89067,44.21346],[1.90435,44.20952],[1.91182,44.21435],[1.93346,44.2458],[1.96202,44.24234],[1.97044,44.27644],[1.94109,44.28241],[1.90045,44.27916],[1.86878,44.29204],[1.88158,44.30428],[1.86108,44.3236],[1.87759,44.33596],[1.88563,44.33527],[1.88208,44.34007],[1.89189,44.35297],[1.90891,44.35007],[1.91205,44.35692],[1.86725,44.39761],[1.87584,44.40727],[1.87319,44.42414],[1.84986,44.4357],[1.84618,44.44734],[1.85321,44.46303],[1.84082,44.48067],[1.8583,44.48708],[1.88442,44.48471],[1.89029,44.50589],[1.90503,44.50135],[1.90809,44.48818],[1.91645,44.48632],[1.92113,44.49151],[1.91299,44.50516],[1.92965,44.50545],[1.93662,44.51515],[1.96044,44.52],[1.98662,44.55],[2.00174,44.55653],[2.02886,44.55822],[2.03502,44.57107],[2.05737,44.58291],[2.06767,44.57565],[2.05938,44.57122],[2.06068,44.56538],[2.0679,44.56692],[2.08129,44.58701],[2.10156,44.57243],[2.11326,44.57184],[2.12495,44.57941],[2.13253,44.56948],[2.15382,44.5719],[2.16811,44.59078],[2.17855,44.59435],[2.18058,44.58783],[2.18695,44.59085],[2.19442,44.58537],[2.20179,44.59605],[2.19397,44.60004],[2.21096,44.60492],[2.20748,44.61553]]]}},{"type":"Feature","properties":{"code":"13","nom":"Bouches-du-Rh\xF4ne"},"geometry":{"type":"MultiPolygon","coordinates":[[[[5.30568,43.27676],[5.3112,43.27431],[5.28799,43.26116],[5.28569,43.26567],[5.30355,43.27632],[5.29164,43.28028],[5.31258,43.28725],[5.32393,43.28619],[5.30568,43.27676]]],[[[5.33821,43.20794],[5.32852,43.21248],[5.3374,43.21288],[5.33821,43.20794]]],[[[5.33505,43.3373],[5.36168,43.30868],[5.35769,43.29929],[5.36094,43.30862],[5.35323,43.31838],[5.31935,43.34746],[5.33505,43.3373]]],[[[4.87756,43.36494],[4.87494,43.36236],[4.87457,43.36878],[4.87756,43.36494]]],[[[4.73906,43.92406],[4.85309,43.91138],[4.88523,43.90015],[4.90232,43.88793],[4.92586,43.88649],[4.96631,43.87165],[4.99609,43.84606],[5.02953,43.82779],[5.04966,43.78873],[5.17331,43.73881],[5.18797,43.7351],[5.22999,43.74767],[5.31572,43.73649],[5.34102,43.7197],[5.43758,43.68171],[5.53145,43.65901],[5.57479,43.66206],[5.60694,43.65869],[5.64231,43.67222],[5.67359,43.69366],[5.71413,43.69133],[5.73695,43.716],[5.75365,43.72462],[5.7767,43.72247],[5.77547,43.7188],[5.7875,43.71602],[5.78219,43.70689],[5.78764,43.69695],[5.81324,43.68896],[5.80381,43.68033],[5.79873,43.6612],[5.7448,43.65678],[5.71897,43.64984],[5.70966,43.64093],[5.69871,43.64246],[5.70197,43.63746],[5.68407,43.61812],[5.68755,43.61487],[5.67806,43.61137],[5.6916,43.58443],[5.65597,43.5774],[5.66932,43.56464],[5.69088,43.56356],[5.71498,43.55147],[5.72507,43.55126],[5.71243,43.51291],[5.71583,43.50321],[5.71196,43.49707],[5.7025,43.49614],[5.69864,43.48342],[5.72784,43.4669],[5.75066,43.43451],[5.77594,43.42055],[5.78835,43.42026],[5.78636,43.41391],[5.75529,43.40232],[5.72443,43.40887],[5.70128,43.40807],[5.68279,43.39916],[5.69461,43.36395],[5.70503,43.35592],[5.68645,43.34019],[5.68981,43.32746],[5.67552,43.31956],[5.69104,43.31296],[5.7266,43.31736],[5.74984,43.28927],[5.76279,43.28236],[5.76093,43.26734],[5.71147,43.25332],[5.70249,43.24827],[5.7024,43.23917],[5.68391,43.23606],[5.67188,43.17927],[5.65113,43.18817],[5.62417,43.18698],[5.60704,43.1741],[5.61007,43.16753],[5.61464,43.1692],[5.60414,43.16035],[5.56929,43.17488],[5.54797,43.19603],[5.54921,43.20802],[5.5394,43.20878],[5.53569,43.21417],[5.49987,43.19689],[5.49288,43.20353],[5.45893,43.21119],[5.4452,43.21116],[5.4545,43.20204],[5.42091,43.21053],[5.42689,43.20347],[5.40446,43.21292],[5.3634,43.20718],[5.34182,43.21257],[5.34797,43.22948],[5.36253,43.24307],[5.37252,43.24508],[5.37605,43.25516],[5.37019,43.26747],[5.34546,43.28161],[5.35415,43.29375],[5.37348,43.29418],[5.36024,43.29567],[5.36441,43.31214],[5.35652,43.31905],[5.36206,43.32196],[5.35867,43.32574],[5.35507,43.32082],[5.34501,43.33319],[5.35107,43.33471],[5.32829,43.34475],[5.33924,43.34116],[5.34102,43.34479],[5.32418,43.3544],[5.31412,43.35455],[5.32265,43.35715],[5.29647,43.35956],[5.25861,43.33771],[5.22938,43.32873],[5.1916,43.32952],[5.17536,43.33425],[5.16876,43.32811],[5.1519,43.33037],[5.14438,43.32652],[5.0987,43.3281],[5.08766,43.33242],[5.08159,43.32788],[5.06243,43.3311],[5.05019,43.32495],[5.05,43.3318],[5.04104,43.32729],[5.01988,43.34233],[5.02528,43.35553],[5.0173,43.35762],[5.01435,43.3693],[5.00014,43.376],[4.98685,43.39224],[5.00107,43.39822],[4.99551,43.40348],[4.98744,43.40263],[4.98772,43.40652],[4.98248,43.3968],[4.97477,43.40122],[4.97,43.42488],[4.94944,43.42922],[4.93875,43.42658],[4.93879,43.43155],[4.93138,43.43316],[4.91933,43.43091],[4.88841,43.41216],[4.8935,43.40412],[4.88472,43.41372],[4.90342,43.42966],[4.89282,43.42876],[4.88222,43.41928],[4.86741,43.43233],[4.86083,43.45398],[4.85025,43.4508],[4.87731,43.41051],[4.8658,43.40464],[4.82986,43.42977],[4.82444,43.42439],[4.86147,43.40077],[4.85036,43.39804],[4.84154,43.4036],[4.83868,43.39453],[4.8527,43.39412],[4.85385,43.38882],[4.87183,43.39004],[4.85411,43.38861],[4.85076,43.37786],[4.82891,43.37589],[4.84236,43.37581],[4.84773,43.37106],[4.85165,43.37607],[4.8591,43.36721],[4.86057,43.37005],[4.86468,43.36502],[4.86674,43.36961],[4.88305,43.3565],[4.88296,43.3637],[4.90877,43.37471],[4.91176,43.38757],[4.91753,43.37989],[4.85505,43.33262],[4.83549,43.32875],[4.81367,43.33963],[4.77376,43.3485],[4.73088,43.35067],[4.65913,43.34625],[4.5858,43.36007],[4.5628,43.37214],[4.55561,43.38282],[4.56272,43.39225],[4.59287,43.40557],[4.5881,43.42271],[4.5682,43.44011],[4.5307,43.45257],[4.45793,43.45692],[4.40133,43.44683],[4.38204,43.45227],[4.23028,43.46019],[4.23968,43.49917],[4.29585,43.51453],[4.30883,43.52447],[4.32467,43.5282],[4.3079,43.5452],[4.31714,43.55215],[4.31399,43.55557],[4.32287,43.55431],[4.31608,43.54488],[4.33414,43.53545],[4.35037,43.54675],[4.38166,43.553],[4.38741,43.5622],[4.40935,43.56113],[4.41659,43.57134],[4.40294,43.57299],[4.42554,43.58522],[4.44701,43.58303],[4.46068,43.58926],[4.47414,43.60386],[4.47252,43.61204],[4.46681,43.61521],[4.43975,43.61067],[4.42617,43.62448],[4.4513,43.66413],[4.47747,43.67251],[4.47567,43.68446],[4.48724,43.69924],[4.53985,43.70727],[4.55811,43.6995],[4.5789,43.69751],[4.59303,43.68746],[4.62745,43.68543],[4.61228,43.72475],[4.62949,43.76192],[4.65194,43.78407],[4.65508,43.80764],[4.64242,43.83144],[4.66679,43.84612],[4.66016,43.85324],[4.64146,43.85114],[4.6483,43.85883],[4.64191,43.86748],[4.65923,43.87582],[4.66242,43.87083],[4.69223,43.88418],[4.70932,43.89801],[4.70065,43.89837],[4.72337,43.90595],[4.73906,43.92406]],[[5.11807,43.51322],[5.10867,43.52549],[5.05869,43.52788],[5.04561,43.5218],[5.02943,43.54871],[5.022,43.55615],[5.01329,43.55445],[5.01586,43.52747],[4.99804,43.5009],[5.00086,43.4741],[5.00601,43.46966],[5.04061,43.47022],[5.05188,43.46356],[5.06096,43.42105],[5.05782,43.40763],[5.06378,43.40149],[5.11753,43.40459],[5.13727,43.40019],[5.20444,43.44214],[5.19842,43.45089],[5.20865,43.44369],[5.2266,43.45301],[5.22484,43.48107],[5.20558,43.492],[5.16346,43.47077],[5.15495,43.45581],[5.14585,43.45806],[5.11357,43.50466],[5.11807,43.51322]]]]}},{"type":"Feature","properties":{"code":"14","nom":"Calvados"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-1.11962,49.35557],[-1.11554,49.3515],[-1.11788,49.36053],[-1.07267,49.38997],[-1.04681,49.38797],[-0.98871,49.39741],[-0.94723,49.39581],[-0.92445,49.39249],[-0.89591,49.3766],[-0.85117,49.36254],[-0.75529,49.34891],[-0.64948,49.34653],[-0.60348,49.33984],[-0.52871,49.34572],[-0.39661,49.333],[-0.30258,49.29844],[-0.22569,49.28182],[-0.08717,49.29791],[0.01061,49.33061],[0.12975,49.40299],[0.22358,49.42812],[0.29722,49.42986],[0.29675,49.40983],[0.30895,49.38936],[0.30179,49.37115],[0.32599,49.34037],[0.31314,49.32304],[0.29815,49.31441],[0.31602,49.31131],[0.32302,49.29699],[0.309,49.28322],[0.32627,49.27793],[0.34253,49.29562],[0.36227,49.29708],[0.38391,49.28554],[0.38279,49.26402],[0.36632,49.25978],[0.3646,49.26299],[0.33905,49.25261],[0.32023,49.25246],[0.32074,49.2482],[0.3383,49.2306],[0.36655,49.21588],[0.38879,49.21622],[0.39473,49.20844],[0.38727,49.18508],[0.39325,49.17761],[0.39155,49.16018],[0.3859,49.15379],[0.4116,49.14603],[0.42371,49.14789],[0.43324,49.14068],[0.42487,49.13019],[0.40827,49.12858],[0.40687,49.11218],[0.40157,49.11114],[0.40039,49.09708],[0.41529,49.09621],[0.39737,49.09056],[0.39922,49.08699],[0.41622,49.08823],[0.41728,49.07335],[0.39102,49.07786],[0.37857,49.07058],[0.38116,49.06019],[0.3671,49.0524],[0.37886,49.05102],[0.38228,49.03903],[0.39062,49.03404],[0.42776,49.03229],[0.43124,49.02348],[0.44242,49.02475],[0.44628,49.01497],[0.43394,49.00495],[0.42479,48.98514],[0.4329,48.97912],[0.43116,48.96722],[0.41364,48.95051],[0.40015,48.95275],[0.40609,48.96346],[0.3843,48.96665],[0.37731,48.97255],[0.3565,48.94955],[0.33323,48.94278],[0.30948,48.95388],[0.27748,48.94998],[0.27986,48.96319],[0.26305,48.96474],[0.24498,48.95915],[0.23921,48.95207],[0.24227,48.94435],[0.23258,48.93931],[0.21746,48.9464],[0.19506,48.94369],[0.17962,48.92964],[0.1539,48.92438],[0.14342,48.94519],[0.12761,48.95222],[0.10068,48.93437],[0.08072,48.93798],[0.06665,48.92744],[0.05609,48.9016],[-0.00706,48.88539],[-0.00693,48.87235],[-0.01257,48.87757],[-0.02669,48.87635],[-0.03493,48.86606],[-0.05901,48.85349],[-0.06873,48.84007],[-0.08293,48.84498],[-0.11409,48.83946],[-0.12442,48.84738],[-0.12335,48.83957],[-0.14634,48.83445],[-0.12751,48.81627],[-0.17012,48.82475],[-0.1792,48.82922],[-0.17842,48.83545],[-0.19526,48.83818],[-0.2044,48.84644],[-0.21287,48.84008],[-0.24245,48.84936],[-0.26053,48.84945],[-0.26218,48.85359],[-0.29855,48.84916],[-0.30545,48.85822],[-0.32852,48.8576],[-0.33594,48.84582],[-0.32739,48.83909],[-0.34624,48.822],[-0.36412,48.83512],[-0.37331,48.83486],[-0.36809,48.84024],[-0.37464,48.84049],[-0.36104,48.84234],[-0.35961,48.84747],[-0.37607,48.84559],[-0.38119,48.84947],[-0.38621,48.84526],[-0.40418,48.86081],[-0.40618,48.86984],[-0.42613,48.86567],[-0.42521,48.87226],[-0.43223,48.87484],[-0.43388,48.86886],[-0.43875,48.87293],[-0.46375,48.87137],[-0.47622,48.85878],[-0.49658,48.85831],[-0.49405,48.84857],[-0.5019,48.84649],[-0.52331,48.85027],[-0.54994,48.8474],[-0.55967,48.83428],[-0.57218,48.83014],[-0.58075,48.83801],[-0.624,48.82701],[-0.64542,48.82721],[-0.64344,48.84095],[-0.65604,48.83751],[-0.67225,48.8437],[-0.68072,48.84064],[-0.69272,48.8473],[-0.7057,48.83785],[-0.68217,48.82183],[-0.71256,48.80069],[-0.78063,48.78665],[-0.80047,48.76555],[-0.82238,48.7526],[-0.84094,48.75222],[-0.82129,48.7664],[-0.82286,48.77185],[-0.83251,48.76524],[-0.88264,48.75618],[-0.89393,48.76743],[-0.93629,48.77517],[-0.95105,48.78924],[-0.96705,48.78608],[-0.97101,48.77283],[-0.99144,48.77812],[-1.00652,48.77737],[-1.01268,48.77178],[-1.04505,48.78316],[-1.05873,48.77335],[-1.08254,48.77777],[-1.10116,48.78972],[-1.09116,48.79308],[-1.1023,48.81426],[-1.15742,48.82388],[-1.15708,48.83637],[-1.14169,48.83755],[-1.13149,48.84949],[-1.12116,48.84822],[-1.12172,48.85531],[-1.10438,48.86403],[-1.0921,48.87909],[-1.07777,48.86779],[-1.07042,48.87018],[-1.04919,48.89403],[-1.02851,48.90117],[-1.01341,48.9152],[-1.01978,48.92739],[-1.06587,48.92027],[-1.03211,48.93811],[-1.01153,48.941],[-1.00529,48.93538],[-0.99305,48.94154],[-0.98877,48.95193],[-0.94241,48.96799],[-0.91099,48.99354],[-0.90511,49.0114],[-0.89805,49.00977],[-0.88666,49.02209],[-0.86256,49.02641],[-0.86087,49.03083],[-0.86968,49.03917],[-0.88452,49.03871],[-0.8918,49.04555],[-0.86909,49.0679],[-0.87051,49.08028],[-0.88058,49.09071],[-0.87846,49.1171],[-0.88566,49.11511],[-0.89135,49.11935],[-0.92465,49.10238],[-0.91341,49.11485],[-0.89145,49.12172],[-0.88659,49.12943],[-0.90569,49.13286],[-0.90794,49.13913],[-0.93303,49.14612],[-0.94086,49.15246],[-0.93133,49.15787],[-0.95878,49.16139],[-0.94993,49.16773],[-0.93705,49.16144],[-0.92591,49.16405],[-0.92135,49.17822],[-0.91418,49.17874],[-0.91613,49.1844],[-0.90608,49.18383],[-0.91591,49.18949],[-0.88726,49.20146],[-0.88943,49.20441],[-0.90087,49.20297],[-0.926,49.232],[-0.93312,49.21589],[-0.94666,49.2152],[-0.94179,49.21197],[-0.9544,49.20023],[-0.97352,49.19145],[-1.00803,49.20418],[-1.02267,49.20339],[-1.03743,49.22226],[-1.04838,49.22041],[-1.05035,49.22799],[-1.06086,49.22522],[-1.07816,49.23389],[-1.08822,49.24615],[-1.09505,49.24563],[-1.09641,49.25428],[-1.10413,49.25237],[-1.12646,49.27175],[-1.12703,49.26726],[-1.13592,49.27032],[-1.13369,49.27858],[-1.12395,49.27433],[-1.12057,49.27907],[-1.13468,49.2868],[-1.14071,49.30601],[-1.11331,49.32669],[-1.11962,49.35557]]]]}},{"type":"Feature","properties":{"code":"15","nom":"Cantal"},"geometry":{"type":"Polygon","coordinates":[[[2.50841,45.4785],[2.51968,45.48325],[2.54396,45.47898],[2.53653,45.45655],[2.56386,45.46558],[2.58821,45.44965],[2.60365,45.45002],[2.61751,45.4701],[2.62376,45.46626],[2.62453,45.4439],[2.65035,45.44329],[2.66262,45.43413],[2.67819,45.44011],[2.68846,45.43769],[2.6897,45.43003],[2.67994,45.42269],[2.68073,45.40717],[2.69318,45.40588],[2.69529,45.3979],[2.70392,45.39886],[2.70126,45.39127],[2.71434,45.38183],[2.7422,45.39334],[2.76122,45.38602],[2.78483,45.38467],[2.7857,45.38961],[2.80085,45.39225],[2.81389,45.4015],[2.83058,45.38965],[2.85238,45.39234],[2.86773,45.37608],[2.8863,45.38296],[2.89978,45.37691],[2.90067,45.37078],[2.92247,45.36811],[2.92576,45.34264],[2.94862,45.30913],[2.96863,45.3074],[2.99903,45.29068],[3.0183,45.28707],[3.02179,45.29537],[3.05233,45.30279],[3.06562,45.31553],[3.06235,45.32909],[3.06927,45.33664],[3.08736,45.33864],[3.09646,45.35204],[3.11285,45.35156],[3.11342,45.32709],[3.09042,45.32423],[3.11381,45.3091],[3.10489,45.30016],[3.08461,45.29903],[3.08315,45.28937],[3.09936,45.29232],[3.118,45.28419],[3.13694,45.28969],[3.14737,45.28781],[3.16099,45.29533],[3.16976,45.27987],[3.16494,45.26884],[3.18838,45.27744],[3.18351,45.27941],[3.20235,45.28238],[3.22322,45.27682],[3.22011,45.2719],[3.22685,45.27194],[3.22911,45.26486],[3.22095,45.24458],[3.23442,45.23765],[3.23536,45.22009],[3.25362,45.21585],[3.25544,45.20999],[3.26575,45.21359],[3.27335,45.20841],[3.26061,45.17094],[3.26711,45.15453],[3.2816,45.15161],[3.27375,45.14528],[3.28803,45.12042],[3.29948,45.12524],[3.33098,45.10945],[3.34788,45.11295],[3.35053,45.10428],[3.36145,45.10418],[3.32579,45.09514],[3.30543,45.10111],[3.30457,45.1066],[3.28229,45.10319],[3.28977,45.08675],[3.29771,45.09119],[3.31489,45.0851],[3.30195,45.06375],[3.30651,45.06277],[3.29982,45.06085],[3.30483,45.04523],[3.29715,45.03779],[3.30015,45.03132],[3.31088,45.02039],[3.32704,45.03061],[3.33717,45.02534],[3.32497,45.00979],[3.32964,45.00786],[3.3472,45.01423],[3.34971,45.00166],[3.37013,45.00517],[3.36447,44.99024],[3.34531,44.98581],[3.34795,44.97387],[3.36134,44.97141],[3.35453,44.95482],[3.33795,44.95591],[3.31333,44.93849],[3.29914,44.93909],[3.28448,44.92609],[3.26153,44.93207],[3.26663,44.94229],[3.24841,44.93951],[3.25055,44.93459],[3.24173,44.9337],[3.24813,44.92983],[3.24969,44.91624],[3.22643,44.90998],[3.22754,44.89612],[3.23633,44.88791],[3.21571,44.87436],[3.19918,44.87464],[3.18855,44.86145],[3.17353,44.87299],[3.16467,44.87381],[3.1411,44.90332],[3.12838,44.90358],[3.12401,44.88989],[3.11509,44.894],[3.10398,44.88656],[3.1077,44.86647],[3.09324,44.85424],[3.09916,44.83291],[3.07266,44.83744],[3.07698,44.82419],[3.06217,44.81898],[3.04809,44.80425],[3.05172,44.78525],[3.04259,44.77221],[3.04904,44.76272],[3.03108,44.74941],[3.02636,44.72893],[3.03443,44.72919],[3.03913,44.71499],[3.01653,44.71437],[2.98168,44.64468],[2.96187,44.65447],[2.95482,44.66778],[2.93774,44.68055],[2.9444,44.68466],[2.93274,44.69665],[2.93509,44.705],[2.92326,44.72864],[2.93377,44.74987],[2.91147,44.76182],[2.91745,44.76669],[2.93074,44.76177],[2.93775,44.77487],[2.92019,44.79431],[2.90511,44.78377],[2.88786,44.78921],[2.87041,44.82942],[2.85998,44.83879],[2.86513,44.84725],[2.8549,44.85041],[2.85968,44.87446],[2.8135,44.86939],[2.80418,44.87439],[2.77385,44.85474],[2.76741,44.86558],[2.77859,44.8875],[2.77209,44.89849],[2.77609,44.90896],[2.75524,44.93297],[2.74178,44.92961],[2.73825,44.94122],[2.72924,44.93693],[2.72402,44.92458],[2.71359,44.92713],[2.70522,44.90637],[2.67621,44.90386],[2.65796,44.88685],[2.65425,44.86968],[2.63054,44.87284],[2.62317,44.86647],[2.61854,44.85217],[2.60268,44.84317],[2.61161,44.83068],[2.59695,44.82028],[2.6,44.79305],[2.58656,44.78399],[2.57355,44.78496],[2.56284,44.77787],[2.56126,44.75915],[2.55058,44.75608],[2.55572,44.73352],[2.54453,44.72513],[2.55368,44.72525],[2.5595,44.73149],[2.56042,44.72118],[2.51802,44.70415],[2.51414,44.69309],[2.51105,44.69576],[2.50012,44.69019],[2.48752,44.66842],[2.49128,44.65749],[2.47883,44.649],[2.47096,44.65161],[2.46804,44.64289],[2.44845,44.64868],[2.435,44.63888],[2.40362,44.64727],[2.39071,44.64359],[2.38894,44.6493],[2.38005,44.65129],[2.3667,44.64121],[2.35453,44.64013],[2.33296,44.64873],[2.33788,44.6566],[2.32679,44.66969],[2.30458,44.66245],[2.28529,44.66676],[2.25089,44.65189],[2.23415,44.65547],[2.21591,44.65069],[2.20841,44.64384],[2.22057,44.62203],[2.20748,44.61553],[2.19377,44.62802],[2.16873,44.63861],[2.17404,44.65365],[2.16184,44.6634],[2.17915,44.67445],[2.15953,44.69741],[2.15303,44.70001],[2.13828,44.6936],[2.12995,44.69867],[2.13123,44.70885],[2.14905,44.72214],[2.15057,44.74073],[2.15574,44.74245],[2.14846,44.76655],[2.15413,44.77196],[2.16556,44.77152],[2.17177,44.7898],[2.1653,44.79956],[2.16772,44.81096],[2.13531,44.827],[2.12809,44.84531],[2.11721,44.84826],[2.08352,44.8871],[2.08591,44.90384],[2.10728,44.91028],[2.10458,44.91977],[2.0778,44.93393],[2.0807,44.95329],[2.06291,44.97651],[2.09304,44.98589],[2.10219,44.98023],[2.11421,44.98553],[2.13026,44.98421],[2.14218,45.00033],[2.13962,45.0077],[2.11598,45.02224],[2.11083,45.04054],[2.09516,45.05603],[2.10074,45.056],[2.10406,45.06675],[2.12069,45.06989],[2.14018,45.08652],[2.17455,45.08226],[2.18058,45.11255],[2.19034,45.11612],[2.17879,45.1363],[2.19411,45.13479],[2.20256,45.13916],[2.21157,45.14844],[2.20843,45.16032],[2.232,45.16398],[2.23174,45.17006],[2.20133,45.17979],[2.19988,45.19797],[2.18987,45.20406],[2.19665,45.21612],[2.18932,45.22211],[2.20172,45.22244],[2.22569,45.24451],[2.24027,45.24759],[2.24284,45.26535],[2.25856,45.27022],[2.26899,45.28939],[2.29022,45.28805],[2.31575,45.32183],[2.35166,45.32783],[2.35976,45.33651],[2.35026,45.34604],[2.36513,45.35608],[2.36297,45.37842],[2.36936,45.3865],[2.35066,45.41292],[2.36957,45.41615],[2.3875,45.41196],[2.39879,45.39999],[2.42267,45.39723],[2.44186,45.38426],[2.47498,45.3813],[2.47025,45.37384],[2.47662,45.37028],[2.48577,45.37895],[2.52318,45.38281],[2.52787,45.39161],[2.52127,45.40264],[2.48754,45.41816],[2.4956,45.4455],[2.5025,45.44787],[2.49941,45.46025],[2.50677,45.46407],[2.50841,45.4785]]]}},{"type":"Feature","properties":{"code":"16","nom":"Charente"},"geometry":{"type":"Polygon","coordinates":[[[-0.10294,45.96966],[-0.07527,45.98038],[-0.06201,45.97972],[-0.05837,45.98682],[-0.04324,45.99034],[-0.04406,45.99451],[-0.03815,45.99242],[-0.04087,45.99858],[-0.05735,45.99894],[-0.0479,46.00437],[-0.04536,46.01981],[-0.02145,46.02887],[-0.03767,46.04392],[-0.0395,46.05311],[-0.00088,46.05553],[0.00515,46.05949],[0.01927,46.05285],[0.03768,46.07006],[0.06258,46.07269],[0.0508,46.07941],[0.06636,46.0912],[0.07858,46.09437],[0.09691,46.08889],[0.09264,46.10303],[0.09732,46.10568],[0.107,46.09687],[0.1157,46.09619],[0.13582,46.10405],[0.16992,46.08104],[0.19884,46.0973],[0.21972,46.09432],[0.23955,46.08137],[0.25655,46.0801],[0.27752,46.06064],[0.29865,46.05905],[0.3144,46.06509],[0.32624,46.06143],[0.3294,46.06661],[0.37909,46.06209],[0.38936,46.06767],[0.40278,46.06313],[0.41329,46.04909],[0.42481,46.0483],[0.45634,46.05436],[0.46914,46.06155],[0.4693,46.06821],[0.48065,46.06543],[0.47237,46.07289],[0.47844,46.08483],[0.46425,46.08928],[0.44751,46.08535],[0.44453,46.09115],[0.44952,46.09654],[0.44326,46.10157],[0.46192,46.11007],[0.4723,46.13013],[0.48766,46.1275],[0.49257,46.13586],[0.50869,46.13194],[0.49944,46.12184],[0.52094,46.11369],[0.53997,46.08556],[0.56356,46.09034],[0.57501,46.0799],[0.59373,46.08109],[0.59568,46.07266],[0.60988,46.07747],[0.60519,46.08459],[0.61748,46.09256],[0.68745,46.09725],[0.67544,46.11161],[0.68474,46.12048],[0.71054,46.12953],[0.71256,46.13959],[0.72825,46.135],[0.74382,46.14005],[0.75825,46.13822],[0.76135,46.13179],[0.78052,46.13353],[0.78698,46.12949],[0.78855,46.1332],[0.80097,46.13111],[0.81158,46.13842],[0.82259,46.13087],[0.80851,46.12065],[0.81455,46.11506],[0.81845,46.11718],[0.81799,46.11277],[0.82437,46.11586],[0.83454,46.09625],[0.81858,46.07723],[0.8272,46.06483],[0.81567,46.05856],[0.81561,46.04934],[0.85247,46.03381],[0.86368,46.016],[0.88554,46.03194],[0.89883,46.01974],[0.91931,46.01307],[0.91751,46.0094],[0.92527,46.01126],[0.91762,45.99749],[0.93375,45.99319],[0.931,45.98433],[0.93734,45.98154],[0.93194,45.9781],[0.94699,45.96996],[0.94052,45.96547],[0.94259,45.95744],[0.92244,45.95386],[0.92755,45.94794],[0.92079,45.9452],[0.92097,45.93791],[0.90515,45.93871],[0.88358,45.92317],[0.85955,45.91786],[0.85209,45.92442],[0.83646,45.92274],[0.82221,45.93209],[0.81211,45.93127],[0.8091,45.92155],[0.81584,45.91796],[0.81731,45.90191],[0.81262,45.89704],[0.82737,45.88275],[0.8075,45.87002],[0.82085,45.86723],[0.8168,45.858],[0.7961,45.8291],[0.78223,45.82108],[0.78583,45.8075],[0.77676,45.8053],[0.77688,45.80101],[0.78389,45.79168],[0.7684,45.78913],[0.76273,45.79876],[0.74954,45.79615],[0.7413,45.8057],[0.73523,45.80201],[0.7122,45.80416],[0.70578,45.77765],[0.71521,45.7719],[0.71489,45.76312],[0.69058,45.76124],[0.66624,45.74819],[0.66489,45.73921],[0.65252,45.74047],[0.64498,45.7162],[0.63301,45.72119],[0.62238,45.69943],[0.61431,45.69881],[0.61029,45.69182],[0.60404,45.69415],[0.60245,45.67955],[0.59147,45.67596],[0.60039,45.67173],[0.58609,45.66764],[0.58722,45.65987],[0.57817,45.66056],[0.56703,45.65326],[0.57545,45.64093],[0.56122,45.63274],[0.54683,45.63507],[0.54653,45.62868],[0.53845,45.62874],[0.53576,45.64246],[0.52544,45.64432],[0.52667,45.64002],[0.51029,45.63102],[0.50764,45.61955],[0.49965,45.61726],[0.51699,45.59887],[0.5102,45.59669],[0.51632,45.58806],[0.49858,45.56477],[0.5088,45.55986],[0.50649,45.55389],[0.49987,45.54509],[0.48621,45.54281],[0.48621,45.5383],[0.46574,45.53962],[0.45935,45.52597],[0.44951,45.52364],[0.45024,45.51727],[0.43213,45.50391],[0.43174,45.4856],[0.4209,45.48492],[0.40925,45.49249],[0.3817,45.48626],[0.37663,45.47604],[0.36099,45.47676],[0.35888,45.46606],[0.33286,45.4594],[0.32939,45.44335],[0.30785,45.46087],[0.30267,45.45906],[0.30194,45.44595],[0.31772,45.43572],[0.29282,45.43399],[0.2749,45.42553],[0.24788,45.36927],[0.267,45.33173],[0.26734,45.29848],[0.24903,45.28852],[0.23644,45.29266],[0.21979,45.28949],[0.20306,45.26236],[0.17486,45.26144],[0.17812,45.25447],[0.16583,45.23039],[0.14699,45.22491],[0.14455,45.21366],[0.13607,45.21589],[0.13076,45.20782],[0.09851,45.22732],[0.07866,45.22015],[0.06623,45.22058],[0.05558,45.22716],[0.03485,45.20875],[0.00775,45.20202],[0.00433,45.19163],[-0.00245,45.19892],[0.00368,45.22875],[-0.01804,45.22889],[-0.03342,45.23448],[-0.04011,45.24668],[-0.04789,45.24885],[-0.11539,45.24807],[-0.10971,45.28966],[-0.13388,45.29446],[-0.14528,45.28818],[-0.14399,45.29537],[-0.15783,45.3056],[-0.1822,45.30904],[-0.19549,45.30493],[-0.19967,45.31167],[-0.2203,45.31676],[-0.22049,45.32243],[-0.22875,45.32166],[-0.23203,45.31375],[-0.25433,45.31156],[-0.25752,45.29879],[-0.28438,45.30896],[-0.28281,45.31929],[-0.29043,45.32726],[-0.27792,45.33664],[-0.28269,45.3389],[-0.27797,45.34798],[-0.26513,45.33913],[-0.2503,45.34134],[-0.24483,45.36062],[-0.28111,45.35497],[-0.27962,45.36476],[-0.30882,45.37306],[-0.31128,45.38453],[-0.28323,45.38843],[-0.27685,45.39123],[-0.27816,45.39872],[-0.25794,45.40199],[-0.25439,45.39874],[-0.2498,45.4096],[-0.23502,45.41071],[-0.23283,45.41951],[-0.25358,45.41802],[-0.25473,45.43046],[-0.24717,45.43536],[-0.26623,45.44793],[-0.26709,45.45519],[-0.28638,45.4574],[-0.2809,45.47422],[-0.26475,45.47069],[-0.25823,45.4887],[-0.24929,45.4931],[-0.24249,45.49015],[-0.24214,45.50312],[-0.25319,45.50129],[-0.26775,45.5086],[-0.25374,45.51694],[-0.25503,45.52118],[-0.26976,45.52561],[-0.28237,45.52071],[-0.27936,45.5251],[-0.29124,45.53153],[-0.30455,45.52804],[-0.32162,45.53496],[-0.32211,45.54104],[-0.31065,45.54369],[-0.29657,45.5645],[-0.31454,45.57929],[-0.3606,45.59785],[-0.3771,45.60929],[-0.38017,45.62214],[-0.38737,45.62668],[-0.4138,45.61614],[-0.43252,45.625],[-0.40873,45.65614],[-0.39764,45.65237],[-0.38238,45.65544],[-0.41054,45.68338],[-0.42292,45.68559],[-0.41494,45.69695],[-0.42212,45.70946],[-0.42007,45.72473],[-0.4002,45.73503],[-0.41584,45.74167],[-0.46001,45.73928],[-0.46315,45.75184],[-0.44933,45.766],[-0.43215,45.76699],[-0.42766,45.76339],[-0.41366,45.77143],[-0.40946,45.76717],[-0.40307,45.7707],[-0.40178,45.7866],[-0.36921,45.78048],[-0.33836,45.787],[-0.32129,45.7845],[-0.30583,45.78807],[-0.29647,45.79692],[-0.29923,45.80208],[-0.28882,45.80646],[-0.23812,45.80372],[-0.24354,45.79617],[-0.23506,45.79507],[-0.22108,45.77521],[-0.19995,45.7788],[-0.19101,45.78989],[-0.16613,45.78767],[-0.16256,45.79252],[-0.1556,45.7893],[-0.16455,45.78112],[-0.15606,45.77951],[-0.14832,45.78909],[-0.15498,45.79784],[-0.13493,45.81895],[-0.14469,45.83967],[-0.13696,45.84686],[-0.12196,45.8498],[-0.12489,45.85631],[-0.11134,45.87159],[-0.12652,45.87265],[-0.13095,45.89101],[-0.14446,45.89184],[-0.14918,45.9006],[-0.13176,45.91025],[-0.14238,45.91718],[-0.15094,45.91375],[-0.14639,45.92452],[-0.15113,45.92662],[-0.14048,45.93151],[-0.1298,45.92713],[-0.09685,45.92848],[-0.08642,45.95071],[-0.09181,45.9515],[-0.09461,45.96242],[-0.1064,45.95892],[-0.10294,45.96966]]]}},{"type":"Feature","properties":{"code":"17","nom":"Charente-Maritime"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-1.11427,45.95173],[-1.11781,45.96188],[-1.10533,45.95439],[-1.11427,45.95173]]],[[[-1.4809,46.21003],[-1.47928,46.215],[-1.4671,46.21681],[-1.46549,46.22338],[-1.45697,46.22412],[-1.4582,46.22867],[-1.41294,46.23014],[-1.41906,46.21921],[-1.4374,46.21707],[-1.43919,46.21017],[-1.4042,46.20313],[-1.35472,46.20611],[-1.32135,46.18719],[-1.30601,46.19057],[-1.29276,46.18735],[-1.27424,46.16016],[-1.25556,46.16198],[-1.27956,46.14369],[-1.30815,46.14299],[-1.35337,46.15454],[-1.38612,46.17486],[-1.4616,46.20212],[-1.50592,46.19409],[-1.53488,46.20288],[-1.56293,46.24384],[-1.54109,46.24361],[-1.51278,46.25813],[-1.49465,46.25618],[-1.47455,46.23326],[-1.4881,46.22852],[-1.49858,46.23496],[-1.50628,46.22654],[-1.51399,46.2321],[-1.5148,46.22699],[-1.50671,46.21457],[-1.4935,46.21288],[-1.49446,46.20536],[-1.48864,46.20762],[-1.4836,46.20224],[-1.4809,46.21003]]],[[[-1.17559,46.008],[-1.17456,46.0242],[-1.15771,46.02243],[-1.1546,46.01821],[-1.17143,46.01858],[-1.17559,46.008]]],[[[-1.1294,46.31028],[-1.12057,46.3236],[-1.11614,46.31725],[-1.09781,46.31218],[-1.09097,46.3173],[-1.07547,46.3175],[-1.0813,46.32335],[-1.05338,46.349],[-1.05253,46.34254],[-1.01381,46.35562],[-1.01301,46.34903],[-0.99977,46.35468],[-0.99521,46.35032],[-0.9749,46.35105],[-0.96451,46.3654],[-0.95128,46.36038],[-0.92963,46.37152],[-0.94347,46.3366],[-0.9631,46.32262],[-0.93102,46.31004],[-0.92635,46.31554],[-0.91105,46.31278],[-0.89447,46.3169],[-0.88717,46.32665],[-0.87034,46.32217],[-0.86461,46.32747],[-0.86302,46.31914],[-0.84948,46.31777],[-0.84866,46.33251],[-0.83988,46.34037],[-0.83052,46.34153],[-0.82265,46.33576],[-0.80021,46.34238],[-0.79672,46.33914],[-0.80716,46.33313],[-0.80281,46.32529],[-0.77512,46.31835],[-0.75048,46.30426],[-0.75535,46.30214],[-0.74844,46.28329],[-0.73506,46.26821],[-0.75478,46.25304],[-0.75146,46.24507],[-0.68818,46.21666],[-0.68022,46.19716],[-0.69401,46.19666],[-0.69784,46.19223],[-0.68771,46.19083],[-0.69597,46.18634],[-0.69113,46.1798],[-0.66969,46.18497],[-0.64489,46.16501],[-0.62942,46.16532],[-0.62841,46.16098],[-0.61035,46.16114],[-0.60147,46.15633],[-0.63244,46.15057],[-0.61896,46.13719],[-0.59974,46.1435],[-0.58302,46.13965],[-0.57933,46.14826],[-0.56404,46.14186],[-0.547,46.14423],[-0.52715,46.13631],[-0.52856,46.12984],[-0.5174,46.12692],[-0.51155,46.13022],[-0.51878,46.12365],[-0.50956,46.11753],[-0.51639,46.11245],[-0.50608,46.10671],[-0.45195,46.10297],[-0.44044,46.09463],[-0.4402,46.10459],[-0.42246,46.11331],[-0.42251,46.09391],[-0.40145,46.08425],[-0.38312,46.09801],[-0.35856,46.08289],[-0.36273,46.07554],[-0.33105,46.08255],[-0.30365,46.07758],[-0.29177,46.08748],[-0.27984,46.07853],[-0.27303,46.05731],[-0.21296,46.0441],[-0.19256,46.05423],[-0.1965,46.04452],[-0.19097,46.04361],[-0.18913,46.02614],[-0.16027,46.03659],[-0.17165,46.0227],[-0.16252,46.02218],[-0.16464,46.01071],[-0.1593,46.00519],[-0.14479,46.00466],[-0.1333,45.9875],[-0.13686,45.97896],[-0.11607,45.97748],[-0.10294,45.96966],[-0.1064,45.95892],[-0.09461,45.96242],[-0.08636,45.94802],[-0.0983,45.93506],[-0.09685,45.92848],[-0.1298,45.92713],[-0.14048,45.93151],[-0.15113,45.92662],[-0.14639,45.92452],[-0.15094,45.91375],[-0.14238,45.91718],[-0.13176,45.91025],[-0.14918,45.9006],[-0.14446,45.89184],[-0.13095,45.89101],[-0.12652,45.87265],[-0.11134,45.87159],[-0.12489,45.85631],[-0.12196,45.8498],[-0.13696,45.84686],[-0.14469,45.83967],[-0.13493,45.81895],[-0.15498,45.79784],[-0.14832,45.78909],[-0.15606,45.77951],[-0.16455,45.78112],[-0.1556,45.7893],[-0.16256,45.79252],[-0.16613,45.78767],[-0.19101,45.78989],[-0.19995,45.7788],[-0.22108,45.77521],[-0.23506,45.79507],[-0.24354,45.79617],[-0.23812,45.80372],[-0.28882,45.80646],[-0.29923,45.80208],[-0.29647,45.79692],[-0.30583,45.78807],[-0.32129,45.7845],[-0.33836,45.787],[-0.36921,45.78048],[-0.40178,45.7866],[-0.40307,45.7707],[-0.40946,45.76717],[-0.41366,45.77143],[-0.42766,45.76339],[-0.43215,45.76699],[-0.44933,45.766],[-0.46315,45.75184],[-0.46001,45.73928],[-0.41584,45.74167],[-0.4002,45.73503],[-0.42007,45.72473],[-0.42212,45.70946],[-0.41494,45.69695],[-0.42292,45.68559],[-0.41054,45.68338],[-0.38238,45.65544],[-0.39764,45.65237],[-0.40873,45.65614],[-0.43252,45.625],[-0.4138,45.61614],[-0.38737,45.62668],[-0.38017,45.62214],[-0.3771,45.60929],[-0.3606,45.59785],[-0.31454,45.57929],[-0.29657,45.5645],[-0.31065,45.54369],[-0.32211,45.54104],[-0.32162,45.53496],[-0.30455,45.52804],[-0.29124,45.53153],[-0.27936,45.5251],[-0.28237,45.52071],[-0.26976,45.52561],[-0.25503,45.52118],[-0.25374,45.51694],[-0.26775,45.5086],[-0.25319,45.50129],[-0.24214,45.50312],[-0.24249,45.49015],[-0.24929,45.4931],[-0.25823,45.4887],[-0.26475,45.47069],[-0.2809,45.47422],[-0.28638,45.4574],[-0.26709,45.45519],[-0.26623,45.44793],[-0.24717,45.43536],[-0.25473,45.43046],[-0.25358,45.41802],[-0.23283,45.41951],[-0.23502,45.41071],[-0.2498,45.4096],[-0.25439,45.39874],[-0.25794,45.40199],[-0.27816,45.39872],[-0.27685,45.39123],[-0.28323,45.38843],[-0.31128,45.38453],[-0.30882,45.37306],[-0.27962,45.36476],[-0.28111,45.35497],[-0.24483,45.36062],[-0.2503,45.34134],[-0.26513,45.33913],[-0.27797,45.34798],[-0.28269,45.3389],[-0.27792,45.33664],[-0.29043,45.32726],[-0.28281,45.31929],[-0.28438,45.30896],[-0.25752,45.29879],[-0.25433,45.31156],[-0.23203,45.31375],[-0.22875,45.32166],[-0.22049,45.32243],[-0.2203,45.31676],[-0.19967,45.31167],[-0.19549,45.30493],[-0.1822,45.30904],[-0.1604,45.30651],[-0.14642,45.29873],[-0.14528,45.28818],[-0.12898,45.29464],[-0.10879,45.28895],[-0.11539,45.24807],[-0.04789,45.24885],[-0.04011,45.24668],[-0.03342,45.23448],[-0.01804,45.22889],[0.00368,45.22875],[-0.00245,45.19892],[0.00221,45.18443],[-0.01922,45.165],[0.00472,45.15374],[-0.03675,45.14075],[-0.02922,45.1279],[-0.04561,45.0979],[-0.06357,45.09915],[-0.0877,45.12139],[-0.11344,45.11501],[-0.14161,45.09],[-0.19096,45.09389],[-0.21853,45.10692],[-0.24684,45.10863],[-0.25853,45.1145],[-0.26822,45.13351],[-0.2812,45.14373],[-0.30804,45.14903],[-0.31376,45.13782],[-0.32064,45.15617],[-0.34918,45.16956],[-0.36385,45.17026],[-0.38493,45.14609],[-0.40167,45.18846],[-0.42077,45.20853],[-0.40511,45.23982],[-0.40728,45.24783],[-0.42464,45.24828],[-0.41864,45.27385],[-0.47309,45.29393],[-0.51359,45.28633],[-0.56103,45.29876],[-0.56579,45.29593],[-0.57538,45.31555],[-0.56897,45.33152],[-0.5852,45.34334],[-0.59384,45.33476],[-0.59448,45.32114],[-0.61464,45.32343],[-0.6446,45.31515],[-0.64431,45.32205],[-0.71367,45.3279],[-0.75268,45.32177],[-0.77402,45.36921],[-0.84106,45.43508],[-1.02574,45.57469],[-0.993,45.57718],[-0.98916,45.58134],[-0.99365,45.59759],[-1.01303,45.59963],[-1.00963,45.61143],[-1.02032,45.62152],[-1.02832,45.62321],[-1.03074,45.61657],[-1.04324,45.61754],[-1.07492,45.63801],[-1.11531,45.6465],[-1.20932,45.6967],[-1.2275,45.6943],[-1.23015,45.68906],[-1.21868,45.67452],[-1.19597,45.67363],[-1.213,45.67105],[-1.22829,45.67506],[-1.23806,45.71191],[-1.24257,45.78157],[-1.20896,45.79575],[-1.192,45.78937],[-1.15905,45.80166],[-1.14504,45.79696],[-1.1337,45.80276],[-1.13965,45.82374],[-1.15238,45.8324],[-1.15543,45.84495],[-1.16807,45.84515],[-1.16373,45.85091],[-1.17024,45.85593],[-1.15118,45.85211],[-1.15319,45.86236],[-1.12142,45.85641],[-1.11361,45.8593],[-1.07379,45.91423],[-1.07686,45.9367],[-1.09961,45.94438],[-1.09582,45.94891],[-1.06432,45.94991],[-1.06508,45.95588],[-1.08078,45.96324],[-1.08414,45.97993],[-1.12145,46.00297],[-1.09316,45.99182],[-1.08105,45.99655],[-1.06308,45.99443],[-1.05317,46.00338],[-1.06152,46.04527],[-1.08884,46.05395],[-1.10073,46.0938],[-1.11505,46.10232],[-1.14307,46.10632],[-1.12414,46.11204],[-1.12823,46.12655],[-1.14575,46.12705],[-1.15352,46.13698],[-1.17328,46.13803],[-1.16072,46.15549],[-1.18708,46.15341],[-1.20564,46.14581],[-1.22845,46.14972],[-1.24204,46.15745],[-1.23709,46.16602],[-1.22195,46.16723],[-1.21844,46.18012],[-1.20249,46.18895],[-1.19937,46.19896],[-1.20654,46.20436],[-1.199,46.21325],[-1.14845,46.23841],[-1.13933,46.25405],[-1.11116,46.26134],[-1.12101,46.28873],[-1.11476,46.29158],[-1.1216,46.28967],[-1.1294,46.31028]]],[[[-1.25027,45.84597],[-1.27005,45.88181],[-1.29335,45.89993],[-1.3047,45.90087],[-1.34138,45.91887],[-1.38598,45.95239],[-1.39578,45.97683],[-1.38787,46.00002],[-1.4124,46.04789],[-1.37023,46.03924],[-1.36951,46.02954],[-1.33611,46.01352],[-1.31515,45.99389],[-1.28577,45.98826],[-1.24675,45.99023],[-1.23755,45.98391],[-1.23266,45.9674],[-1.24168,45.95531],[-1.22631,45.9413],[-1.23377,45.92706],[-1.22009,45.91006],[-1.18741,45.8866],[-1.20771,45.85034],[-1.19545,45.82939],[-1.22958,45.80202],[-1.2429,45.8143],[-1.25027,45.84597]]]]}},{"type":"Feature","properties":{"code":"18","nom":"Cher"},"geometry":{"type":"Polygon","coordinates":[[[2.23921,47.62098],[2.28963,47.62906],[2.29117,47.62375],[2.32495,47.60757],[2.34244,47.60528],[2.37262,47.58553],[2.38106,47.59178],[2.39596,47.59249],[2.40075,47.59942],[2.4394,47.6095],[2.45017,47.60567],[2.45255,47.59676],[2.49136,47.5683],[2.54727,47.57518],[2.5632,47.57213],[2.57392,47.55944],[2.59391,47.55831],[2.61674,47.5409],[2.61532,47.52386],[2.65409,47.5122],[2.6551,47.49178],[2.66654,47.48509],[2.69034,47.4838],[2.72486,47.494],[2.72741,47.49889],[2.72002,47.50485],[2.72767,47.50681],[2.72376,47.51608],[2.72956,47.52033],[2.72234,47.5213],[2.73262,47.53804],[2.746,47.52482],[2.76712,47.5251],[2.78529,47.51595],[2.78459,47.5101],[2.79636,47.50551],[2.79324,47.4977],[2.80781,47.49436],[2.82535,47.49721],[2.83469,47.50891],[2.84708,47.51367],[2.87463,47.52042],[2.87984,47.51671],[2.89023,47.50663],[2.89852,47.4816],[2.91406,47.4709],[2.93195,47.43946],[2.91989,47.42117],[2.91845,47.40553],[2.86995,47.33825],[2.87655,47.32193],[2.91231,47.30886],[2.98309,47.26081],[2.97888,47.22957],[3.00967,47.17905],[3.02063,47.15322],[3.01664,47.14087],[3.02809,47.12907],[3.03138,47.09248],[3.01934,47.06817],[3.02955,47.05839],[3.06382,47.04608],[3.07516,47.02932],[3.06258,46.9792],[3.07934,46.96024],[3.04999,46.90771],[3.06697,46.88178],[3.06891,46.85073],[3.05568,46.84106],[3.05887,46.82628],[3.04134,46.81302],[3.03207,46.79491],[3.02465,46.79401],[3.01752,46.7999],[2.99259,46.79708],[2.98238,46.80294],[2.9628,46.80399],[2.95323,46.79113],[2.93152,46.79575],[2.91327,46.79103],[2.90792,46.78768],[2.91039,46.77939],[2.87617,46.76845],[2.87702,46.76147],[2.84542,46.74286],[2.84677,46.72706],[2.83521,46.72801],[2.82749,46.73533],[2.79509,46.73434],[2.7859,46.7225],[2.77371,46.71823],[2.77035,46.72328],[2.75852,46.71775],[2.73453,46.74622],[2.72886,46.74849],[2.7186,46.74168],[2.7145,46.74449],[2.70498,46.73939],[2.70228,46.71817],[2.69612,46.72347],[2.69169,46.7196],[2.68556,46.72262],[2.68596,46.71435],[2.6716,46.70886],[2.67438,46.70193],[2.65473,46.69654],[2.64513,46.68725],[2.6396,46.69154],[2.62337,46.68964],[2.62005,46.67972],[2.62499,46.67314],[2.63369,46.67527],[2.62864,46.65954],[2.62391,46.65663],[2.60715,46.6605],[2.60543,46.67121],[2.59777,46.66465],[2.57455,46.6612],[2.56713,46.65374],[2.5931,46.64658],[2.59665,46.63722],[2.58425,46.62582],[2.58832,46.61596],[2.56838,46.60938],[2.57778,46.60788],[2.58156,46.59316],[2.60011,46.59524],[2.60938,46.57133],[2.60328,46.56428],[2.61496,46.55328],[2.53665,46.5197],[2.52937,46.52327],[2.53076,46.52943],[2.52053,46.53089],[2.50708,46.52164],[2.49718,46.52152],[2.49695,46.53367],[2.44549,46.52005],[2.43006,46.52654],[2.41695,46.52057],[2.35985,46.51588],[2.32377,46.49011],[2.32983,46.47854],[2.32299,46.46968],[2.30547,46.47543],[2.30079,46.47237],[2.28335,46.44928],[2.27694,46.42513],[2.28105,46.42041],[2.24987,46.42636],[2.21424,46.42319],[2.19933,46.4283],[2.17254,46.42228],[2.15435,46.43408],[2.15813,46.44044],[2.1514,46.4577],[2.19316,46.47026],[2.20432,46.48422],[2.20437,46.4906],[2.1944,46.49608],[2.19862,46.50234],[2.18342,46.50898],[2.18108,46.52904],[2.15889,46.55753],[2.17465,46.56448],[2.16715,46.58898],[2.17696,46.60168],[2.18628,46.60395],[2.18749,46.61672],[2.17962,46.62813],[2.18945,46.64214],[2.17945,46.64253],[2.17584,46.65085],[2.16284,46.64633],[2.16289,46.65412],[2.13907,46.66429],[2.13667,46.67728],[2.14798,46.67712],[2.14437,46.68211],[2.15545,46.69216],[2.14072,46.69555],[2.11811,46.71027],[2.10184,46.70784],[2.08696,46.71258],[2.09122,46.72744],[2.07188,46.73513],[2.06689,46.7515],[2.09594,46.75548],[2.10715,46.7653],[2.10763,46.77592],[2.1149,46.77355],[2.11665,46.77972],[2.09586,46.80122],[2.0725,46.80881],[2.04496,46.8365],[2.07631,46.83469],[2.09646,46.85525],[2.08297,46.86858],[2.10695,46.87214],[2.11421,46.88043],[2.1264,46.88005],[2.15483,46.91163],[2.14674,46.91759],[2.11,46.91339],[2.07038,46.9344],[2.0702,46.95442],[2.08825,46.96045],[2.08668,46.97317],[2.09628,46.9852],[2.09212,46.98816],[2.10886,46.99719],[2.09338,47.01574],[2.06372,47.02795],[2.05148,47.04213],[2.02882,47.04585],[2.04122,47.06554],[2.05568,47.07169],[2.04718,47.09444],[2.05339,47.10349],[2.04884,47.10676],[2.02453,47.10445],[2.02894,47.0951],[2.00332,47.09418],[2.01257,47.11139],[2.00024,47.11392],[1.99666,47.127],[1.9733,47.12054],[1.96366,47.12465],[1.92336,47.10193],[1.90493,47.1091],[1.88307,47.10051],[1.84886,47.10937],[1.82713,47.12183],[1.80423,47.11906],[1.77478,47.13062],[1.80824,47.15323],[1.81084,47.16426],[1.82256,47.17345],[1.84224,47.17758],[1.83908,47.21931],[1.84965,47.21809],[1.85279,47.22215],[1.87301,47.20532],[1.90381,47.21525],[1.91659,47.23599],[1.90952,47.24379],[1.89218,47.24876],[1.89477,47.25466],[1.92463,47.26466],[1.92322,47.27469],[1.9426,47.29099],[1.99849,47.26405],[2.00779,47.26862],[2.02453,47.26512],[2.07729,47.2858],[2.10504,47.28613],[2.11169,47.27944],[2.12867,47.27984],[2.1381,47.28417],[2.13849,47.29286],[2.15808,47.29864],[2.14942,47.31877],[2.14539,47.31544],[2.13162,47.32095],[2.12918,47.33295],[2.11939,47.33342],[2.12769,47.34496],[2.11395,47.37002],[2.09708,47.3668],[2.10312,47.39258],[2.11703,47.41011],[2.11499,47.42126],[2.13798,47.40596],[2.1889,47.43779],[2.20523,47.40525],[2.23039,47.40752],[2.24369,47.41482],[2.24789,47.4414],[2.23494,47.4517],[2.24522,47.45822],[2.23697,47.47126],[2.24775,47.49173],[2.22803,47.49698],[2.19607,47.4879],[2.21529,47.52211],[2.19784,47.54592],[2.12854,47.55126],[2.12378,47.55997],[2.12773,47.57006],[2.11958,47.58295],[2.14188,47.59005],[2.15135,47.6005],[2.19701,47.60695],[2.23921,47.62098]]]}},{"type":"Feature","properties":{"code":"19","nom":"Corr\xE8ze"},"geometry":{"type":"Polygon","coordinates":[[[1.89873,45.69828],[1.90415,45.70356],[1.9141,45.7036],[1.91168,45.70826],[1.92237,45.71366],[1.93302,45.70601],[1.94842,45.70593],[1.94139,45.71306],[1.95658,45.72476],[1.99144,45.72081],[2.00152,45.74879],[2.01761,45.75549],[2.03651,45.7541],[2.05206,45.76512],[2.05842,45.75448],[2.0839,45.74603],[2.08469,45.72805],[2.097,45.73419],[2.11355,45.72478],[2.13362,45.73548],[2.14451,45.72317],[2.15658,45.72164],[2.16438,45.73634],[2.17647,45.73173],[2.18299,45.72062],[2.20767,45.71562],[2.19874,45.71214],[2.19448,45.69864],[2.21084,45.70185],[2.21152,45.71283],[2.22363,45.69584],[2.23183,45.70012],[2.2529,45.6888],[2.27107,45.69165],[2.26885,45.66336],[2.28252,45.66404],[2.30805,45.67642],[2.32094,45.66859],[2.32621,45.6716],[2.32275,45.67655],[2.33775,45.6806],[2.34835,45.69262],[2.34392,45.70651],[2.34854,45.70921],[2.3682,45.71321],[2.38283,45.70754],[2.41025,45.70963],[2.43586,45.69928],[2.4437,45.70777],[2.45416,45.70789],[2.46343,45.71778],[2.4729,45.7191],[2.47031,45.72776],[2.4938,45.73771],[2.52301,45.71145],[2.51891,45.69764],[2.52868,45.6822],[2.5175,45.67817],[2.51259,45.66976],[2.51904,45.65923],[2.52828,45.65854],[2.51654,45.63897],[2.49198,45.63776],[2.4875,45.6424],[2.48339,45.6393],[2.48036,45.61151],[2.46117,45.59646],[2.47524,45.58236],[2.47112,45.57922],[2.49146,45.56795],[2.49093,45.56039],[2.50096,45.55354],[2.51684,45.55302],[2.5194,45.53224],[2.51176,45.5251],[2.52039,45.52045],[2.50778,45.50311],[2.51389,45.49235],[2.50974,45.4731],[2.49941,45.46025],[2.5025,45.44787],[2.4956,45.4455],[2.48754,45.41816],[2.52127,45.40264],[2.52787,45.39161],[2.52318,45.38281],[2.48577,45.37895],[2.47662,45.37028],[2.47025,45.37384],[2.47498,45.3813],[2.44186,45.38426],[2.42267,45.39723],[2.39879,45.39999],[2.3875,45.41196],[2.36957,45.41615],[2.35066,45.41292],[2.36936,45.3865],[2.36297,45.37842],[2.36513,45.35608],[2.35026,45.34604],[2.35976,45.33651],[2.35166,45.32783],[2.31575,45.32183],[2.29022,45.28805],[2.26899,45.28939],[2.25856,45.27022],[2.24284,45.26535],[2.24027,45.24759],[2.22569,45.24451],[2.20172,45.22244],[2.18932,45.22211],[2.19665,45.21612],[2.18987,45.20406],[2.19988,45.19797],[2.20133,45.17979],[2.23174,45.17006],[2.232,45.16398],[2.20843,45.16032],[2.21157,45.14844],[2.20256,45.13916],[2.19411,45.13479],[2.17879,45.1363],[2.19034,45.11612],[2.18058,45.11255],[2.17455,45.08226],[2.14018,45.08652],[2.12069,45.06989],[2.10406,45.06675],[2.10074,45.056],[2.09516,45.05603],[2.11083,45.04054],[2.11598,45.02224],[2.14089,45.00653],[2.13329,44.98574],[2.11421,44.98553],[2.10219,44.98023],[2.09304,44.98589],[2.0588,44.97461],[2.04544,44.98367],[1.99148,44.97591],[1.94916,44.95252],[1.94028,44.95289],[1.93907,44.97322],[1.92883,44.97867],[1.90866,44.97842],[1.88729,44.96272],[1.88742,44.95657],[1.86861,44.95406],[1.86321,44.94783],[1.84488,44.94307],[1.84277,44.93708],[1.83117,44.94549],[1.82391,44.92768],[1.80915,44.92825],[1.80129,44.92209],[1.7983,44.93032],[1.7857,44.93691],[1.78632,44.93093],[1.77493,44.92372],[1.76729,44.93368],[1.74934,44.93758],[1.75589,44.94627],[1.7508,44.95573],[1.7339,44.95943],[1.72494,44.9681],[1.71103,44.96729],[1.70266,44.98783],[1.68437,45.00266],[1.66381,45.00884],[1.65189,45.02529],[1.62996,45.03357],[1.60772,45.03177],[1.57631,45.0407],[1.54512,45.02888],[1.53747,45.04669],[1.48254,45.03019],[1.47689,45.01854],[1.46199,45.0137],[1.44432,45.01996],[1.41727,45.0498],[1.40751,45.05306],[1.4134,45.06093],[1.39956,45.06118],[1.40691,45.06997],[1.39048,45.08838],[1.39418,45.09569],[1.37751,45.10473],[1.41023,45.11288],[1.4129,45.12508],[1.3852,45.13562],[1.35526,45.13244],[1.35198,45.14163],[1.33209,45.13756],[1.32132,45.14309],[1.30952,45.13484],[1.25529,45.15864],[1.25505,45.16543],[1.26937,45.16475],[1.29212,45.18651],[1.27232,45.20176],[1.23229,45.1977],[1.22851,45.20307],[1.23361,45.2222],[1.26395,45.23097],[1.27451,45.23791],[1.2785,45.25014],[1.27448,45.25708],[1.25458,45.25487],[1.23938,45.26044],[1.24196,45.26627],[1.2284,45.27222],[1.23243,45.29106],[1.24026,45.29207],[1.24156,45.30063],[1.2358,45.32204],[1.26517,45.32304],[1.27937,45.33504],[1.28522,45.35318],[1.31579,45.36091],[1.32507,45.38012],[1.2936,45.39759],[1.29404,45.39117],[1.27993,45.38388],[1.27618,45.40341],[1.26993,45.39607],[1.25968,45.39794],[1.25913,45.41976],[1.27843,45.41265],[1.28623,45.41557],[1.29039,45.42159],[1.28252,45.43235],[1.29405,45.43413],[1.28364,45.43767],[1.2756,45.43369],[1.26887,45.44113],[1.25184,45.44619],[1.25676,45.45231],[1.26419,45.45179],[1.26266,45.46797],[1.27035,45.47759],[1.28746,45.48175],[1.28532,45.49028],[1.35008,45.46689],[1.37176,45.49241],[1.3896,45.49616],[1.39036,45.50562],[1.40833,45.52731],[1.42568,45.53088],[1.43954,45.52041],[1.45417,45.53812],[1.45194,45.55322],[1.47551,45.55331],[1.48037,45.56594],[1.49223,45.56086],[1.4933,45.54967],[1.51792,45.55552],[1.51856,45.56434],[1.53205,45.56196],[1.53295,45.55689],[1.55101,45.55683],[1.55495,45.54948],[1.5826,45.55499],[1.59998,45.58146],[1.61806,45.57663],[1.62624,45.57704],[1.62853,45.58286],[1.63766,45.58035],[1.63723,45.58444],[1.65788,45.59361],[1.6602,45.60797],[1.70891,45.64182],[1.72742,45.6381],[1.74387,45.64668],[1.75088,45.6447],[1.75404,45.65538],[1.7764,45.65846],[1.78583,45.68266],[1.79651,45.68056],[1.79813,45.67319],[1.81538,45.6811],[1.83197,45.66349],[1.84776,45.66176],[1.8546,45.67228],[1.87482,45.66467],[1.88198,45.66753],[1.87706,45.67102],[1.88183,45.68194],[1.90365,45.67778],[1.9112,45.68065],[1.90918,45.69216],[1.9018,45.69181],[1.89873,45.69828]]]}},{"type":"Feature","properties":{"code":"21","nom":"C\xF4te-d'Or"},"geometry":{"type":"MultiPolygon","coordinates":[[[[4.11597,47.12334],[4.10683,47.13],[4.11935,47.13624],[4.11037,47.14287],[4.11507,47.14616],[4.13738,47.14271],[4.17374,47.14736],[4.1793,47.15177],[4.19025,47.1461],[4.18446,47.12941],[4.16869,47.12328],[4.17753,47.11342],[4.1608,47.12187],[4.14743,47.11398],[4.12682,47.13063],[4.11597,47.12334]]],[[[4.29342,47.92568],[4.30287,47.93851],[4.29792,47.9497],[4.3128,47.9625],[4.34321,47.95586],[4.4179,47.96846],[4.44696,47.9562],[4.49331,47.96818],[4.55424,47.96748],[4.55997,47.97142],[4.55706,47.98187],[4.54093,47.99212],[4.53577,48.00657],[4.54942,48.00446],[4.57863,48.02909],[4.61681,48.03137],[4.62195,48.02435],[4.64768,48.02568],[4.65584,48.01747],[4.66551,48.02079],[4.67323,48.01505],[4.70037,48.02374],[4.71994,48.0089],[4.74214,48.00462],[4.78908,48.00783],[4.79325,47.99654],[4.81024,47.98858],[4.79497,47.98446],[4.78651,47.9642],[4.81101,47.95933],[4.81982,47.96449],[4.84518,47.96125],[4.8661,47.94051],[4.84639,47.9274],[4.84677,47.92131],[4.83122,47.91787],[4.83404,47.90679],[4.86043,47.89631],[4.86934,47.91745],[4.90291,47.92104],[4.92858,47.88623],[4.92746,47.87155],[4.95409,47.86677],[4.9634,47.85221],[4.96043,47.8394],[4.99413,47.81975],[4.98226,47.80009],[4.91796,47.77709],[4.9238,47.77342],[4.91714,47.7669],[4.9267,47.76484],[4.92268,47.75895],[4.94741,47.76659],[4.95899,47.76187],[4.96615,47.74056],[4.9568,47.73245],[4.97003,47.73553],[4.97166,47.72941],[4.95414,47.70146],[4.97198,47.69157],[4.96909,47.68583],[4.99675,47.68997],[5.00465,47.70122],[5.02915,47.70992],[5.03393,47.70162],[5.02877,47.69328],[5.06065,47.69479],[5.04359,47.67652],[5.0535,47.66827],[5.06738,47.66502],[5.06916,47.66858],[5.08612,47.65662],[5.10396,47.65885],[5.10888,47.64968],[5.11686,47.65202],[5.12537,47.64677],[5.13857,47.65086],[5.13533,47.65373],[5.15496,47.66721],[5.16186,47.6805],[5.17834,47.68095],[5.1736,47.65257],[5.21141,47.64189],[5.23024,47.62954],[5.23694,47.61678],[5.2586,47.62221],[5.23802,47.59654],[5.25312,47.57685],[5.2779,47.58136],[5.27783,47.58978],[5.29821,47.60434],[5.31455,47.60621],[5.32234,47.61236],[5.34547,47.60474],[5.34211,47.59466],[5.35557,47.59147],[5.36974,47.60541],[5.39588,47.59492],[5.42559,47.63207],[5.44158,47.62999],[5.47081,47.60841],[5.47755,47.60872],[5.48824,47.57701],[5.48049,47.56395],[5.49129,47.56338],[5.49706,47.55418],[5.4864,47.52697],[5.47194,47.52727],[5.43888,47.49243],[5.42904,47.49246],[5.43162,47.49802],[5.39922,47.49901],[5.38762,47.48212],[5.40764,47.47724],[5.3673,47.46447],[5.38616,47.45903],[5.37984,47.45069],[5.40676,47.46182],[5.41591,47.45824],[5.41823,47.44891],[5.43882,47.45043],[5.43043,47.42136],[5.44454,47.4041],[5.43578,47.4028],[5.43383,47.39313],[5.45181,47.3832],[5.47738,47.39529],[5.49714,47.38984],[5.488,47.36201],[5.49531,47.3389],[5.48716,47.32652],[5.47691,47.3312],[5.4701,47.31654],[5.49811,47.31563],[5.51816,47.30239],[5.50498,47.28322],[5.48828,47.28935],[5.48816,47.2681],[5.48006,47.25635],[5.4863,47.2434],[5.47402,47.23109],[5.48001,47.21737],[5.44575,47.19958],[5.45915,47.18702],[5.45111,47.16234],[5.43782,47.15279],[5.43851,47.14153],[5.40854,47.12666],[5.41066,47.11409],[5.39824,47.10551],[5.39886,47.09573],[5.39043,47.08636],[5.37654,47.0785],[5.35947,47.08082],[5.32659,47.07521],[5.31136,47.05814],[5.30577,47.06302],[5.28392,47.04791],[5.27533,47.02693],[5.31801,47.01547],[5.30453,47.01209],[5.3008,47.00197],[5.27429,46.99837],[5.27465,46.99152],[5.25524,46.97989],[5.22201,46.98886],[5.2122,46.98015],[5.20303,46.98446],[5.19402,46.97713],[5.19578,46.97047],[5.18166,46.97483],[5.16623,46.96387],[5.1539,46.96704],[5.14049,46.96188],[5.12017,46.96319],[5.10725,46.95868],[5.09753,46.94487],[5.10259,46.95753],[5.09496,46.9548],[5.09128,46.96049],[5.07397,46.95967],[5.07342,46.96702],[5.06593,46.96701],[5.0493,46.98159],[5.03048,46.98114],[5.01689,46.96849],[5.00341,46.97214],[4.99523,46.96142],[5.00231,46.95806],[4.94906,46.96618],[4.89469,46.96632],[4.89364,46.95086],[4.85343,46.94567],[4.80871,46.93063],[4.78847,46.93187],[4.79194,46.92604],[4.77459,46.91687],[4.75468,46.91668],[4.74451,46.92443],[4.72813,46.91937],[4.72174,46.92185],[4.71746,46.90795],[4.6871,46.90011],[4.66452,46.91416],[4.67909,46.93024],[4.65012,46.94127],[4.61643,46.94149],[4.61677,46.94805],[4.58956,46.95571],[4.59224,46.96812],[4.57366,46.97339],[4.56704,46.99273],[4.54787,46.99206],[4.55788,47.00816],[4.55481,47.02005],[4.52862,47.0116],[4.51224,47.01178],[4.48975,47.03344],[4.4716,47.03049],[4.45528,47.04209],[4.42765,47.03737],[4.42203,47.04702],[4.40093,47.05293],[4.40815,47.0645],[4.40492,47.06956],[4.41626,47.07659],[4.39953,47.08324],[4.37053,47.07957],[4.3588,47.06191],[4.34425,47.07243],[4.34678,47.1014],[4.30653,47.10327],[4.29714,47.11315],[4.2747,47.10714],[4.25379,47.11743],[4.25693,47.1258],[4.24267,47.13291],[4.24402,47.14108],[4.23664,47.14323],[4.2419,47.14823],[4.2324,47.14249],[4.22616,47.14723],[4.2132,47.14438],[4.21016,47.17997],[4.22931,47.19334],[4.22878,47.2081],[4.22015,47.21404],[4.22146,47.21969],[4.19244,47.2342],[4.17927,47.25457],[4.13595,47.23757],[4.12558,47.2475],[4.12027,47.26868],[4.1252,47.27364],[4.11643,47.27639],[4.11459,47.29261],[4.13389,47.3063],[4.12375,47.30317],[4.11411,47.30796],[4.12891,47.31745],[4.1249,47.33586],[4.14332,47.35429],[4.13384,47.35606],[4.11619,47.33663],[4.10628,47.3352],[4.10664,47.35198],[4.09794,47.35535],[4.09788,47.36161],[4.106,47.36269],[4.10678,47.37627],[4.09919,47.37121],[4.09343,47.3775],[4.08791,47.37232],[4.0789,47.37694],[4.07724,47.38427],[4.09003,47.39461],[4.06677,47.39851],[4.0652,47.40726],[4.07163,47.40743],[4.0736,47.4151],[4.08453,47.42065],[4.08014,47.44083],[4.09863,47.43046],[4.10834,47.43743],[4.10113,47.44388],[4.11943,47.44355],[4.12981,47.4626],[4.12976,47.47484],[4.11538,47.4814],[4.12339,47.49059],[4.1124,47.5035],[4.11761,47.50638],[4.11463,47.51475],[4.13875,47.51919],[4.15071,47.5325],[4.14592,47.54045],[4.15653,47.55162],[4.17442,47.5521],[4.19887,47.59571],[4.19686,47.6046],[4.21424,47.60153],[4.21212,47.62815],[4.22255,47.63109],[4.22837,47.64323],[4.24911,47.65949],[4.22564,47.67116],[4.22661,47.67821],[4.25041,47.6767],[4.25181,47.68391],[4.28406,47.68266],[4.26641,47.68993],[4.26183,47.69423],[4.2675,47.70547],[4.25669,47.70673],[4.25283,47.71602],[4.24118,47.71666],[4.23946,47.72443],[4.25798,47.72583],[4.2605,47.7422],[4.29304,47.73285],[4.3092,47.75128],[4.3143,47.74895],[4.33247,47.75651],[4.32904,47.77003],[4.33495,47.77802],[4.32723,47.78566],[4.3403,47.79957],[4.31998,47.81143],[4.32541,47.82087],[4.31929,47.83744],[4.33032,47.83766],[4.32977,47.84621],[4.30081,47.84877],[4.2713,47.83878],[4.261,47.84385],[4.26456,47.8737],[4.24638,47.87387],[4.27849,47.89993],[4.31115,47.90392],[4.30587,47.92034],[4.29342,47.92568]]]]}},{"type":"Feature","properties":{"code":"22","nom":"C\xF4tes-d'Armor"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-2.9821,48.79606],[-2.98283,48.79951],[-2.97642,48.79837],[-2.9821,48.79606]]],[[[-3.00232,48.83632],[-3.00254,48.84014],[-3.01149,48.83703],[-3.01414,48.85015],[-2.99864,48.85156],[-3.01316,48.85691],[-2.98676,48.86491],[-2.98675,48.85919],[-2.99505,48.85956],[-2.99329,48.84874],[-3.00232,48.83632]]],[[[-3.58388,48.79409],[-3.58511,48.80441],[-3.56317,48.80537],[-3.57012,48.79724],[-3.58006,48.79871],[-3.58388,48.79409]]],[[[-3.59313,48.79551],[-3.60213,48.79824],[-3.59316,48.80092],[-3.59313,48.79551]]],[[[-3.1839,48.86442],[-3.1853,48.87273],[-3.19406,48.87538],[-3.18171,48.87435],[-3.1839,48.86442]]],[[[-3.03963,48.85919],[-3.04463,48.86062],[-3.03202,48.8627],[-3.03963,48.85919]]],[[[-2.12371,48.60441],[-2.12471,48.59135],[-2.09499,48.57095],[-2.05844,48.57038],[-2.0448,48.5642],[-2.04529,48.55739],[-2.0536,48.55399],[-2.04435,48.54134],[-2.00413,48.56874],[-1.98676,48.55062],[-1.98923,48.54544],[-1.97372,48.54413],[-1.97234,48.53464],[-1.9928,48.52332],[-1.98531,48.52441],[-1.98585,48.5167],[-1.98005,48.5162],[-1.98569,48.51162],[-1.98243,48.50058],[-2.00166,48.49173],[-1.98162,48.49835],[-1.98131,48.50957],[-1.97014,48.51216],[-1.96473,48.52633],[-1.94818,48.51917],[-1.95457,48.52194],[-1.95067,48.53402],[-1.93328,48.55031],[-1.92194,48.54375],[-1.92665,48.53785],[-1.91925,48.53538],[-1.91053,48.51482],[-1.91148,48.50617],[-1.92282,48.50494],[-1.92312,48.49881],[-1.909,48.48155],[-1.92846,48.47555],[-1.93282,48.47034],[-1.92417,48.46252],[-1.9263,48.45595],[-1.93889,48.44701],[-1.94863,48.44646],[-1.95216,48.43043],[-1.93679,48.42007],[-1.941,48.41067],[-1.9364,48.40666],[-1.94292,48.40056],[-1.92997,48.39479],[-1.93983,48.39298],[-1.94712,48.36672],[-1.94279,48.36035],[-1.93309,48.36068],[-1.92908,48.34704],[-1.9669,48.34282],[-1.95402,48.31556],[-1.959,48.31448],[-1.95661,48.30696],[-1.96824,48.30332],[-1.95644,48.29643],[-1.96462,48.29039],[-1.97506,48.30175],[-1.99316,48.29885],[-1.99939,48.29042],[-2.00489,48.2916],[-2.00217,48.28053],[-2.0141,48.27953],[-2.04928,48.28993],[-2.05329,48.29833],[-2.07949,48.29282],[-2.07497,48.28491],[-2.08055,48.27704],[-2.11046,48.27506],[-2.11447,48.27071],[-2.1094,48.26762],[-2.09578,48.2668],[-2.10368,48.25793],[-2.11119,48.25742],[-2.1066,48.25179],[-2.12412,48.25947],[-2.15444,48.26124],[-2.18675,48.24779],[-2.19088,48.22537],[-2.18445,48.21021],[-2.20196,48.20765],[-2.21254,48.21403],[-2.22824,48.21018],[-2.2183,48.20422],[-2.22302,48.17405],[-2.22851,48.16509],[-2.24897,48.1566],[-2.23589,48.14481],[-2.25042,48.14388],[-2.25927,48.15133],[-2.27113,48.1515],[-2.28325,48.1453],[-2.28728,48.13375],[-2.30772,48.13677],[-2.32118,48.13299],[-2.32303,48.12197],[-2.33652,48.11931],[-2.33773,48.12535],[-2.34919,48.12651],[-2.35753,48.11132],[-2.37541,48.12695],[-2.37445,48.14023],[-2.39901,48.15377],[-2.40641,48.16781],[-2.41845,48.17282],[-2.44924,48.17301],[-2.45331,48.1637],[-2.47181,48.15997],[-2.47916,48.16737],[-2.48783,48.16643],[-2.48781,48.1553],[-2.50907,48.16009],[-2.53217,48.15782],[-2.53171,48.15034],[-2.51654,48.142],[-2.51397,48.13242],[-2.53264,48.10882],[-2.5541,48.09809],[-2.54837,48.09415],[-2.5523,48.08146],[-2.54773,48.07715],[-2.56116,48.07407],[-2.56497,48.06733],[-2.57735,48.07088],[-2.59063,48.05571],[-2.62821,48.0338],[-2.63604,48.0378],[-2.64543,48.03546],[-2.64512,48.04209],[-2.65557,48.03259],[-2.65914,48.04478],[-2.67038,48.04841],[-2.66556,48.05641],[-2.67301,48.06266],[-2.65027,48.09792],[-2.65684,48.10687],[-2.65231,48.11878],[-2.66098,48.13062],[-2.67623,48.13181],[-2.70238,48.1188],[-2.70398,48.11243],[-2.72481,48.11419],[-2.72437,48.11736],[-2.755,48.1154],[-2.76001,48.09842],[-2.7731,48.08637],[-2.78204,48.12094],[-2.80612,48.1407],[-2.80381,48.14459],[-2.81752,48.14701],[-2.85292,48.14157],[-2.88224,48.1528],[-2.89145,48.16473],[-2.9027,48.16275],[-2.93969,48.17158],[-2.96128,48.16993],[-2.98207,48.16038],[-2.99975,48.16071],[-2.99564,48.17072],[-3.01177,48.17215],[-3.01263,48.18527],[-3.02044,48.19244],[-3.01493,48.19796],[-3.02851,48.19576],[-3.03732,48.20399],[-3.06945,48.20502],[-3.07801,48.21088],[-3.09373,48.20191],[-3.09641,48.20571],[-3.11534,48.20677],[-3.12027,48.20041],[-3.13004,48.20032],[-3.13673,48.19022],[-3.13022,48.17687],[-3.1395,48.16369],[-3.15525,48.15849],[-3.15812,48.16791],[-3.17537,48.1589],[-3.19155,48.16476],[-3.21438,48.15445],[-3.2122,48.14287],[-3.24109,48.1516],[-3.25946,48.14329],[-3.2679,48.14532],[-3.27224,48.14001],[-3.27511,48.14357],[-3.28291,48.14162],[-3.29088,48.15296],[-3.3001,48.15482],[-3.31614,48.15549],[-3.31812,48.14885],[-3.3254,48.15017],[-3.32356,48.16068],[-3.33772,48.17077],[-3.34974,48.16477],[-3.37272,48.16478],[-3.3936,48.15164],[-3.40232,48.15694],[-3.4176,48.14564],[-3.43652,48.15549],[-3.43844,48.16256],[-3.42109,48.17446],[-3.43805,48.18412],[-3.45289,48.1774],[-3.46318,48.18097],[-3.46997,48.17768],[-3.4788,48.18621],[-3.53612,48.17794],[-3.55554,48.17988],[-3.56598,48.18687],[-3.56667,48.19003],[-3.54437,48.19381],[-3.51942,48.18947],[-3.52118,48.20223],[-3.53966,48.20653],[-3.55778,48.22853],[-3.55607,48.24202],[-3.54235,48.24351],[-3.53583,48.25585],[-3.52688,48.25325],[-3.5268,48.27238],[-3.51868,48.28091],[-3.555,48.29372],[-3.55248,48.29936],[-3.54087,48.29905],[-3.52834,48.31667],[-3.51853,48.31886],[-3.52539,48.32335],[-3.54095,48.31172],[-3.55094,48.31513],[-3.55539,48.34498],[-3.56324,48.34786],[-3.55583,48.35588],[-3.5543,48.37886],[-3.56766,48.37667],[-3.60768,48.38832],[-3.60114,48.39363],[-3.60054,48.42162],[-3.5505,48.44783],[-3.55357,48.45376],[-3.56765,48.45239],[-3.58226,48.4648],[-3.59315,48.46392],[-3.60002,48.47853],[-3.60762,48.47839],[-3.60133,48.4849],[-3.60454,48.49579],[-3.58418,48.50447],[-3.55808,48.5288],[-3.54106,48.53712],[-3.5524,48.54055],[-3.57147,48.55832],[-3.58171,48.55296],[-3.59873,48.5572],[-3.58424,48.57429],[-3.58864,48.58272],[-3.61761,48.59018],[-3.62917,48.58786],[-3.6406,48.59605],[-3.63843,48.61023],[-3.64938,48.61015],[-3.65428,48.61697],[-3.66543,48.6532],[-3.65437,48.66421],[-3.63499,48.67122],[-3.63735,48.68057],[-3.62405,48.68624],[-3.61649,48.684],[-3.60967,48.66966],[-3.58125,48.67002],[-3.57002,48.67814],[-3.56881,48.68628],[-3.58455,48.69087],[-3.57989,48.69684],[-3.5843,48.71853],[-3.58171,48.72351],[-3.56605,48.72619],[-3.5649,48.73144],[-3.55537,48.72751],[-3.54959,48.74667],[-3.56602,48.76047],[-3.58499,48.75701],[-3.57809,48.7627],[-3.58593,48.77739],[-3.567,48.7979],[-3.55444,48.79157],[-3.53518,48.80203],[-3.53693,48.81149],[-3.54804,48.81197],[-3.54007,48.81617],[-3.54133,48.82268],[-3.51957,48.81898],[-3.52567,48.83003],[-3.50352,48.8387],[-3.51065,48.83433],[-3.50306,48.82429],[-3.50242,48.82933],[-3.48575,48.82644],[-3.49118,48.83198],[-3.48081,48.83784],[-3.46037,48.81678],[-3.42823,48.82039],[-3.44241,48.80502],[-3.44056,48.79831],[-3.39754,48.80075],[-3.38745,48.80486],[-3.38918,48.81569],[-3.35258,48.82055],[-3.32206,48.83803],[-3.29315,48.83],[-3.27671,48.84334],[-3.27592,48.83828],[-3.26433,48.8342],[-3.2572,48.84799],[-3.2348,48.86198],[-3.23547,48.86732],[-3.22448,48.86992],[-3.20601,48.84739],[-3.21046,48.84856],[-3.21827,48.83529],[-3.20273,48.83492],[-3.20682,48.81397],[-3.23669,48.78876],[-3.22973,48.79177],[-3.21969,48.78378],[-3.22356,48.79644],[-3.19898,48.81593],[-3.19922,48.82539],[-3.18282,48.84377],[-3.1736,48.84188],[-3.16794,48.85315],[-3.14711,48.8538],[-3.12983,48.86436],[-3.09498,48.86937],[-3.07417,48.88202],[-3.10145,48.86662],[-3.08513,48.86735],[-3.07595,48.85774],[-3.08648,48.86346],[-3.0935,48.86069],[-3.08417,48.84725],[-3.09751,48.83241],[-3.07162,48.83057],[-3.08489,48.82571],[-3.08844,48.81143],[-3.09878,48.80481],[-3.09899,48.78365],[-3.12343,48.77261],[-3.12348,48.76008],[-3.09765,48.76893],[-3.10418,48.78048],[-3.09499,48.78132],[-3.08819,48.80604],[-3.07277,48.82042],[-3.05491,48.82249],[-3.05235,48.8154],[-3.0191,48.82211],[-3.00899,48.81965],[-3.01681,48.8104],[-3.00236,48.80364],[-3.00493,48.799],[-3.01744,48.79856],[-3.025,48.79144],[-3.0464,48.78557],[-3.00994,48.78215],[-3.02874,48.77801],[-3.01581,48.76632],[-2.96454,48.7625],[-2.9516,48.77167],[-2.95037,48.76329],[-2.92846,48.75475],[-2.94165,48.74531],[-2.93417,48.73709],[-2.94828,48.72629],[-2.9451,48.72081],[-2.93046,48.7195],[-2.92107,48.70597],[-2.89048,48.69877],[-2.88329,48.69032],[-2.88306,48.67549],[-2.86598,48.67159],[-2.85908,48.67515],[-2.83777,48.65602],[-2.82653,48.65536],[-2.82318,48.62419],[-2.81413,48.61023],[-2.82386,48.59721],[-2.79324,48.58495],[-2.77901,48.58469],[-2.77507,48.57198],[-2.76463,48.56689],[-2.71427,48.55564],[-2.7248,48.54691],[-2.71814,48.5396],[-2.72111,48.53131],[-2.71027,48.53296],[-2.71674,48.52447],[-2.68157,48.4917],[-2.67691,48.49186],[-2.68478,48.49805],[-2.67547,48.50869],[-2.68209,48.53201],[-2.6695,48.53568],[-2.65466,48.52515],[-2.63029,48.52609],[-2.63254,48.5373],[-2.58035,48.56955],[-2.56978,48.58347],[-2.55353,48.59111],[-2.55288,48.59953],[-2.53683,48.59661],[-2.51262,48.60264],[-2.47343,48.62252],[-2.46813,48.63581],[-2.48452,48.63813],[-2.48786,48.64515],[-2.43772,48.65281],[-2.42078,48.64627],[-2.41709,48.63309],[-2.40968,48.63691],[-2.41639,48.64155],[-2.39632,48.64275],[-2.38571,48.65273],[-2.36986,48.65785],[-2.36095,48.65556],[-2.33217,48.67062],[-2.31772,48.68865],[-2.31064,48.68047],[-2.31273,48.67214],[-2.28521,48.66448],[-2.30823,48.64511],[-2.31214,48.63383],[-2.33592,48.62001],[-2.32106,48.61783],[-2.31662,48.6104],[-2.27399,48.64016],[-2.24742,48.64605],[-2.24308,48.64398],[-2.25473,48.63261],[-2.24096,48.62402],[-2.2456,48.61519],[-2.22886,48.61117],[-2.22436,48.59478],[-2.21408,48.59294],[-2.21286,48.57276],[-2.19155,48.59231],[-2.1951,48.60902],[-2.18463,48.60592],[-2.18806,48.58376],[-2.17686,48.57623],[-2.16428,48.57975],[-2.15723,48.58836],[-2.17041,48.59661],[-2.14895,48.61855],[-2.14415,48.61942],[-2.14286,48.61117],[-2.12371,48.60441]]]]}},{"type":"Feature","properties":{"code":"23","nom":"Creuse"},"geometry":{"type":"Polygon","coordinates":[[[2.16779,46.42407],[2.18516,46.42328],[2.19933,46.4283],[2.21424,46.42319],[2.24987,46.42636],[2.28105,46.42041],[2.2778,46.4097],[2.28673,46.38285],[2.29825,46.38411],[2.31547,46.3752],[2.33139,46.37872],[2.33789,46.36414],[2.32314,46.36738],[2.3169,46.35838],[2.30275,46.35442],[2.30944,46.34867],[2.30099,46.34223],[2.31158,46.34183],[2.32127,46.32901],[2.33088,46.3287],[2.33588,46.32329],[2.3549,46.32568],[2.36497,46.3107],[2.37575,46.31578],[2.38608,46.33197],[2.42066,46.31013],[2.4211,46.30153],[2.41421,46.29691],[2.42134,46.28462],[2.42802,46.28533],[2.43187,46.29442],[2.44303,46.295],[2.48076,46.28101],[2.47709,46.26936],[2.48916,46.24753],[2.50356,46.24692],[2.51462,46.23994],[2.52599,46.18769],[2.54316,46.17561],[2.5598,46.17337],[2.56634,46.14376],[2.54728,46.11297],[2.55711,46.06914],[2.57073,46.0473],[2.60251,46.03346],[2.59359,45.98984],[2.61157,45.97208],[2.60902,45.96665],[2.56357,45.95559],[2.56991,45.94721],[2.55164,45.94127],[2.55362,45.93582],[2.54425,45.93241],[2.5415,45.92153],[2.55501,45.91251],[2.54143,45.90097],[2.52884,45.89965],[2.51419,45.88568],[2.50221,45.88849],[2.50329,45.87823],[2.49223,45.86403],[2.47974,45.86454],[2.47898,45.87035],[2.47062,45.87233],[2.45714,45.86565],[2.44336,45.86661],[2.44951,45.84821],[2.43418,45.84525],[2.43094,45.83382],[2.40367,45.83843],[2.38802,45.82738],[2.42727,45.79464],[2.43546,45.76697],[2.4445,45.75819],[2.45047,45.75715],[2.45138,45.76147],[2.46866,45.75632],[2.47307,45.7467],[2.48484,45.74848],[2.49213,45.73767],[2.47031,45.72776],[2.4729,45.7191],[2.46343,45.71778],[2.45416,45.70789],[2.4437,45.70777],[2.43586,45.69928],[2.41025,45.70963],[2.38283,45.70754],[2.3682,45.71321],[2.34854,45.70921],[2.34392,45.70651],[2.34835,45.69262],[2.33775,45.6806],[2.32275,45.67655],[2.32621,45.6716],[2.32094,45.66859],[2.30805,45.67642],[2.28252,45.66404],[2.26885,45.66336],[2.27107,45.69165],[2.2529,45.6888],[2.23183,45.70012],[2.22363,45.69584],[2.21152,45.71283],[2.21084,45.70185],[2.19448,45.69864],[2.19874,45.71214],[2.20767,45.71562],[2.18299,45.72062],[2.17647,45.73173],[2.16438,45.73634],[2.15658,45.72164],[2.14451,45.72317],[2.13362,45.73548],[2.11355,45.72478],[2.097,45.73419],[2.08469,45.72805],[2.0839,45.74603],[2.05842,45.75448],[2.05206,45.76512],[2.03651,45.7541],[2.01761,45.75549],[2.00152,45.74879],[1.99144,45.72081],[1.95658,45.72476],[1.94139,45.71306],[1.94842,45.70593],[1.93302,45.70601],[1.92237,45.71366],[1.91168,45.70826],[1.9141,45.7036],[1.90415,45.70356],[1.89873,45.69828],[1.87968,45.71237],[1.89247,45.71827],[1.88791,45.72631],[1.87334,45.72531],[1.88641,45.74519],[1.8743,45.75576],[1.89599,45.75944],[1.90236,45.76739],[1.89194,45.76865],[1.88693,45.79161],[1.86378,45.80637],[1.85645,45.80512],[1.85408,45.81285],[1.84645,45.80994],[1.83653,45.82536],[1.82961,45.82106],[1.82843,45.80981],[1.79726,45.82595],[1.79747,45.83148],[1.78773,45.82798],[1.77648,45.83277],[1.773,45.84553],[1.78149,45.85304],[1.77078,45.86837],[1.75764,45.86773],[1.75584,45.85566],[1.74075,45.85208],[1.73094,45.8419],[1.69217,45.84474],[1.68004,45.83626],[1.66912,45.84029],[1.65992,45.8338],[1.65476,45.84551],[1.63673,45.84558],[1.6024,45.85747],[1.60832,45.8674],[1.60499,45.88037],[1.59103,45.88307],[1.59777,45.88982],[1.61585,45.89214],[1.61371,45.88268],[1.61876,45.881],[1.61974,45.89937],[1.62567,45.89976],[1.63179,45.88936],[1.64124,45.89186],[1.63889,45.90408],[1.62794,45.90333],[1.63414,45.90787],[1.62474,45.91614],[1.63713,45.92597],[1.62566,45.92613],[1.62925,45.93141],[1.62064,45.9341],[1.6184,45.92873],[1.60713,45.93348],[1.57929,45.93135],[1.57569,45.9213],[1.58083,45.91774],[1.5671,45.91382],[1.55828,45.92208],[1.54727,45.91683],[1.53048,45.93178],[1.50939,45.93284],[1.50895,45.94031],[1.522,45.94283],[1.51536,45.94697],[1.52076,45.95245],[1.52776,45.95034],[1.55497,45.96457],[1.56615,45.96325],[1.57736,45.97772],[1.56767,45.99709],[1.55839,45.99995],[1.54373,45.99652],[1.53395,46.00345],[1.53638,46.02629],[1.54847,46.0348],[1.53186,46.0574],[1.54341,46.07691],[1.52657,46.07837],[1.52969,46.0906],[1.51251,46.09356],[1.51373,46.08979],[1.5049,46.08815],[1.49847,46.10646],[1.48428,46.1046],[1.49141,46.11963],[1.49885,46.11635],[1.50739,46.12461],[1.50333,46.13146],[1.49467,46.13117],[1.49746,46.1428],[1.48484,46.13483],[1.47269,46.14959],[1.45136,46.15266],[1.46515,46.16032],[1.46575,46.16703],[1.45646,46.17339],[1.46176,46.1778],[1.45257,46.18115],[1.43715,46.17406],[1.43284,46.18027],[1.41658,46.17618],[1.41377,46.18196],[1.39718,46.18551],[1.3952,46.19927],[1.38458,46.19922],[1.38384,46.21177],[1.37256,46.21603],[1.39663,46.24044],[1.41808,46.24111],[1.42054,46.24882],[1.41411,46.24954],[1.41564,46.25486],[1.40647,46.25276],[1.40437,46.26192],[1.41466,46.27136],[1.43094,46.26758],[1.4314,46.27807],[1.41417,46.28049],[1.42657,46.29892],[1.44479,46.3053],[1.43656,46.31225],[1.44522,46.33441],[1.43013,46.33365],[1.40954,46.34353],[1.44036,46.35637],[1.4349,46.36467],[1.44295,46.36516],[1.44643,46.375],[1.46535,46.37478],[1.47766,46.39391],[1.49293,46.39834],[1.49793,46.395],[1.51123,46.42063],[1.52191,46.4264],[1.53401,46.42635],[1.54409,46.4191],[1.54782,46.3933],[1.57862,46.41048],[1.5954,46.40864],[1.59864,46.41914],[1.62001,46.42166],[1.61425,46.39953],[1.62622,46.39403],[1.62675,46.38851],[1.6398,46.38508],[1.6836,46.41818],[1.7109,46.39206],[1.72704,46.39021],[1.75055,46.40558],[1.74865,46.413],[1.76027,46.42714],[1.75882,46.44026],[1.74759,46.45002],[1.78652,46.45525],[1.79838,46.45482],[1.81733,46.43985],[1.8195,46.43004],[1.83978,46.42572],[1.85458,46.43392],[1.88344,46.43255],[1.88493,46.44093],[1.90246,46.43781],[1.90918,46.4435],[1.92053,46.44008],[1.92424,46.43195],[1.97875,46.44152],[1.99308,46.43092],[2.0742,46.41984],[2.08894,46.4089],[2.10332,46.40947],[2.1155,46.42195],[2.12701,46.4191],[2.16779,46.42407]]]}},{"type":"Feature","properties":{"code":"24","nom":"Dordogne"},"geometry":{"type":"Polygon","coordinates":[[[0.62974,45.71457],[0.64015,45.6979],[0.65238,45.69894],[0.65539,45.68859],[0.6696,45.68583],[0.69427,45.69218],[0.70313,45.68718],[0.71102,45.69395],[0.72516,45.69556],[0.73368,45.68969],[0.74219,45.69058],[0.7639,45.66807],[0.77644,45.66717],[0.76348,45.62853],[0.75234,45.61666],[0.778,45.59134],[0.80596,45.59536],[0.8115,45.57587],[0.84259,45.58227],[0.86935,45.62353],[0.89793,45.59982],[0.90667,45.60894],[0.91565,45.6041],[0.9337,45.61198],[0.94127,45.60928],[0.94677,45.61502],[0.94989,45.61043],[0.96025,45.6076],[0.96944,45.61085],[0.98155,45.60326],[0.99716,45.61527],[1.00483,45.61055],[1.02325,45.60996],[1.04207,45.58598],[1.03242,45.57957],[1.04543,45.55731],[1.06294,45.55391],[1.08264,45.53214],[1.08668,45.53731],[1.10397,45.53683],[1.10617,45.54445],[1.11956,45.54748],[1.16729,45.52482],[1.13424,45.50531],[1.11844,45.4879],[1.12026,45.47484],[1.12407,45.47888],[1.13495,45.46964],[1.16193,45.47865],[1.17615,45.47147],[1.17761,45.45714],[1.18659,45.45529],[1.20982,45.46322],[1.23594,45.45503],[1.23401,45.43994],[1.24328,45.43643],[1.25678,45.44511],[1.2756,45.43369],[1.29166,45.43572],[1.28252,45.43235],[1.29039,45.42159],[1.28623,45.41557],[1.27843,45.41265],[1.25913,45.41976],[1.25968,45.39794],[1.26993,45.39607],[1.27618,45.40341],[1.27993,45.38388],[1.29404,45.39117],[1.2936,45.39759],[1.32507,45.38012],[1.31579,45.36091],[1.28522,45.35318],[1.27937,45.33504],[1.26517,45.32304],[1.2358,45.32204],[1.24156,45.30063],[1.24026,45.29207],[1.23243,45.29106],[1.2284,45.27222],[1.24196,45.26627],[1.23938,45.26044],[1.25458,45.25487],[1.27448,45.25708],[1.2785,45.25014],[1.27451,45.23791],[1.26395,45.23097],[1.23361,45.2222],[1.2278,45.20604],[1.23229,45.1977],[1.27232,45.20176],[1.29212,45.18651],[1.26937,45.16475],[1.25505,45.16543],[1.25529,45.15864],[1.27863,45.15116],[1.29381,45.13893],[1.29865,45.14172],[1.30952,45.13484],[1.32132,45.14309],[1.33209,45.13756],[1.35198,45.14163],[1.35526,45.13244],[1.3852,45.13562],[1.4129,45.12508],[1.41023,45.11288],[1.37751,45.10473],[1.39418,45.09569],[1.39048,45.08838],[1.40691,45.06997],[1.39956,45.06118],[1.4134,45.06093],[1.40751,45.05306],[1.41727,45.0498],[1.42619,45.03539],[1.44826,45.01931],[1.44438,45.01409],[1.40927,45.006],[1.41179,44.98663],[1.41762,44.98295],[1.41259,44.97238],[1.42164,44.96858],[1.41663,44.96062],[1.4347,44.94452],[1.44235,44.91655],[1.42532,44.91997],[1.41225,44.90979],[1.42142,44.90626],[1.42312,44.89539],[1.43986,44.88895],[1.44253,44.8797],[1.43109,44.87129],[1.41132,44.87229],[1.40249,44.85008],[1.38731,44.85104],[1.37714,44.84183],[1.37105,44.8474],[1.36595,44.84579],[1.35995,44.83425],[1.3641,44.81157],[1.32551,44.80601],[1.29827,44.79619],[1.29331,44.78984],[1.30465,44.78909],[1.30473,44.78454],[1.29846,44.77424],[1.32282,44.76504],[1.31605,44.74037],[1.30019,44.74428],[1.29856,44.72591],[1.28778,44.71478],[1.27078,44.72273],[1.26342,44.71055],[1.24871,44.70807],[1.24193,44.69288],[1.23008,44.69142],[1.22455,44.68427],[1.17847,44.68264],[1.14673,44.6708],[1.15333,44.63774],[1.09459,44.59234],[1.10253,44.58644],[1.10321,44.57173],[1.07709,44.5736],[1.07298,44.59631],[1.05599,44.59768],[1.04542,44.60575],[1.01361,44.6144],[0.98053,44.64385],[0.96796,44.63465],[0.9496,44.64109],[0.93872,44.6397],[0.901,44.61745],[0.87722,44.61581],[0.86967,44.59767],[0.83391,44.59995],[0.83934,44.61374],[0.82929,44.61285],[0.817,44.627],[0.83804,44.6353],[0.83506,44.65329],[0.84404,44.65441],[0.8423,44.66622],[0.85244,44.66898],[0.82679,44.67344],[0.83155,44.68426],[0.827,44.69189],[0.81795,44.69848],[0.81612,44.69531],[0.79773,44.70177],[0.78689,44.69365],[0.78756,44.68543],[0.76249,44.6886],[0.76307,44.67857],[0.7467,44.68239],[0.72995,44.67613],[0.68369,44.67522],[0.65743,44.67785],[0.65449,44.69671],[0.64774,44.70313],[0.63087,44.70609],[0.62201,44.701],[0.62002,44.6913],[0.58501,44.69901],[0.57471,44.69115],[0.5673,44.67155],[0.54618,44.66465],[0.52823,44.67846],[0.51554,44.67857],[0.49056,44.66679],[0.47053,44.66958],[0.44567,44.65239],[0.41517,44.64589],[0.38536,44.657],[0.3754,44.65282],[0.36558,44.66221],[0.35372,44.65443],[0.34891,44.6702],[0.3597,44.69033],[0.34054,44.70305],[0.34804,44.7196],[0.3391,44.7339],[0.31872,44.75191],[0.28675,44.76831],[0.27144,44.78537],[0.27489,44.80024],[0.26372,44.82641],[0.28682,44.82302],[0.29231,44.8317],[0.30075,44.82919],[0.30099,44.84026],[0.30831,44.83922],[0.31507,44.84541],[0.29224,44.86099],[0.27906,44.86698],[0.23805,44.87195],[0.24175,44.85689],[0.20856,44.84071],[0.1913,44.82011],[0.17855,44.82598],[0.14717,44.82931],[0.12388,44.82792],[0.11233,44.81897],[0.10838,44.8315],[0.09871,44.83297],[0.08302,44.83122],[0.07181,44.81867],[0.06198,44.82573],[0.03946,44.82749],[0.03872,44.83872],[0.02106,44.84977],[0.00408,44.84555],[-0.03421,44.85211],[-0.03304,44.85596],[-0.01101,44.85772],[-0.00903,44.86649],[0.00345,44.87435],[0.00316,44.88145],[0.01203,44.88433],[0.03374,44.91379],[0.00325,44.94744],[0.00997,44.95393],[0.01366,44.97893],[0.02707,44.97538],[0.03339,44.98063],[0.04011,44.9935],[0.03914,45.02431],[0.0733,45.07012],[0.06299,45.09635],[0.04446,45.11537],[-0.00732,45.11912],[-0.02578,45.11518],[-0.0402,45.10238],[-0.04107,45.1146],[-0.02922,45.1279],[-0.03675,45.14075],[0.00472,45.15374],[-0.00066,45.15935],[-0.01838,45.16169],[-0.01737,45.16986],[0.00221,45.18443],[0.00775,45.20202],[0.03485,45.20875],[0.05343,45.22685],[0.07866,45.22015],[0.09851,45.22732],[0.13076,45.20782],[0.13607,45.21589],[0.14455,45.21366],[0.14699,45.22491],[0.15856,45.22567],[0.17233,45.23894],[0.17486,45.26144],[0.20306,45.26236],[0.21979,45.28949],[0.23644,45.29266],[0.24903,45.28852],[0.26734,45.29848],[0.267,45.33173],[0.24788,45.36927],[0.2749,45.42553],[0.29282,45.43399],[0.31772,45.43572],[0.30194,45.44595],[0.30267,45.45906],[0.30785,45.46087],[0.32939,45.44335],[0.33286,45.4594],[0.35888,45.46606],[0.36099,45.47676],[0.37663,45.47604],[0.3817,45.48626],[0.40925,45.49249],[0.4209,45.48492],[0.43174,45.4856],[0.43213,45.50391],[0.45024,45.51727],[0.44951,45.52364],[0.45935,45.52597],[0.46574,45.53962],[0.48621,45.5383],[0.48621,45.54281],[0.49987,45.54509],[0.50649,45.55389],[0.5088,45.55986],[0.49858,45.56477],[0.51632,45.58806],[0.5102,45.59669],[0.51699,45.59887],[0.49965,45.61726],[0.50764,45.61955],[0.51029,45.63102],[0.52667,45.64002],[0.52544,45.64432],[0.53576,45.64246],[0.53845,45.62874],[0.54653,45.62868],[0.54683,45.63507],[0.55848,45.6322],[0.56793,45.63555],[0.57545,45.64093],[0.56703,45.65326],[0.57817,45.66056],[0.58722,45.65987],[0.58609,45.66764],[0.60039,45.67173],[0.59147,45.67596],[0.60245,45.67955],[0.60404,45.69415],[0.61029,45.69182],[0.61431,45.69881],[0.62238,45.69943],[0.62974,45.71457]]]}},{"type":"Feature","properties":{"code":"25","nom":"Doubs"},"geometry":{"type":"Polygon","coordinates":[[[6.80701,47.5628],[6.81666,47.54792],[6.86081,47.54751],[6.88347,47.55533],[6.88983,47.55007],[6.90173,47.54987],[6.91627,47.53114],[6.90758,47.52586],[6.93649,47.51792],[6.94965,47.50869],[6.94267,47.48492],[6.93523,47.48562],[6.93018,47.50041],[6.90796,47.4939],[6.91606,47.47754],[6.90847,47.47281],[6.93259,47.45504],[6.94167,47.4158],[6.93838,47.40602],[6.91446,47.40413],[6.91296,47.38735],[6.8854,47.3746],[6.87927,47.35245],[6.90167,47.35936],[6.92426,47.35536],[6.97445,47.35984],[7.01556,47.37279],[7.04825,47.36218],[7.04983,47.34775],[7.06221,47.34416],[7.05292,47.33688],[7.05675,47.33457],[7.0462,47.32698],[7.00973,47.32436],[7.01614,47.3136],[6.99706,47.29585],[6.97722,47.29656],[6.97374,47.29134],[6.95356,47.29242],[6.94088,47.28667],[6.95171,47.27019],[6.9464,47.25391],[6.95541,47.24329],[6.88004,47.20033],[6.87415,47.18546],[6.84117,47.17126],[6.84485,47.16638],[6.85819,47.16543],[6.85017,47.15662],[6.80571,47.13042],[6.74049,47.10947],[6.74642,47.09808],[6.74109,47.09106],[6.72578,47.09178],[6.70279,47.08158],[6.70606,47.07393],[6.69167,47.06651],[6.71861,47.05084],[6.69663,47.0374],[6.65872,47.02657],[6.64035,47.00276],[6.61733,46.99164],[6.59613,46.99252],[6.56425,46.9796],[6.50522,46.96585],[6.49669,46.97418],[6.44955,46.93602],[6.43267,46.9286],[6.46458,46.89021],[6.46006,46.85168],[6.44263,46.83235],[6.44071,46.81584],[6.431,46.81241],[6.43483,46.80146],[6.45857,46.7885],[6.45222,46.77413],[6.43018,46.75672],[6.39507,46.74825],[6.38409,46.73103],[6.3681,46.72924],[6.37172,46.72412],[6.28197,46.69063],[6.17857,46.61548],[6.1261,46.58945],[6.11075,46.57631],[6.13811,46.55766],[6.13143,46.55374],[6.04857,46.60772],[6.05366,46.6135],[6.06463,46.6131],[6.05917,46.62611],[6.09883,46.64269],[6.10552,46.65048],[6.06983,46.68952],[6.18124,46.74217],[6.18372,46.75501],[6.20724,46.76498],[6.20333,46.77268],[6.18068,46.79624],[6.14883,46.81599],[6.15179,46.82067],[6.11325,46.83622],[6.10556,46.8453],[6.08671,46.84321],[6.08698,46.84996],[6.06504,46.86018],[6.04709,46.84563],[6.0227,46.85259],[6.03272,46.8709],[6.02209,46.87535],[6.01739,46.86812],[6.00578,46.87305],[6.0122,46.8903],[5.98134,46.90791],[5.98142,46.91862],[5.99722,46.93349],[5.95654,46.9485],[5.97979,46.96348],[5.97294,46.96928],[5.97569,46.97585],[5.9688,46.97611],[5.96856,46.98044],[5.94396,46.97986],[5.94954,46.99005],[5.94,46.9822],[5.92034,46.98052],[5.92164,46.9853],[5.91304,46.98944],[5.9214,47.01422],[5.91107,46.9995],[5.89713,46.99575],[5.88663,46.99697],[5.87649,47.00589],[5.85567,47.00882],[5.84694,47.0031],[5.83945,47.01534],[5.8287,47.01212],[5.81373,47.01743],[5.81791,47.04058],[5.81014,47.04681],[5.79714,47.04234],[5.79916,47.03075],[5.78765,47.02061],[5.77044,47.01815],[5.76316,47.01139],[5.74441,47.02176],[5.74091,47.03105],[5.74856,47.03118],[5.75328,47.0392],[5.73683,47.05498],[5.74587,47.05719],[5.76339,47.04484],[5.78472,47.05491],[5.77103,47.0944],[5.78727,47.09562],[5.81608,47.13434],[5.82807,47.14117],[5.81367,47.14998],[5.80958,47.17037],[5.79328,47.17468],[5.7851,47.17057],[5.78719,47.18464],[5.78075,47.19298],[5.76159,47.19335],[5.75403,47.2062],[5.73767,47.20128],[5.73818,47.20829],[5.72041,47.21994],[5.72126,47.23125],[5.71403,47.23601],[5.71966,47.24039],[5.69873,47.265],[5.71384,47.27072],[5.73366,47.26727],[5.7323,47.26357],[5.7444,47.26456],[5.75114,47.27382],[5.77112,47.27705],[5.78615,47.29146],[5.79799,47.28935],[5.81243,47.29666],[5.81385,47.29315],[5.84402,47.30003],[5.86053,47.3155],[5.87392,47.31397],[5.88095,47.321],[5.89772,47.31045],[5.90243,47.31548],[5.89609,47.3277],[5.90292,47.33392],[5.92092,47.32756],[5.93152,47.32877],[5.9267,47.34476],[5.9608,47.34063],[5.97957,47.32599],[5.98643,47.33098],[5.9931,47.32872],[5.99821,47.34049],[6.01832,47.33139],[6.05209,47.35219],[6.07494,47.35123],[6.08629,47.37311],[6.10061,47.37156],[6.10249,47.36132],[6.11296,47.36134],[6.11275,47.36774],[6.11646,47.36496],[6.1197,47.36846],[6.10671,47.37707],[6.11135,47.37972],[6.10511,47.3778],[6.10438,47.3844],[6.12063,47.39562],[6.13558,47.38676],[6.16811,47.3883],[6.16164,47.39239],[6.16918,47.3893],[6.17771,47.4018],[6.19045,47.40216],[6.17111,47.40873],[6.1758,47.41681],[6.19284,47.41309],[6.20353,47.43044],[6.24157,47.41074],[6.2334,47.42975],[6.239,47.43185],[6.25583,47.4244],[6.26449,47.44725],[6.28717,47.44616],[6.28643,47.46051],[6.30202,47.4698],[6.30251,47.49153],[6.31946,47.48554],[6.33572,47.5065],[6.34759,47.50524],[6.36808,47.51349],[6.39004,47.50593],[6.39344,47.51661],[6.41129,47.52229],[6.46349,47.51212],[6.47106,47.48717],[6.47591,47.49654],[6.49881,47.51067],[6.51579,47.49659],[6.53454,47.50605],[6.55597,47.49041],[6.5582,47.49682],[6.57351,47.49549],[6.58364,47.50999],[6.5814,47.52929],[6.57257,47.52696],[6.56766,47.53133],[6.58137,47.54398],[6.59672,47.54207],[6.60944,47.53079],[6.62459,47.52892],[6.64937,47.53693],[6.67018,47.5579],[6.65199,47.57241],[6.66006,47.5799],[6.66381,47.57688],[6.65828,47.57195],[6.68887,47.57081],[6.68856,47.56063],[6.71951,47.55253],[6.72227,47.55946],[6.73971,47.557],[6.75512,47.54231],[6.77299,47.53501],[6.79705,47.54904],[6.80124,47.56236],[6.80701,47.5628]]]}},{"type":"Feature","properties":{"code":"26","nom":"Dr\xF4me"},"geometry":{"type":"Polygon","coordinates":[[[4.80049,45.29836],[4.8588,45.30895],[4.85862,45.29852],[4.87971,45.29693],[4.92939,45.32423],[4.95435,45.32732],[4.99512,45.34405],[5.00965,45.34223],[5.02269,45.31776],[5.05432,45.31905],[5.07541,45.28182],[5.11863,45.29117],[5.12155,45.29874],[5.13669,45.29797],[5.12089,45.24763],[5.14153,45.24357],[5.15191,45.25548],[5.15823,45.25555],[5.15669,45.24739],[5.17654,45.2484],[5.18458,45.23119],[5.20171,45.2174],[5.17871,45.21698],[5.16742,45.21013],[5.16428,45.1976],[5.16876,45.19853],[5.17514,45.18155],[5.18981,45.16943],[5.1918,45.15507],[5.18132,45.14781],[5.19056,45.14067],[5.18744,45.12083],[5.16289,45.09843],[5.15414,45.07929],[5.14485,45.08153],[5.14098,45.07641],[5.13785,45.08148],[5.13516,45.0742],[5.14856,45.0769],[5.16246,45.06575],[5.17119,45.06901],[5.17938,45.08331],[5.20821,45.08422],[5.22612,45.07918],[5.23255,45.07048],[5.24451,45.06697],[5.24458,45.06067],[5.26626,45.05981],[5.26767,45.05473],[5.29278,45.06386],[5.30532,45.06102],[5.30627,45.05339],[5.32022,45.05164],[5.32069,45.05707],[5.34033,45.06206],[5.34595,45.048],[5.37309,45.0437],[5.38583,45.03463],[5.39653,45.03954],[5.38105,45.05123],[5.38306,45.05591],[5.39657,45.04409],[5.41265,45.04463],[5.42572,45.05627],[5.43524,45.05412],[5.46098,45.08643],[5.4693,45.08859],[5.48296,45.08381],[5.4942,45.07166],[5.47486,45.07035],[5.46485,45.04594],[5.47803,45.03365],[5.4804,45.01288],[5.49359,44.99613],[5.47767,44.96675],[5.48365,44.92229],[5.48031,44.89681],[5.47005,44.87903],[5.47555,44.86704],[5.46379,44.82597],[5.48477,44.82306],[5.47613,44.80698],[5.45851,44.80045],[5.46189,44.79492],[5.55453,44.76747],[5.554,44.77933],[5.54414,44.78893],[5.54452,44.79567],[5.54977,44.79453],[5.58205,44.77786],[5.5868,44.76323],[5.62631,44.75329],[5.63591,44.73284],[5.65226,44.72265],[5.69878,44.72207],[5.70406,44.7293],[5.72116,44.71263],[5.73652,44.71381],[5.75607,44.69594],[5.80147,44.70678],[5.82712,44.70029],[5.82969,44.68868],[5.79942,44.67415],[5.79062,44.65329],[5.76381,44.65557],[5.75394,44.66271],[5.74748,44.65471],[5.75356,44.64858],[5.73679,44.64975],[5.73865,44.64064],[5.72804,44.6392],[5.67996,44.65223],[5.66844,44.64837],[5.65446,44.65539],[5.64172,44.65107],[5.63921,44.63552],[5.64946,44.61937],[5.64719,44.61156],[5.63533,44.60915],[5.62632,44.58662],[5.61785,44.5839],[5.61536,44.57325],[5.60702,44.56834],[5.59725,44.54327],[5.61499,44.53282],[5.62737,44.53458],[5.6645,44.50189],[5.62979,44.50119],[5.61813,44.47481],[5.60338,44.46542],[5.5703,44.47676],[5.55878,44.47307],[5.51609,44.49173],[5.47988,44.49124],[5.4714,44.49976],[5.45841,44.49939],[5.46773,44.47333],[5.459,44.46903],[5.46443,44.44789],[5.49772,44.43815],[5.49362,44.42822],[5.48656,44.42931],[5.47649,44.41972],[5.43672,44.4337],[5.4184,44.42477],[5.42295,44.41577],[5.43123,44.41425],[5.44303,44.39124],[5.44415,44.37945],[5.43022,44.37699],[5.43191,44.37099],[5.46255,44.36738],[5.46786,44.35216],[5.48246,44.34981],[5.49129,44.33786],[5.52137,44.35108],[5.52896,44.34303],[5.53986,44.34264],[5.53737,44.33353],[5.54727,44.33],[5.56051,44.33557],[5.56803,44.33217],[5.63082,44.33299],[5.63257,44.32835],[5.61107,44.31594],[5.6079,44.30667],[5.61615,44.30944],[5.63821,44.299],[5.643,44.29381],[5.63299,44.29045],[5.63211,44.2839],[5.64751,44.27248],[5.64678,44.26709],[5.67561,44.27589],[5.68657,44.26692],[5.67419,44.25639],[5.67299,44.24619],[5.673,44.23984],[5.68241,44.2343],[5.67602,44.21215],[5.68642,44.19464],[5.67501,44.1888],[5.65159,44.18958],[5.64327,44.17072],[5.64697,44.16629],[5.68236,44.16363],[5.67794,44.14638],[5.63114,44.15058],[5.63959,44.16759],[5.61613,44.1778],[5.60933,44.19071],[5.60205,44.19149],[5.57462,44.18683],[5.56437,44.1709],[5.58298,44.15762],[5.56951,44.1481],[5.55133,44.14979],[5.5414,44.13263],[5.51106,44.12411],[5.50261,44.11565],[5.45472,44.11923],[5.44757,44.13675],[5.43656,44.13998],[5.43576,44.15225],[5.42391,44.14929],[5.41677,44.15511],[5.39661,44.15196],[5.38324,44.15528],[5.38453,44.20118],[5.35535,44.21456],[5.33683,44.20353],[5.31831,44.20987],[5.30334,44.2099],[5.3033,44.20539],[5.2523,44.23121],[5.24045,44.23083],[5.23815,44.21323],[5.23082,44.21193],[5.17668,44.22018],[5.1549,44.23094],[5.14947,44.2353],[5.16155,44.24559],[5.16073,44.26655],[5.14872,44.26942],[5.14707,44.27557],[5.14973,44.28208],[5.16811,44.28992],[5.1737,44.30837],[5.16775,44.31483],[5.15063,44.30962],[5.15477,44.30187],[5.11915,44.28692],[5.10797,44.27725],[5.07651,44.28409],[5.06056,44.30814],[5.00554,44.28675],[4.98145,44.28483],[4.93291,44.26215],[4.89927,44.25685],[4.90128,44.26428],[4.87905,44.26148],[4.82665,44.22833],[4.8141,44.23231],[4.81267,44.25772],[4.804,44.26921],[4.80456,44.3039],[4.7905,44.30753],[4.77967,44.31937],[4.77182,44.31747],[4.76225,44.32538],[4.71795,44.32689],[4.71302,44.32065],[4.67903,44.32049],[4.65062,44.32981],[4.64895,44.37246],[4.66395,44.39647],[4.66738,44.43066],[4.69365,44.4435],[4.70038,44.45991],[4.69987,44.47938],[4.68895,44.49293],[4.6882,44.5055],[4.70741,44.5339],[4.69364,44.54223],[4.69277,44.55854],[4.69816,44.56434],[4.70476,44.56188],[4.71027,44.58155],[4.74151,44.58927],[4.7404,44.60239],[4.77907,44.6547],[4.78111,44.68283],[4.76329,44.71725],[4.759,44.74799],[4.7693,44.7602],[4.76094,44.77171],[4.79567,44.79377],[4.79985,44.81296],[4.82251,44.81709],[4.82016,44.83623],[4.84438,44.84601],[4.84477,44.85825],[4.86094,44.8737],[4.85586,44.90136],[4.86816,44.90911],[4.88659,44.93665],[4.87568,44.95521],[4.86017,44.96586],[4.85126,44.99468],[4.83621,45.00788],[4.84557,45.0201],[4.84034,45.03578],[4.86075,45.05543],[4.85448,45.06344],[4.82987,45.07185],[4.82996,45.09731],[4.80323,45.12502],[4.80446,45.1332],[4.8291,45.15669],[4.80928,45.16883],[4.81215,45.18232],[4.80481,45.19403],[4.81257,45.20431],[4.80134,45.24289],[4.81026,45.26391],[4.80946,45.28985],[4.80049,45.29836]],[[4.89291,44.36482],[4.86953,44.34508],[4.89533,44.33806],[4.88163,44.32487],[4.89166,44.30425],[4.92215,44.30878],[4.98702,44.29271],[4.99657,44.31974],[5.01378,44.32579],[5.00901,44.33377],[5.02329,44.34595],[5.02389,44.36056],[5.05504,44.36502],[5.07206,44.38041],[5.0625,44.3841],[5.04757,44.38135],[5.0345,44.39084],[5.01558,44.39304],[5.01876,44.41598],[5.00997,44.41083],[5.00106,44.4126],[4.97044,44.43137],[4.96047,44.42005],[4.91852,44.40779],[4.90968,44.39672],[4.90896,44.37734],[4.89291,44.36482]]]}},{"type":"Feature","properties":{"code":"27","nom":"Eure"},"geometry":{"type":"Polygon","coordinates":[[[0.29722,49.42986],[0.34059,49.43432],[0.33898,49.44093],[0.41448,49.45373],[0.50252,49.48511],[0.52494,49.47787],[0.58817,49.43121],[0.61163,49.42922],[0.64254,49.44425],[0.64613,49.43961],[0.63353,49.43387],[0.62951,49.42229],[0.64502,49.42608],[0.63976,49.4192],[0.64425,49.415],[0.65221,49.42182],[0.65978,49.41618],[0.64948,49.40919],[0.6644,49.40167],[0.69046,49.4065],[0.70491,49.40216],[0.70802,49.41103],[0.73829,49.40807],[0.76487,49.41958],[0.78307,49.41075],[0.79787,49.41755],[0.80497,49.41158],[0.80284,49.42732],[0.81075,49.4046],[0.82105,49.39704],[0.84531,49.39201],[0.87846,49.39625],[0.87387,49.39093],[0.88574,49.38797],[0.87934,49.3735],[0.89289,49.37219],[0.8957,49.3797],[0.91812,49.38546],[0.92134,49.3524],[0.93055,49.34343],[0.9208,49.33823],[0.88197,49.34773],[0.87079,49.34187],[0.86012,49.34632],[0.85916,49.33956],[0.84776,49.336],[0.85266,49.33148],[0.84171,49.32936],[0.84509,49.32419],[0.8619,49.32598],[0.8919,49.31421],[0.89829,49.31668],[0.89256,49.30315],[0.90175,49.29788],[0.91045,49.29853],[0.90729,49.30775],[0.92891,49.31392],[0.94022,49.32286],[0.94986,49.29692],[0.96343,49.29453],[0.95774,49.28934],[0.96553,49.28638],[0.94922,49.27921],[0.95577,49.27137],[0.97331,49.27988],[0.97555,49.27202],[0.98725,49.26797],[0.98512,49.26089],[1.00687,49.26487],[0.99201,49.258],[0.99276,49.25319],[1.00554,49.25079],[1.04945,49.26343],[1.06269,49.25895],[1.06509,49.26292],[1.05201,49.27313],[1.06876,49.27627],[1.04815,49.29788],[1.08069,49.30878],[1.13399,49.30984],[1.13467,49.32464],[1.16012,49.34182],[1.16684,49.34143],[1.16859,49.33597],[1.18272,49.34384],[1.18485,49.33807],[1.20312,49.33654],[1.19946,49.35114],[1.20957,49.35239],[1.27214,49.34629],[1.27217,49.35708],[1.28175,49.3568],[1.28992,49.37571],[1.28548,49.38818],[1.29154,49.38827],[1.29319,49.39499],[1.30807,49.39536],[1.31433,49.41537],[1.30963,49.42873],[1.32731,49.43154],[1.33674,49.42769],[1.33749,49.43887],[1.34724,49.43464],[1.35075,49.43817],[1.34122,49.44264],[1.34523,49.44806],[1.37582,49.45308],[1.38743,49.46304],[1.38406,49.44853],[1.39268,49.44904],[1.40032,49.4568],[1.43573,49.45515],[1.44865,49.45002],[1.47719,49.45133],[1.49582,49.44629],[1.50417,49.43804],[1.52962,49.4423],[1.53719,49.43008],[1.54714,49.4409],[1.5762,49.44005],[1.60445,49.41172],[1.61435,49.40995],[1.6282,49.4151],[1.62793,49.41066],[1.65625,49.39946],[1.66801,49.40695],[1.68062,49.40607],[1.69428,49.39486],[1.70455,49.41071],[1.71897,49.40345],[1.73759,49.40706],[1.72047,49.39398],[1.76096,49.36621],[1.75818,49.35622],[1.77424,49.33715],[1.76748,49.32048],[1.77528,49.30572],[1.77249,49.29109],[1.78441,49.29323],[1.79754,49.28845],[1.79323,49.27433],[1.80268,49.27195],[1.79055,49.24657],[1.7669,49.25204],[1.75869,49.27236],[1.74988,49.26746],[1.73672,49.27023],[1.72649,49.26479],[1.70917,49.26446],[1.69874,49.24673],[1.70407,49.22932],[1.67223,49.2062],[1.67688,49.20318],[1.66639,49.17685],[1.6702,49.16946],[1.66097,49.1578],[1.66437,49.15337],[1.65306,49.14463],[1.65768,49.13188],[1.61858,49.09698],[1.62332,49.08608],[1.6088,49.07789],[1.60508,49.08517],[1.57341,49.07848],[1.55814,49.06916],[1.5413,49.07371],[1.52135,49.06835],[1.50792,49.08539],[1.51431,49.07937],[1.5033,49.0591],[1.48029,49.05201],[1.46173,49.06414],[1.44728,49.05351],[1.45776,49.02629],[1.47493,49.01775],[1.47412,49.0096],[1.48003,49.00753],[1.47153,48.9897],[1.46093,48.98644],[1.47089,48.97482],[1.47858,48.98055],[1.49836,48.97916],[1.5079,48.98376],[1.51839,48.97835],[1.4919,48.96441],[1.50107,48.95268],[1.511,48.95357],[1.49869,48.93882],[1.46131,48.93756],[1.45977,48.92782],[1.44796,48.92464],[1.45932,48.91465],[1.46143,48.8996],[1.47128,48.89783],[1.46062,48.8723],[1.42389,48.86126],[1.40432,48.86057],[1.38894,48.84561],[1.36138,48.83364],[1.35635,48.81601],[1.37696,48.79177],[1.37479,48.78118],[1.36598,48.78391],[1.35347,48.7792],[1.32753,48.7604],[1.29694,48.76823],[1.26049,48.75779],[1.24623,48.76959],[1.22261,48.76729],[1.23276,48.76336],[1.22305,48.75798],[1.18636,48.77301],[1.16298,48.76931],[1.14883,48.7774],[1.15116,48.78582],[1.1214,48.78919],[1.11745,48.78357],[1.12533,48.7673],[1.11821,48.76603],[1.11454,48.74712],[1.10346,48.74903],[1.10296,48.75307],[1.09573,48.74872],[1.08654,48.75724],[1.06968,48.74879],[1.06444,48.75939],[1.0339,48.73935],[1.03403,48.72846],[1.0206,48.73479],[1.01665,48.72836],[0.99115,48.72572],[0.97829,48.73096],[0.96145,48.72572],[0.94966,48.71461],[0.9212,48.70918],[0.9201,48.7124],[0.89961,48.71053],[0.89057,48.7204],[0.87257,48.71323],[0.8604,48.69235],[0.86387,48.68762],[0.84078,48.67838],[0.82767,48.68072],[0.81482,48.67017],[0.79195,48.67448],[0.78085,48.66646],[0.76872,48.6699],[0.76913,48.67854],[0.76148,48.68009],[0.76605,48.6968],[0.7527,48.70411],[0.7318,48.7032],[0.72876,48.70685],[0.74359,48.717],[0.75912,48.72022],[0.76049,48.7282],[0.77496,48.73753],[0.74948,48.76065],[0.75843,48.76797],[0.73194,48.78546],[0.68934,48.7934],[0.6651,48.8099],[0.60787,48.83249],[0.62017,48.84688],[0.63621,48.85428],[0.60939,48.85333],[0.61212,48.85752],[0.6024,48.86249],[0.61503,48.87765],[0.58963,48.87259],[0.58659,48.8814],[0.59533,48.88303],[0.59564,48.88803],[0.57804,48.89365],[0.55145,48.87443],[0.52088,48.88079],[0.4949,48.87862],[0.46315,48.8885],[0.45736,48.87976],[0.45094,48.87993],[0.44285,48.88294],[0.45004,48.89102],[0.4388,48.88867],[0.44146,48.88543],[0.42109,48.88676],[0.42157,48.89865],[0.38619,48.91041],[0.39148,48.92818],[0.43116,48.96722],[0.4329,48.97912],[0.42479,48.98514],[0.44605,49.019],[0.44242,49.02475],[0.43124,49.02348],[0.42776,49.03229],[0.38547,49.03607],[0.37886,49.05102],[0.3671,49.0524],[0.38116,49.06019],[0.37857,49.07058],[0.39102,49.07786],[0.41728,49.07335],[0.41622,49.08823],[0.39922,49.08699],[0.39737,49.09056],[0.41529,49.09621],[0.40039,49.09708],[0.40157,49.11114],[0.40687,49.11218],[0.40827,49.12858],[0.42487,49.13019],[0.43324,49.14068],[0.42371,49.14789],[0.4116,49.14603],[0.3859,49.15379],[0.39155,49.16018],[0.39325,49.17761],[0.38727,49.18508],[0.39473,49.20844],[0.38879,49.21622],[0.36655,49.21588],[0.3383,49.2306],[0.32074,49.2482],[0.32023,49.25246],[0.33905,49.25261],[0.3646,49.26299],[0.36632,49.25978],[0.38279,49.26402],[0.38391,49.28554],[0.36227,49.29708],[0.34253,49.29562],[0.32627,49.27793],[0.309,49.28322],[0.32302,49.29699],[0.31602,49.31131],[0.29815,49.31441],[0.31314,49.32304],[0.32599,49.34037],[0.30179,49.37115],[0.30895,49.38936],[0.29675,49.40983],[0.29722,49.42986]]]}},{"type":"Feature","properties":{"code":"28","nom":"Eure-et-Loir"},"geometry":{"type":"Polygon","coordinates":[[[0.81482,48.67017],[0.82767,48.68072],[0.84078,48.67838],[0.86387,48.68762],[0.8604,48.69235],[0.87257,48.71323],[0.89057,48.7204],[0.89961,48.71053],[0.9201,48.7124],[0.9212,48.70918],[0.94966,48.71461],[0.96145,48.72572],[0.97829,48.73096],[0.99115,48.72572],[1.01665,48.72836],[1.0206,48.73479],[1.03403,48.72846],[1.0339,48.73935],[1.06444,48.75939],[1.06968,48.74879],[1.08654,48.75724],[1.09573,48.74872],[1.10296,48.75307],[1.10346,48.74903],[1.11454,48.74712],[1.11821,48.76603],[1.12533,48.7673],[1.11745,48.78357],[1.1214,48.78919],[1.15116,48.78582],[1.14883,48.7774],[1.16298,48.76931],[1.18636,48.77301],[1.22305,48.75798],[1.23276,48.76336],[1.22261,48.76729],[1.24623,48.76959],[1.26049,48.75779],[1.29694,48.76823],[1.32981,48.76096],[1.35347,48.7792],[1.36598,48.78391],[1.37479,48.78118],[1.37696,48.79177],[1.35635,48.81601],[1.36138,48.83364],[1.38894,48.84561],[1.40432,48.86057],[1.44132,48.865],[1.46536,48.8776],[1.47128,48.89783],[1.46143,48.8996],[1.45932,48.91465],[1.44796,48.92464],[1.45977,48.92782],[1.46131,48.93756],[1.48065,48.94049],[1.49013,48.93615],[1.50249,48.94065],[1.51201,48.93447],[1.50734,48.9276],[1.51419,48.92195],[1.51864,48.92535],[1.5384,48.92251],[1.54525,48.91299],[1.53917,48.90489],[1.56374,48.89063],[1.54721,48.87114],[1.55522,48.86507],[1.56049,48.86781],[1.58404,48.86051],[1.57727,48.84436],[1.59785,48.83906],[1.57898,48.82944],[1.5912,48.81487],[1.57725,48.8052],[1.57663,48.78302],[1.58759,48.7736],[1.58146,48.76552],[1.60834,48.76075],[1.62654,48.74805],[1.62026,48.73601],[1.5876,48.71062],[1.59171,48.70772],[1.57685,48.70258],[1.5912,48.69251],[1.61177,48.68947],[1.60312,48.66242],[1.62122,48.64958],[1.6432,48.65129],[1.63832,48.6451],[1.65042,48.63744],[1.64957,48.63227],[1.65824,48.62764],[1.65517,48.62272],[1.66622,48.61371],[1.68491,48.61983],[1.69063,48.61741],[1.68232,48.6156],[1.6871,48.61117],[1.71466,48.61468],[1.71877,48.60574],[1.70199,48.585],[1.70925,48.57802],[1.72742,48.5726],[1.7574,48.57496],[1.76796,48.55896],[1.77818,48.55263],[1.78725,48.55374],[1.77575,48.52771],[1.77684,48.50931],[1.78303,48.50022],[1.78905,48.50016],[1.78564,48.49008],[1.79634,48.48419],[1.79156,48.48124],[1.80321,48.47257],[1.80145,48.46604],[1.83659,48.46709],[1.84492,48.4461],[1.85762,48.44678],[1.87169,48.43978],[1.90426,48.43861],[1.90709,48.44536],[1.92074,48.44775],[1.92215,48.4576],[1.92945,48.45696],[1.93296,48.44204],[1.94289,48.44109],[1.93633,48.43481],[1.93961,48.41958],[1.92762,48.41634],[1.93273,48.41069],[1.92837,48.40605],[1.97824,48.402],[1.96672,48.38042],[1.98031,48.37826],[1.97801,48.36886],[1.98903,48.36358],[1.97331,48.35581],[1.97536,48.34479],[1.9687,48.34131],[1.98234,48.32832],[1.9745,48.32317],[1.98065,48.31877],[1.97909,48.31266],[1.97346,48.31591],[1.9588,48.30664],[1.9652,48.29516],[1.98237,48.29545],[1.97272,48.28822],[1.99025,48.2877],[1.99465,48.28286],[1.98426,48.26396],[1.96548,48.25547],[1.96232,48.24687],[1.9626,48.2226],[1.9796,48.2039],[1.97083,48.18999],[1.96245,48.19445],[1.96656,48.20215],[1.95726,48.2036],[1.95112,48.19505],[1.95146,48.18958],[1.97099,48.18308],[1.97097,48.17107],[1.94496,48.17467],[1.9409,48.16771],[1.92505,48.17449],[1.91427,48.16746],[1.90334,48.15281],[1.90528,48.1463],[1.9204,48.14639],[1.91262,48.12913],[1.90192,48.13111],[1.88439,48.09766],[1.8649,48.09519],[1.86567,48.08386],[1.84909,48.08469],[1.84455,48.08903],[1.82976,48.07903],[1.80153,48.08943],[1.79798,48.07687],[1.78837,48.07745],[1.78413,48.07262],[1.78005,48.07741],[1.77154,48.07004],[1.7618,48.07162],[1.75503,48.06484],[1.74933,48.06785],[1.74501,48.06388],[1.72572,48.07049],[1.70899,48.06698],[1.68893,48.07796],[1.67048,48.06237],[1.66024,48.07629],[1.64724,48.0695],[1.62409,48.07001],[1.61935,48.04309],[1.59717,48.04317],[1.59412,48.0307],[1.54531,48.04459],[1.53903,48.03857],[1.55081,48.03523],[1.54707,48.02958],[1.52253,48.03463],[1.51255,48.02813],[1.51789,48.01178],[1.52667,48.00727],[1.51706,47.99697],[1.5255,47.9928],[1.51873,47.98996],[1.52012,47.98228],[1.50308,47.988],[1.49878,47.98528],[1.48109,47.99737],[1.43966,48.01195],[1.43261,48.00853],[1.43739,48.0069],[1.43724,47.9765],[1.40688,47.9701],[1.38695,47.98128],[1.37002,47.95375],[1.34591,47.96506],[1.3437,47.95753],[1.30863,47.95385],[1.29958,47.96816],[1.26502,47.96182],[1.25802,47.97385],[1.24678,47.9796],[1.19607,47.96805],[1.1915,47.97197],[1.20263,47.97738],[1.1913,47.98406],[1.18714,48.00242],[1.16983,48.00651],[1.159,48.0177],[1.1672,48.01997],[1.16663,48.02739],[1.12271,48.03598],[1.10627,48.06014],[1.11223,48.08073],[1.07047,48.07563],[1.0637,48.08649],[1.026,48.08841],[1.00855,48.08313],[0.99223,48.09181],[0.99095,48.09692],[1.00349,48.10537],[1.04603,48.11764],[1.04057,48.13187],[1.01395,48.1327],[0.99555,48.12727],[0.94663,48.09756],[0.94403,48.11237],[0.92993,48.11207],[0.91017,48.1032],[0.87953,48.10377],[0.88156,48.10811],[0.87589,48.10944],[0.84122,48.10306],[0.85537,48.12262],[0.85037,48.13308],[0.91367,48.13504],[0.91665,48.13894],[0.90926,48.14393],[0.91162,48.14886],[0.88775,48.16152],[0.85988,48.1676],[0.83951,48.16567],[0.81109,48.18568],[0.79562,48.18804],[0.79766,48.19445],[0.80879,48.19761],[0.80562,48.20535],[0.83048,48.21071],[0.78588,48.27114],[0.79644,48.28711],[0.80707,48.28973],[0.77835,48.30327],[0.75567,48.29982],[0.78543,48.34043],[0.8069,48.34415],[0.81221,48.34948],[0.82854,48.34246],[0.84238,48.34669],[0.83993,48.35272],[0.85901,48.34978],[0.87161,48.35971],[0.87578,48.3553],[0.88371,48.35671],[0.90089,48.37384],[0.90735,48.3701],[0.91633,48.37451],[0.91428,48.37927],[0.91786,48.37725],[0.92897,48.39043],[0.95,48.39941],[0.9445,48.41729],[0.97649,48.44111],[0.95591,48.44441],[0.93898,48.46083],[0.93571,48.47555],[0.95629,48.48228],[0.9554,48.49265],[0.94155,48.49869],[0.954,48.50384],[0.96774,48.52388],[0.9251,48.53564],[0.93876,48.55056],[0.92571,48.55965],[0.89358,48.5718],[0.86909,48.57257],[0.85064,48.58263],[0.84705,48.60952],[0.81964,48.60987],[0.81717,48.61546],[0.82996,48.63227],[0.8219,48.63607],[0.82518,48.64862],[0.81878,48.65834],[0.80969,48.66244],[0.81482,48.67017]]]}},{"type":"Feature","properties":{"code":"29","nom":"Finist\xE8re"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-3.99181,48.7364],[-4.01163,48.74409],[-4.02252,48.73856],[-4.04017,48.74637],[-4.01961,48.75366],[-4.00593,48.75285],[-4.00353,48.74793],[-3.98961,48.74532],[-3.99181,48.7364]]],[[[-3.957,47.71206],[-3.95809,47.71958],[-3.95137,47.72157],[-3.957,47.71206]]],[[[-4.02902,47.77405],[-4.02715,47.77799],[-4.02052,47.77678],[-4.02902,47.77405]]],[[[-4.846,48.03154],[-4.85783,48.03931],[-4.87085,48.04041],[-4.86754,48.04386],[-4.85061,48.04016],[-4.846,48.03154]]],[[[-3.99706,47.70114],[-3.99873,47.71006],[-3.99078,47.70283],[-3.99706,47.70114]]],[[[-4.17813,47.85103],[-4.1935,47.8642],[-4.186,47.86756],[-4.17813,47.85103]]],[[[-4.9592,48.38941],[-4.96734,48.39788],[-4.96281,48.40169],[-4.95344,48.39607],[-4.9592,48.38941]]],[[[-4.86234,48.3413],[-4.85773,48.35072],[-4.84159,48.35491],[-4.86234,48.3413]]],[[[-4.89439,48.37236],[-4.91118,48.3744],[-4.89796,48.37588],[-4.89439,48.37236]]],[[[-3.65914,48.65921],[-3.66562,48.6508],[-3.65428,48.61697],[-3.64938,48.61015],[-3.63843,48.61023],[-3.6406,48.59605],[-3.62917,48.58786],[-3.61761,48.59018],[-3.58864,48.58272],[-3.58424,48.57429],[-3.59873,48.5572],[-3.58171,48.55296],[-3.57147,48.55832],[-3.5524,48.54055],[-3.54106,48.53712],[-3.55808,48.5288],[-3.58418,48.50447],[-3.60454,48.49579],[-3.60133,48.4849],[-3.60755,48.47727],[-3.60002,48.47853],[-3.59315,48.46392],[-3.58226,48.4648],[-3.56765,48.45239],[-3.55357,48.45376],[-3.5505,48.44783],[-3.60054,48.42162],[-3.60114,48.39363],[-3.60768,48.38832],[-3.56766,48.37667],[-3.5543,48.37886],[-3.55583,48.35588],[-3.56324,48.34786],[-3.55539,48.34498],[-3.55094,48.31513],[-3.54095,48.31172],[-3.52539,48.32335],[-3.51853,48.31886],[-3.52834,48.31667],[-3.54087,48.29905],[-3.55248,48.29936],[-3.555,48.29372],[-3.51868,48.28091],[-3.5268,48.27238],[-3.52688,48.25325],[-3.53583,48.25585],[-3.54235,48.24351],[-3.55607,48.24202],[-3.55778,48.22853],[-3.53966,48.20653],[-3.52118,48.20223],[-3.51942,48.18947],[-3.54229,48.19387],[-3.56667,48.19003],[-3.56484,48.18575],[-3.62611,48.16953],[-3.65186,48.15658],[-3.6933,48.1518],[-3.69769,48.14544],[-3.71551,48.14222],[-3.7085,48.13578],[-3.7219,48.12927],[-3.71819,48.11994],[-3.73445,48.11261],[-3.72913,48.10441],[-3.73319,48.0965],[-3.70319,48.09781],[-3.69502,48.09349],[-3.70432,48.08662],[-3.69878,48.06873],[-3.70871,48.06681],[-3.67354,48.05812],[-3.6711,48.03733],[-3.6641,48.0367],[-3.66252,48.01932],[-3.6483,48.00652],[-3.64023,47.98524],[-3.61997,47.98186],[-3.59702,47.99038],[-3.58415,47.98458],[-3.55869,47.99416],[-3.54628,47.98654],[-3.53108,47.98866],[-3.51974,47.97615],[-3.49154,47.9749],[-3.4814,47.95187],[-3.46757,47.94575],[-3.46136,47.9595],[-3.4447,47.95865],[-3.41283,47.9742],[-3.40273,47.96032],[-3.39305,47.95845],[-3.40173,47.94314],[-3.38682,47.92643],[-3.39327,47.91786],[-3.40882,47.91592],[-3.40606,47.90587],[-3.41924,47.90558],[-3.40539,47.90221],[-3.40401,47.86616],[-3.39905,47.86361],[-3.42476,47.86906],[-3.44831,47.8632],[-3.44906,47.84616],[-3.45766,47.83663],[-3.47521,47.83549],[-3.48744,47.8237],[-3.51172,47.83199],[-3.52177,47.83988],[-3.51951,47.84901],[-3.532,47.85663],[-3.54219,47.85666],[-3.54208,47.86284],[-3.54429,47.85799],[-3.52759,47.84401],[-3.53856,47.83786],[-3.5419,47.82146],[-3.53511,47.82063],[-3.53573,47.81297],[-3.52474,47.80978],[-3.52125,47.79887],[-3.53143,47.7911],[-3.53132,47.77094],[-3.53863,47.76264],[-3.56453,47.76877],[-3.60191,47.76868],[-3.60868,47.77238],[-3.60371,47.77678],[-3.61733,47.76951],[-3.64607,47.77466],[-3.64403,47.78853],[-3.65235,47.77925],[-3.6651,47.78144],[-3.68084,47.77679],[-3.72324,47.79831],[-3.72262,47.80335],[-3.70789,47.81323],[-3.70068,47.80814],[-3.69697,47.81902],[-3.67147,47.8244],[-3.64975,47.82079],[-3.64117,47.8284],[-3.65156,47.82191],[-3.67292,47.82555],[-3.69059,47.82018],[-3.69659,47.82099],[-3.69552,47.83106],[-3.70446,47.81481],[-3.73268,47.80346],[-3.7418,47.81237],[-3.75183,47.84716],[-3.74828,47.84189],[-3.7579,47.83579],[-3.74587,47.82627],[-3.75177,47.8146],[-3.74653,47.81573],[-3.74124,47.80924],[-3.74196,47.79748],[-3.75985,47.79067],[-3.80043,47.78737],[-3.82098,47.79716],[-3.82864,47.79346],[-3.83873,47.79775],[-3.85605,47.78961],[-3.85067,47.79806],[-3.85458,47.80399],[-3.90245,47.83572],[-3.8984,47.84676],[-3.89218,47.84294],[-3.88877,47.84872],[-3.89534,47.84927],[-3.88063,47.85916],[-3.89727,47.84917],[-3.90921,47.85033],[-3.91937,47.85637],[-3.91297,47.85951],[-3.90593,47.85605],[-3.90084,47.86237],[-3.90776,47.8625],[-3.91384,47.87196],[-3.91717,47.86786],[-3.93052,47.87075],[-3.93351,47.88177],[-3.94997,47.89045],[-3.94745,47.90024],[-3.95408,47.89402],[-3.97322,47.8947],[-3.97729,47.90968],[-3.98067,47.89474],[-3.99228,47.89588],[-3.98047,47.88921],[-3.99003,47.88274],[-3.97711,47.8538],[-4.02555,47.8504],[-4.03981,47.84465],[-4.05674,47.85604],[-4.0883,47.86206],[-4.04696,47.85166],[-4.07368,47.86467],[-4.07079,47.86849],[-4.07897,47.86908],[-4.07895,47.87661],[-4.08505,47.87329],[-4.07836,47.86573],[-4.09936,47.8625],[-4.10183,47.87012],[-4.11751,47.87665],[-4.11106,47.88413],[-4.12523,47.89147],[-4.11833,47.89316],[-4.12847,47.89273],[-4.14061,47.89977],[-4.14474,47.90934],[-4.13871,47.92587],[-4.11633,47.93058],[-4.10942,47.94211],[-4.07775,47.93736],[-4.09488,47.94129],[-4.07955,47.94944],[-4.08364,47.95151],[-4.09531,47.94258],[-4.10949,47.94269],[-4.1093,47.94992],[-4.09717,47.95343],[-4.09522,47.96717],[-4.10242,47.97444],[-4.11595,47.97739],[-4.11717,47.9835],[-4.11698,47.97544],[-4.101,47.97054],[-4.10933,47.96382],[-4.11448,47.96596],[-4.11208,47.95567],[-4.12213,47.95318],[-4.11261,47.95235],[-4.1108,47.93644],[-4.14078,47.92634],[-4.15092,47.91058],[-4.14561,47.89738],[-4.16565,47.8955],[-4.17633,47.90713],[-4.17117,47.89464],[-4.15068,47.89443],[-4.14824,47.88929],[-4.14922,47.89348],[-4.14036,47.89609],[-4.13041,47.88997],[-4.11331,47.86204],[-4.12316,47.86478],[-4.14069,47.85948],[-4.16356,47.84919],[-4.16981,47.83949],[-4.16513,47.85236],[-4.17163,47.87437],[-4.17883,47.87897],[-4.19565,47.87613],[-4.19148,47.86901],[-4.19784,47.85864],[-4.20676,47.86622],[-4.21565,47.86603],[-4.18937,47.8514],[-4.19116,47.84687],[-4.17943,47.83927],[-4.18319,47.83612],[-4.17485,47.83407],[-4.17481,47.83805],[-4.15884,47.83154],[-4.16505,47.81449],[-4.17483,47.81232],[-4.18298,47.80022],[-4.19244,47.79608],[-4.2077,47.80028],[-4.2168,47.81208],[-4.21024,47.79644],[-4.21921,47.7921],[-4.27716,47.79125],[-4.27192,47.80071],[-4.28577,47.79207],[-4.29571,47.79281],[-4.29606,47.79938],[-4.30652,47.80104],[-4.37419,47.79798],[-4.37149,47.80841],[-4.38063,47.82017],[-4.3521,47.82881],[-4.3479,47.83482],[-4.35407,47.83749],[-4.34604,47.84021],[-4.36245,47.88954],[-4.38359,47.92086],[-4.42255,47.96244],[-4.4509,47.98105],[-4.47587,47.98596],[-4.50063,48.00216],[-4.53671,48.01164],[-4.53113,48.0349],[-4.48818,48.03845],[-4.50557,48.03762],[-4.50995,48.04223],[-4.52113,48.0382],[-4.52171,48.04222],[-4.53323,48.03496],[-4.53971,48.03828],[-4.53388,48.03375],[-4.53547,48.01713],[-4.5558,48.00958],[-4.56475,47.99983],[-4.59227,48.00656],[-4.59726,48.01488],[-4.62263,48.01794],[-4.63296,48.02937],[-4.65026,48.02184],[-4.66391,48.02679],[-4.69727,48.02615],[-4.7408,48.04058],[-4.70788,48.04406],[-4.7143,48.06435],[-4.67185,48.06018],[-4.66523,48.07263],[-4.65598,48.06794],[-4.63161,48.06746],[-4.62978,48.07249],[-4.62173,48.06854],[-4.60514,48.07603],[-4.59114,48.07365],[-4.58124,48.08227],[-4.55163,48.07634],[-4.53644,48.08992],[-4.52576,48.08559],[-4.52218,48.09108],[-4.50329,48.08789],[-4.50033,48.09096],[-4.48933,48.08623],[-4.46591,48.09937],[-4.43299,48.09735],[-4.41613,48.10672],[-4.40484,48.10381],[-4.36249,48.10926],[-4.34097,48.10052],[-4.33347,48.08457],[-4.3353,48.09732],[-4.32758,48.09966],[-4.32289,48.09293],[-4.30439,48.08943],[-4.28664,48.10297],[-4.28063,48.11888],[-4.28535,48.12638],[-4.26898,48.13343],[-4.27308,48.15418],[-4.29538,48.1583],[-4.29912,48.16761],[-4.29314,48.16776],[-4.29118,48.17573],[-4.30316,48.19531],[-4.31243,48.19703],[-4.31612,48.20382],[-4.36907,48.20505],[-4.37816,48.2186],[-4.41302,48.22242],[-4.4256,48.22932],[-4.43928,48.22447],[-4.43233,48.22979],[-4.46391,48.23938],[-4.50165,48.23042],[-4.4973,48.21677],[-4.51118,48.21082],[-4.518,48.19228],[-4.54017,48.18069],[-4.53963,48.17043],[-4.55413,48.16777],[-4.55961,48.17711],[-4.55103,48.18122],[-4.55205,48.20839],[-4.56132,48.23018],[-4.57156,48.23147],[-4.5452,48.24033],[-4.54329,48.24908],[-4.55818,48.25904],[-4.58249,48.25051],[-4.59743,48.25235],[-4.60231,48.25981],[-4.61275,48.26197],[-4.62331,48.25323],[-4.6151,48.27248],[-4.62944,48.2808],[-4.61146,48.27998],[-4.60153,48.287],[-4.59092,48.2802],[-4.59722,48.28117],[-4.59561,48.27684],[-4.58783,48.27497],[-4.56992,48.28194],[-4.57038,48.3039],[-4.5826,48.31941],[-4.55541,48.33827],[-4.53443,48.34186],[-4.54782,48.30966],[-4.55959,48.30565],[-4.55269,48.29433],[-4.53712,48.29186],[-4.54178,48.28986],[-4.53577,48.28394],[-4.52179,48.29112],[-4.5262,48.2946],[-4.50769,48.31071],[-4.4993,48.31117],[-4.51791,48.29532],[-4.5026,48.28086],[-4.46747,48.28813],[-4.46116,48.29439],[-4.41911,48.29313],[-4.42077,48.28594],[-4.4099,48.27603],[-4.38543,48.27514],[-4.30713,48.29753],[-4.27236,48.29601],[-4.26547,48.29294],[-4.26565,48.28459],[-4.28252,48.28891],[-4.28902,48.27425],[-4.25573,48.26358],[-4.26619,48.25733],[-4.25477,48.2594],[-4.2439,48.24966],[-4.2177,48.25818],[-4.2087,48.24197],[-4.21123,48.24682],[-4.18382,48.24647],[-4.18127,48.24243],[-4.16102,48.24486],[-4.13541,48.23622],[-4.11357,48.24456],[-4.11685,48.21828],[-4.10878,48.24574],[-4.09695,48.25554],[-4.13485,48.24144],[-4.15279,48.2475],[-4.20434,48.24903],[-4.21672,48.261],[-4.24066,48.25441],[-4.24849,48.2651],[-4.27943,48.27782],[-4.27689,48.28121],[-4.25866,48.28034],[-4.23399,48.29167],[-4.226,48.28757],[-4.18737,48.29524],[-4.23859,48.29952],[-4.24094,48.30751],[-4.22671,48.31357],[-4.2451,48.30894],[-4.24739,48.29901],[-4.25931,48.3063],[-4.25603,48.30965],[-4.2819,48.31247],[-4.24916,48.32684],[-4.28234,48.3193],[-4.29319,48.31136],[-4.3094,48.31725],[-4.33322,48.3131],[-4.32429,48.32329],[-4.31825,48.32269],[-4.32287,48.32698],[-4.30273,48.33074],[-4.31776,48.33481],[-4.28382,48.34228],[-4.278,48.34488],[-4.29251,48.35021],[-4.26452,48.35818],[-4.29174,48.35296],[-4.30217,48.35564],[-4.30571,48.34966],[-4.29967,48.34487],[-4.33004,48.33865],[-4.33095,48.3464],[-4.31848,48.36218],[-4.34639,48.34233],[-4.35546,48.34332],[-4.34655,48.35473],[-4.36648,48.3448],[-4.36727,48.33554],[-4.37818,48.3255],[-4.41524,48.32423],[-4.4044,48.33721],[-4.39236,48.34086],[-4.39721,48.3422],[-4.4408,48.32703],[-4.45739,48.32707],[-4.43955,48.34128],[-4.44548,48.3495],[-4.43719,48.35984],[-4.40753,48.38054],[-4.31029,48.41736],[-4.27009,48.44504],[-4.31415,48.41984],[-4.33869,48.41465],[-4.34723,48.40701],[-4.36062,48.40979],[-4.36886,48.40149],[-4.39172,48.39765],[-4.40169,48.3896],[-4.43068,48.39744],[-4.43727,48.3825],[-4.4496,48.38506],[-4.45341,48.38162],[-4.45475,48.38741],[-4.47463,48.37971],[-4.48385,48.38263],[-4.50703,48.37518],[-4.53329,48.35778],[-4.5524,48.36221],[-4.57175,48.34924],[-4.60872,48.33789],[-4.6281,48.33751],[-4.64073,48.3459],[-4.65036,48.34502],[-4.68056,48.35561],[-4.70034,48.35027],[-4.69784,48.33868],[-4.71114,48.33076],[-4.7367,48.33278],[-4.76904,48.32834],[-4.77478,48.33588],[-4.77013,48.34752],[-4.78072,48.35859],[-4.75064,48.36012],[-4.75595,48.36218],[-4.74608,48.36565],[-4.7864,48.3613],[-4.78565,48.36655],[-4.7693,48.36501],[-4.76069,48.37817],[-4.77574,48.38979],[-4.77368,48.40542],[-4.78452,48.40528],[-4.79542,48.41466],[-4.77601,48.44362],[-4.78299,48.44557],[-4.76457,48.46687],[-4.75678,48.46791],[-4.75633,48.46382],[-4.75042,48.47106],[-4.71963,48.4756],[-4.76252,48.4721],[-4.77959,48.49744],[-4.77791,48.50473],[-4.76665,48.50928],[-4.77603,48.51917],[-4.76674,48.51555],[-4.76369,48.51991],[-4.76974,48.52137],[-4.75787,48.52108],[-4.7644,48.53101],[-4.75836,48.52977],[-4.75815,48.53447],[-4.74798,48.52798],[-4.75296,48.54392],[-4.73058,48.55635],[-4.71544,48.55945],[-4.7173,48.55572],[-4.70394,48.55132],[-4.69932,48.55563],[-4.70525,48.55716],[-4.70441,48.57003],[-4.68753,48.57243],[-4.68019,48.56712],[-4.67044,48.57435],[-4.64642,48.57212],[-4.62782,48.57892],[-4.62529,48.57507],[-4.59663,48.57158],[-4.59067,48.55452],[-4.58145,48.55625],[-4.58511,48.55956],[-4.55698,48.55982],[-4.50535,48.5459],[-4.50914,48.55221],[-4.52623,48.55831],[-4.53349,48.55561],[-4.55192,48.56257],[-4.58646,48.56249],[-4.59313,48.57424],[-4.61227,48.57825],[-4.6032,48.58395],[-4.60742,48.59761],[-4.59831,48.60801],[-4.58568,48.60192],[-4.59531,48.59329],[-4.54352,48.5983],[-4.52311,48.59245],[-4.52142,48.58461],[-4.50213,48.58682],[-4.49106,48.57515],[-4.47845,48.57298],[-4.49934,48.58987],[-4.51943,48.58893],[-4.52752,48.59629],[-4.56045,48.604],[-4.55387,48.61108],[-4.56828,48.60907],[-4.56519,48.62552],[-4.54166,48.62433],[-4.54851,48.6334],[-4.54376,48.63649],[-4.53019,48.62895],[-4.51384,48.63441],[-4.50627,48.62982],[-4.51253,48.62885],[-4.50983,48.62314],[-4.5013,48.62094],[-4.4936,48.62543],[-4.46522,48.6261],[-4.44087,48.64133],[-4.43435,48.63549],[-4.43331,48.64182],[-4.39881,48.63602],[-4.43252,48.64751],[-4.43656,48.65472],[-4.39804,48.65562],[-4.37916,48.66008],[-4.37292,48.66889],[-4.35002,48.67652],[-4.32979,48.67712],[-4.32911,48.66791],[-4.32227,48.66623],[-4.31236,48.67255],[-4.29407,48.66174],[-4.29994,48.65251],[-4.31811,48.64635],[-4.30816,48.64372],[-4.31615,48.63775],[-4.29694,48.63264],[-4.29351,48.63705],[-4.30081,48.64023],[-4.28107,48.64282],[-4.27446,48.64953],[-4.23843,48.65059],[-4.22434,48.65582],[-4.23357,48.64933],[-4.196,48.65222],[-4.22224,48.65793],[-4.19333,48.68266],[-4.12932,48.69688],[-4.09522,48.6935],[-4.0947,48.68897],[-4.08091,48.69295],[-4.05726,48.67083],[-4.0663,48.6833],[-4.06195,48.68762],[-4.04778,48.68774],[-4.05675,48.68755],[-4.05679,48.70063],[-4.04936,48.7053],[-4.03992,48.70398],[-4.03442,48.71376],[-4.01584,48.71241],[-4.00691,48.7264],[-4.0009,48.7118],[-3.993,48.71513],[-3.98918,48.72685],[-3.97684,48.72216],[-3.97088,48.72727],[-3.96506,48.72177],[-3.97575,48.69903],[-3.9652,48.69168],[-3.9715,48.67409],[-3.94998,48.67262],[-3.95535,48.6692],[-3.95606,48.64646],[-3.95011,48.64013],[-3.95655,48.6168],[-3.94884,48.61772],[-3.93501,48.59868],[-3.94252,48.61076],[-3.93891,48.61453],[-3.95057,48.62336],[-3.95132,48.65021],[-3.93981,48.65775],[-3.93006,48.65784],[-3.92209,48.67551],[-3.91144,48.66996],[-3.89111,48.67089],[-3.9062,48.66083],[-3.89771,48.64636],[-3.86079,48.63258],[-3.85818,48.60931],[-3.86773,48.60406],[-3.85152,48.6067],[-3.8595,48.61434],[-3.84598,48.62676],[-3.81661,48.62859],[-3.84543,48.62892],[-3.86442,48.67033],[-3.85563,48.67369],[-3.85346,48.66177],[-3.84626,48.66018],[-3.85443,48.68928],[-3.8403,48.69673],[-3.84193,48.70588],[-3.83093,48.7119],[-3.82078,48.70135],[-3.82095,48.71822],[-3.80967,48.71198],[-3.79842,48.71245],[-3.78657,48.70145],[-3.76584,48.70909],[-3.73383,48.70883],[-3.71692,48.70482],[-3.71806,48.70016],[-3.70133,48.68985],[-3.68847,48.69168],[-3.68031,48.68668],[-3.65583,48.69665],[-3.64327,48.69591],[-3.65478,48.6824],[-3.63926,48.67334],[-3.65914,48.65921]]],[[[-5.1026,48.43612],[-5.11736,48.43898],[-5.092,48.45019],[-5.09875,48.45629],[-5.14026,48.44804],[-5.13146,48.45969],[-5.10727,48.46553],[-5.10672,48.47181],[-5.09142,48.47639],[-5.07691,48.47431],[-5.07252,48.48273],[-5.0503,48.47628],[-5.05861,48.46688],[-5.03438,48.46332],[-5.06273,48.44876],[-5.07962,48.4509],[-5.08887,48.44049],[-5.1026,48.43612]]],[[[-5.09629,48.47755],[-5.1027,48.48233],[-5.09017,48.47994],[-5.09629,48.47755]]]]}},{"type":"Feature","properties":{"code":"30","nom":"Gard"},"geometry":{"type":"Polygon","coordinates":[[[3.37365,44.17076],[3.39562,44.16863],[3.39655,44.16123],[3.40514,44.16192],[3.41143,44.15336],[3.43083,44.148],[3.43973,44.12901],[3.53225,44.122],[3.54074,44.1189],[3.54342,44.10928],[3.56384,44.12324],[3.60317,44.11578],[3.63284,44.12122],[3.636,44.14058],[3.65324,44.14596],[3.62749,44.15449],[3.6371,44.17635],[3.64965,44.18085],[3.66031,44.17384],[3.67151,44.17964],[3.66984,44.18638],[3.68403,44.18252],[3.70625,44.16469],[3.72562,44.16424],[3.73701,44.15586],[3.76039,44.15116],[3.76534,44.14116],[3.77358,44.14352],[3.797,44.12739],[3.83212,44.13734],[3.87553,44.12654],[3.88963,44.14494],[3.90083,44.14983],[3.90952,44.14714],[3.91305,44.16],[3.92727,44.1613],[3.92333,44.18233],[3.9738,44.16397],[3.97657,44.17113],[3.96586,44.1707],[3.96135,44.17523],[3.95988,44.19125],[3.93657,44.19492],[3.95159,44.21826],[3.94617,44.24238],[3.95474,44.24958],[3.9663,44.24785],[3.97477,44.25584],[3.9601,44.2708],[3.9457,44.26668],[3.93372,44.27572],[3.93942,44.28698],[3.92286,44.30522],[3.94272,44.31597],[3.95223,44.33154],[3.93462,44.3359],[3.90725,44.37538],[3.88586,44.38827],[3.8887,44.39296],[3.89981,44.39096],[3.90792,44.40262],[3.91649,44.40465],[3.95106,44.40142],[3.94874,44.41257],[3.96114,44.41397],[3.97304,44.42671],[3.97526,44.44293],[3.99816,44.4598],[4.01449,44.45471],[4.02321,44.44558],[4.0376,44.44572],[4.04646,44.43271],[4.03549,44.42009],[4.06844,44.40511],[4.06453,44.39456],[4.05634,44.39259],[4.04783,44.3975],[4.04048,44.3913],[4.05298,44.3787],[4.05757,44.36346],[4.05353,44.33867],[4.03573,44.3302],[4.05145,44.31732],[4.07371,44.32986],[4.0933,44.3305],[4.09379,44.3345],[4.11576,44.32687],[4.12675,44.33773],[4.1403,44.32788],[4.14287,44.31335],[4.16497,44.31215],[4.17799,44.31774],[4.1872,44.29931],[4.21525,44.29067],[4.24147,44.2698],[4.25789,44.26481],[4.27792,44.27522],[4.28861,44.29188],[4.28837,44.31502],[4.30266,44.31468],[4.31663,44.32069],[4.32995,44.33212],[4.32577,44.33832],[4.36772,44.33939],[4.3913,44.34694],[4.40326,44.33358],[4.38959,44.30109],[4.39538,44.29086],[4.42011,44.28709],[4.43311,44.29113],[4.43465,44.28326],[4.44042,44.28342],[4.45321,44.29787],[4.44842,44.29661],[4.45422,44.33963],[4.47494,44.34202],[4.48153,44.33691],[4.49902,44.33825],[4.50368,44.34419],[4.51275,44.32809],[4.52288,44.33042],[4.53224,44.32267],[4.54879,44.32572],[4.54447,44.32077],[4.5587,44.30244],[4.60453,44.29138],[4.616,44.27818],[4.63493,44.28482],[4.64922,44.27036],[4.65407,44.25434],[4.67786,44.23412],[4.67425,44.21402],[4.70655,44.21443],[4.70578,44.19279],[4.72207,44.18742],[4.71638,44.17672],[4.7189,44.1445],[4.70607,44.10775],[4.72063,44.08179],[4.72587,44.07844],[4.74884,44.08723],[4.76086,44.0863],[4.75956,44.07507],[4.78798,44.06505],[4.78763,44.05402],[4.81617,44.03214],[4.82115,44.01647],[4.8409,44.01293],[4.84438,43.98937],[4.83766,43.98519],[4.81247,43.98766],[4.81402,43.964],[4.79278,43.95378],[4.77902,43.93789],[4.75,43.93218],[4.72337,43.90595],[4.70065,43.89837],[4.70932,43.89801],[4.69223,43.88418],[4.66242,43.87083],[4.65923,43.87582],[4.64191,43.86748],[4.6483,43.85883],[4.64146,43.85114],[4.66016,43.85324],[4.66679,43.84612],[4.64242,43.83144],[4.65508,43.80764],[4.65194,43.78407],[4.62949,43.76192],[4.61228,43.72475],[4.62745,43.68543],[4.59303,43.68746],[4.5789,43.69751],[4.55811,43.6995],[4.53985,43.70727],[4.48724,43.69924],[4.47567,43.68446],[4.47747,43.67251],[4.4513,43.66413],[4.42617,43.62448],[4.43975,43.61067],[4.46681,43.61521],[4.47252,43.61204],[4.47414,43.60386],[4.46068,43.58926],[4.44701,43.58303],[4.42554,43.58522],[4.40294,43.57299],[4.41659,43.57134],[4.40935,43.56113],[4.38741,43.5622],[4.38166,43.553],[4.35037,43.54675],[4.33414,43.53545],[4.31608,43.54488],[4.32287,43.55431],[4.31399,43.55557],[4.31714,43.55215],[4.3079,43.5452],[4.32467,43.5282],[4.30883,43.52447],[4.29585,43.51453],[4.23968,43.49917],[4.23028,43.46019],[4.16562,43.47191],[4.1272,43.48945],[4.11651,43.5083],[4.12315,43.52135],[4.13729,43.52467],[4.13912,43.5319],[4.12162,43.54708],[4.10104,43.55437],[4.10941,43.56849],[4.09591,43.58153],[4.08048,43.59016],[4.07467,43.58859],[4.08444,43.592],[4.09891,43.58524],[4.12401,43.58895],[4.15022,43.58556],[4.14979,43.59817],[4.16877,43.60903],[4.19377,43.64207],[4.19415,43.65459],[4.16285,43.68732],[4.16669,43.69932],[4.14302,43.73684],[4.13065,43.74099],[4.11404,43.73774],[4.09367,43.75247],[4.08976,43.76523],[4.08363,43.76847],[4.06751,43.76471],[4.06331,43.77228],[4.054,43.77221],[4.05353,43.78561],[4.01857,43.80717],[4.00134,43.81305],[3.97435,43.80147],[3.96587,43.8024],[3.96159,43.81655],[3.97838,43.82991],[3.97258,43.83723],[3.97936,43.84288],[3.95834,43.84374],[3.9579,43.85438],[3.9221,43.85838],[3.91696,43.88789],[3.8971,43.87759],[3.85681,43.87712],[3.8518,43.86763],[3.838,43.87073],[3.83081,43.86642],[3.82236,43.87482],[3.80369,43.87929],[3.79954,43.89081],[3.82902,43.92451],[3.82031,43.94241],[3.79552,43.94228],[3.78684,43.95453],[3.78734,43.96687],[3.75899,43.96758],[3.75214,43.97275],[3.74377,43.96661],[3.73141,43.97188],[3.71727,43.96098],[3.70513,43.96207],[3.69013,43.95154],[3.68551,43.95398],[3.68218,43.94713],[3.6895,43.93994],[3.68356,43.94045],[3.67579,43.93146],[3.67145,43.9096],[3.64261,43.91564],[3.64755,43.90244],[3.63898,43.89646],[3.63249,43.89927],[3.63898,43.91619],[3.62359,43.91698],[3.57551,43.86539],[3.59942,43.85473],[3.60087,43.84945],[3.5813,43.84813],[3.57886,43.8436],[3.5581,43.85671],[3.55377,43.85176],[3.53242,43.85739],[3.52825,43.85432],[3.52781,43.86054],[3.51909,43.86337],[3.52297,43.8884],[3.51594,43.88893],[3.51334,43.89621],[3.50265,43.89729],[3.50316,43.89141],[3.49566,43.8895],[3.483,43.89197],[3.46272,43.87205],[3.43212,43.86285],[3.42161,43.87232],[3.43137,43.87258],[3.44148,43.88752],[3.43219,43.89377],[3.44027,43.89684],[3.42445,43.9116],[3.40102,43.91504],[3.39474,43.90919],[3.37017,43.91748],[3.36026,43.91063],[3.35053,43.93233],[3.35709,43.94902],[3.37564,43.95601],[3.37816,43.96755],[3.40562,43.96968],[3.41775,43.99258],[3.43917,43.99804],[3.44583,44.00454],[3.45158,44.02145],[3.41726,44.0416],[3.40082,44.04328],[3.39009,44.05755],[3.3714,44.0494],[3.36708,44.05822],[3.35184,44.0502],[3.33768,44.05829],[3.32891,44.07903],[3.31836,44.07908],[3.30739,44.06908],[3.29471,44.0678],[3.2974,44.07232],[3.28916,44.07221],[3.27718,44.08762],[3.2626,44.09288],[3.29102,44.10586],[3.31179,44.10434],[3.32293,44.10982],[3.32029,44.1359],[3.33227,44.14179],[3.33462,44.15882],[3.37365,44.17076]]]}},{"type":"Feature","properties":{"code":"31","nom":"Haute-Garonne"},"geometry":{"type":"Polygon","coordinates":[[[0.95398,43.78737],[0.96188,43.79039],[0.9793,43.78637],[0.99153,43.79732],[1.01735,43.80194],[1.02584,43.79785],[1.0362,43.80423],[1.05734,43.79794],[1.08331,43.81632],[1.09685,43.8073],[1.1105,43.80565],[1.10506,43.8014],[1.11026,43.79632],[1.15038,43.82223],[1.18143,43.79482],[1.21672,43.79193],[1.21827,43.78209],[1.20542,43.77467],[1.21277,43.76768],[1.27825,43.78757],[1.26702,43.79772],[1.27815,43.803],[1.28264,43.79616],[1.31145,43.8007],[1.36003,43.8172],[1.35436,43.83647],[1.32803,43.83816],[1.31383,43.83214],[1.30984,43.83989],[1.29382,43.8456],[1.31941,43.85807],[1.3303,43.85111],[1.35953,43.85117],[1.36463,43.85554],[1.3481,43.86917],[1.36518,43.88957],[1.39322,43.88053],[1.4019,43.88555],[1.41811,43.87138],[1.43152,43.86884],[1.44719,43.87413],[1.44892,43.87032],[1.47564,43.90738],[1.48786,43.90199],[1.49224,43.88735],[1.51657,43.90084],[1.5152,43.90597],[1.52332,43.9036],[1.53279,43.92135],[1.55469,43.91872],[1.54728,43.89953],[1.56217,43.87911],[1.55605,43.87515],[1.56401,43.87188],[1.55509,43.86849],[1.57258,43.8488],[1.59256,43.84264],[1.58708,43.83287],[1.59301,43.82639],[1.59023,43.81453],[1.63031,43.7994],[1.64479,43.80026],[1.65013,43.79453],[1.64075,43.77894],[1.65166,43.77554],[1.65584,43.76827],[1.64992,43.75187],[1.66067,43.74184],[1.69889,43.72644],[1.70645,43.71622],[1.70167,43.70924],[1.69347,43.71241],[1.68463,43.70768],[1.68184,43.7008],[1.66103,43.70565],[1.66357,43.69406],[1.7207,43.68835],[1.72028,43.67453],[1.72885,43.66854],[1.73057,43.65749],[1.69985,43.64939],[1.69215,43.64184],[1.69106,43.62457],[1.70445,43.61804],[1.70774,43.62275],[1.72087,43.61778],[1.74528,43.60268],[1.76654,43.60275],[1.77902,43.58693],[1.79057,43.58325],[1.79817,43.58446],[1.80956,43.57799],[1.81292,43.58256],[1.84009,43.57768],[1.84945,43.56754],[1.85071,43.54928],[1.88041,43.54032],[1.87138,43.53429],[1.87963,43.53032],[1.88307,43.51827],[1.9172,43.50152],[1.92057,43.50513],[1.95251,43.49045],[1.95608,43.49406],[1.96834,43.49064],[1.99,43.47747],[1.99545,43.4828],[2.0087,43.48],[2.01614,43.48763],[2.01554,43.50948],[2.03795,43.49935],[2.04068,43.51298],[2.04829,43.48573],[2.03888,43.47671],[2.02202,43.47451],[2.01355,43.45041],[2.01462,43.44644],[2.0224,43.44709],[2.0389,43.42333],[2.03121,43.41935],[2.02074,43.42319],[2.01436,43.41471],[1.9883,43.40761],[1.97213,43.42095],[1.96592,43.41519],[1.95817,43.4256],[1.94791,43.41949],[1.93424,43.42525],[1.91826,43.42029],[1.9214,43.41365],[1.90499,43.39337],[1.89558,43.39658],[1.90478,43.40742],[1.89612,43.41845],[1.87324,43.42879],[1.87181,43.43811],[1.85644,43.44327],[1.84295,43.43254],[1.84818,43.42563],[1.84212,43.41508],[1.8261,43.41812],[1.81727,43.41065],[1.8261,43.39484],[1.80296,43.39255],[1.81112,43.38178],[1.80146,43.37619],[1.80742,43.37252],[1.80421,43.35793],[1.81663,43.34938],[1.81348,43.34149],[1.79697,43.34057],[1.78254,43.34613],[1.77227,43.33698],[1.75162,43.34961],[1.73351,43.33511],[1.72377,43.3409],[1.72973,43.33617],[1.72382,43.32975],[1.73407,43.32306],[1.73581,43.3142],[1.70401,43.30282],[1.71629,43.29545],[1.69647,43.2755],[1.68842,43.27355],[1.6748,43.28121],[1.66965,43.27849],[1.65001,43.26104],[1.65664,43.24596],[1.64969,43.24029],[1.63508,43.2371],[1.63733,43.25548],[1.60692,43.25978],[1.60205,43.26597],[1.58253,43.26884],[1.57204,43.27621],[1.5675,43.26983],[1.57332,43.2619],[1.56501,43.25333],[1.54621,43.27738],[1.51873,43.26917],[1.51759,43.28942],[1.51235,43.29325],[1.5066,43.28617],[1.49722,43.29178],[1.48943,43.25842],[1.50433,43.25034],[1.49335,43.23793],[1.50427,43.23283],[1.50768,43.22147],[1.48735,43.22735],[1.46761,43.20884],[1.43427,43.21658],[1.41611,43.22603],[1.42902,43.25425],[1.40194,43.27761],[1.37626,43.28852],[1.37774,43.29618],[1.36386,43.30773],[1.37302,43.31014],[1.33231,43.31564],[1.31803,43.29589],[1.30513,43.2982],[1.30255,43.28625],[1.29253,43.28837],[1.30195,43.2709],[1.29395,43.26366],[1.33067,43.26256],[1.33206,43.25721],[1.31842,43.25115],[1.33588,43.24987],[1.34799,43.24286],[1.37376,43.2447],[1.38343,43.22868],[1.36849,43.20924],[1.34549,43.21224],[1.32782,43.20456],[1.32961,43.19702],[1.3205,43.18992],[1.30572,43.19491],[1.29628,43.18928],[1.27407,43.19623],[1.25105,43.18341],[1.24367,43.18956],[1.22872,43.18684],[1.22773,43.174],[1.21398,43.16244],[1.21896,43.15263],[1.26235,43.14612],[1.27387,43.14839],[1.30272,43.12259],[1.28919,43.12292],[1.28093,43.11061],[1.2602,43.10923],[1.26185,43.09165],[1.22357,43.08593],[1.20823,43.11911],[1.17498,43.14097],[1.16597,43.1303],[1.14543,43.13782],[1.14511,43.14386],[1.12678,43.1558],[1.11276,43.14458],[1.08984,43.14181],[1.08798,43.13383],[1.05997,43.13846],[1.05354,43.14545],[1.04686,43.13669],[1.05227,43.13379],[1.05062,43.11932],[1.03884,43.10055],[1.02592,43.10111],[1.00207,43.11362],[1.00424,43.10446],[0.99094,43.09215],[1.00646,43.08212],[0.99592,43.07227],[0.97896,43.07258],[0.98558,43.06544],[0.98406,43.05093],[0.99431,43.04588],[0.99303,43.0396],[0.98427,43.04445],[0.98685,43.0254],[1.0064,43.02036],[1.01346,43.0096],[1.02239,43.0102],[1.00324,43.00506],[0.97624,42.97309],[0.95207,42.96637],[0.92803,42.96669],[0.90557,42.9575],[0.87491,42.95778],[0.88364,42.93129],[0.85774,42.92353],[0.84463,42.92596],[0.82687,42.91627],[0.844,42.88976],[0.83506,42.87236],[0.84821,42.86533],[0.85989,42.83816],[0.85831,42.82572],[0.8331,42.82845],[0.8021,42.84036],[0.77639,42.83654],[0.70838,42.8614],[0.67789,42.85511],[0.67859,42.84795],[0.65871,42.83672],[0.66986,42.82438],[0.66469,42.81431],[0.66969,42.80209],[0.64539,42.78354],[0.66681,42.7754],[0.64198,42.75468],[0.66294,42.7501],[0.68003,42.72347],[0.67383,42.71802],[0.68226,42.70897],[0.67377,42.69984],[0.67647,42.69101],[0.61701,42.69619],[0.59732,42.70584],[0.58916,42.69495],[0.52961,42.70268],[0.51852,42.69188],[0.49291,42.69308],[0.47775,42.69999],[0.48459,42.71027],[0.44904,42.73385],[0.45818,42.73482],[0.46311,42.74341],[0.46339,42.75962],[0.45471,42.77202],[0.46355,42.8045],[0.45582,42.81689],[0.4675,42.84675],[0.46024,42.85175],[0.47268,42.85917],[0.47736,42.87824],[0.49651,42.87631],[0.5025,42.86839],[0.52555,42.86755],[0.53418,42.86126],[0.5498,42.8647],[0.56234,42.86076],[0.57594,42.87083],[0.59952,42.92724],[0.64199,42.95287],[0.64612,42.96094],[0.63579,42.9689],[0.61883,42.97242],[0.61224,42.98861],[0.62383,42.9904],[0.62742,43.0001],[0.61571,43.01108],[0.60656,43.03462],[0.59322,43.03545],[0.59183,43.02237],[0.56563,43.02034],[0.54018,43.0013],[0.53098,43.00328],[0.53208,43.00769],[0.52823,43.00471],[0.53793,43.04164],[0.54717,43.04485],[0.56672,43.03737],[0.5612,43.06034],[0.55287,43.06538],[0.56385,43.07425],[0.53167,43.08295],[0.5324,43.09332],[0.50082,43.09574],[0.50257,43.10684],[0.49121,43.10867],[0.48904,43.11517],[0.45321,43.11125],[0.4643,43.11805],[0.442,43.13127],[0.47082,43.15786],[0.52193,43.19209],[0.52605,43.19833],[0.51909,43.19453],[0.50586,43.19823],[0.51739,43.21237],[0.53562,43.20767],[0.54487,43.21332],[0.55187,43.20915],[0.57383,43.22033],[0.57284,43.23311],[0.55337,43.23771],[0.5668,43.25232],[0.57844,43.25375],[0.57682,43.25906],[0.59666,43.27377],[0.61388,43.2771],[0.61571,43.28878],[0.63626,43.29598],[0.63563,43.30124],[0.60681,43.31089],[0.61165,43.31567],[0.64634,43.31189],[0.65299,43.31478],[0.67982,43.33467],[0.71381,43.37739],[0.73373,43.37097],[0.74832,43.38363],[0.75366,43.38939],[0.74488,43.39535],[0.75909,43.40465],[0.74823,43.42019],[0.75824,43.41448],[0.77042,43.41681],[0.8073,43.39972],[0.82054,43.41698],[0.8444,43.40988],[0.8658,43.41566],[0.87289,43.41072],[0.88811,43.41186],[0.89489,43.40528],[0.91725,43.40633],[0.94429,43.38088],[0.9469,43.38523],[0.96434,43.38648],[0.96705,43.36925],[0.97808,43.36265],[0.99366,43.36653],[0.99604,43.37632],[1.00553,43.37972],[0.99838,43.38189],[1.00232,43.39099],[0.99326,43.40946],[1.00445,43.41433],[1.02279,43.4117],[1.02993,43.41831],[1.01903,43.43079],[1.03202,43.4417],[1.03737,43.45719],[1.04541,43.45904],[1.01753,43.4736],[1.03641,43.48672],[1.05185,43.48699],[1.04624,43.49657],[1.05639,43.49351],[1.0592,43.50539],[1.07342,43.50595],[1.05038,43.51578],[1.05782,43.52698],[1.07002,43.52302],[1.07641,43.52692],[1.05299,43.54097],[1.06651,43.53991],[1.07151,43.54622],[1.08771,43.5469],[1.09931,43.53361],[1.11874,43.54584],[1.11217,43.55673],[1.15643,43.55683],[1.16335,43.57394],[1.19934,43.56918],[1.20197,43.57506],[1.20144,43.5963],[1.18045,43.61458],[1.17272,43.60748],[1.15865,43.60518],[1.14285,43.62135],[1.14755,43.63418],[1.14014,43.64189],[1.11122,43.63735],[1.0954,43.64173],[1.0877,43.64498],[1.10044,43.66132],[1.09496,43.66498],[1.07483,43.66171],[1.0637,43.67153],[1.04874,43.67528],[1.06415,43.70278],[1.03786,43.7136],[1.02819,43.71007],[1.0227,43.72301],[0.98937,43.73932],[0.98592,43.74381],[0.99283,43.74593],[0.9754,43.76107],[0.96606,43.75957],[0.96985,43.76222],[0.95623,43.77362],[0.95398,43.78737]]]}},{"type":"Feature","properties":{"code":"32","nom":"Gers"},"geometry":{"type":"Polygon","coordinates":[[[0.07605,43.98314],[0.11682,43.98804],[0.12679,44.00191],[0.14166,43.99424],[0.13864,43.97477],[0.15754,43.97284],[0.16591,43.98088],[0.16676,43.99683],[0.18035,44.00055],[0.18958,44.01464],[0.20281,44.01265],[0.20587,44.02102],[0.21404,44.02299],[0.22471,44.01917],[0.23399,44.0216],[0.23338,44.00889],[0.25344,44.0025],[0.25724,44.00784],[0.30285,43.99098],[0.3177,43.99461],[0.31653,44.01012],[0.32706,44.00734],[0.3581,44.01701],[0.38152,44.00638],[0.39687,44.02231],[0.41119,44.02068],[0.41722,44.0295],[0.425,44.02613],[0.44245,44.02876],[0.45952,44.05524],[0.48406,44.05272],[0.48522,44.05791],[0.50233,44.05751],[0.50594,44.05185],[0.51214,44.0633],[0.53843,44.05295],[0.55547,44.05475],[0.56692,44.06033],[0.57588,44.07591],[0.59376,44.07929],[0.62789,44.06063],[0.63165,44.0495],[0.65408,44.04243],[0.65234,44.03312],[0.66264,44.02411],[0.67709,44.02697],[0.68567,44.04617],[0.69526,44.04437],[0.70792,44.05829],[0.75172,44.06638],[0.76405,44.02964],[0.81977,44.05619],[0.86466,44.0387],[0.85147,44.0364],[0.83956,44.02399],[0.82531,44.02988],[0.8126,44.02435],[0.82487,44.01502],[0.8189,44.00968],[0.82765,43.99661],[0.81657,43.99088],[0.81613,43.9838],[0.79633,43.97571],[0.78367,43.95451],[0.76068,43.94699],[0.76282,43.93028],[0.77149,43.92246],[0.8093,43.9323],[0.84262,43.91452],[0.85214,43.9227],[0.86357,43.92356],[0.87397,43.9134],[0.8882,43.90962],[0.89111,43.90264],[0.90371,43.89923],[0.88399,43.89084],[0.88349,43.87526],[0.91243,43.8497],[0.89474,43.85029],[0.89524,43.8399],[0.92533,43.82987],[0.90442,43.80994],[0.89768,43.78646],[0.90432,43.78312],[0.90913,43.78754],[0.91677,43.7847],[0.92434,43.79295],[0.93053,43.78848],[0.94898,43.79177],[0.95623,43.77362],[0.96985,43.76222],[0.96606,43.75957],[0.9754,43.76107],[0.99283,43.74593],[0.98592,43.74381],[0.98937,43.73932],[1.0227,43.72301],[1.02819,43.71007],[1.03786,43.7136],[1.06415,43.70278],[1.04874,43.67528],[1.0637,43.67153],[1.07483,43.66171],[1.09496,43.66498],[1.10044,43.66132],[1.0877,43.64498],[1.11122,43.63735],[1.14014,43.64189],[1.14755,43.63418],[1.14285,43.62135],[1.15865,43.60518],[1.17272,43.60748],[1.18045,43.61458],[1.20144,43.5963],[1.19934,43.56918],[1.16335,43.57394],[1.15643,43.55683],[1.11217,43.55673],[1.11874,43.54584],[1.09931,43.53361],[1.08771,43.5469],[1.07151,43.54622],[1.06651,43.53991],[1.05299,43.54097],[1.07641,43.52692],[1.07002,43.52302],[1.05782,43.52698],[1.05038,43.51578],[1.07342,43.50595],[1.0592,43.50539],[1.05639,43.49351],[1.04624,43.49657],[1.05185,43.48699],[1.03641,43.48672],[1.01753,43.4736],[1.04541,43.45904],[1.03737,43.45719],[1.03202,43.4417],[1.01903,43.43079],[1.02993,43.41831],[1.02279,43.4117],[1.00445,43.41433],[0.99326,43.40946],[1.00232,43.39099],[0.99838,43.38189],[1.00553,43.37972],[0.99604,43.37632],[0.99366,43.36653],[0.97808,43.36265],[0.96705,43.36925],[0.96434,43.38648],[0.9469,43.38523],[0.94429,43.38088],[0.91725,43.40633],[0.89489,43.40528],[0.88811,43.41186],[0.87289,43.41072],[0.8658,43.41566],[0.8444,43.40988],[0.82054,43.41698],[0.8073,43.39972],[0.77042,43.41681],[0.75824,43.41448],[0.74889,43.42052],[0.75909,43.40465],[0.74488,43.39535],[0.75366,43.38939],[0.74832,43.38363],[0.73373,43.37097],[0.71381,43.37739],[0.67472,43.32951],[0.64634,43.31189],[0.62071,43.31592],[0.60681,43.31089],[0.57558,43.32256],[0.56315,43.32087],[0.55239,43.32935],[0.54105,43.32706],[0.5079,43.33413],[0.49399,43.32512],[0.44498,43.34074],[0.44297,43.32793],[0.42121,43.32756],[0.39573,43.3336],[0.39926,43.35019],[0.39107,43.34996],[0.39181,43.3556],[0.33184,43.34316],[0.32714,43.3727],[0.30662,43.36809],[0.29804,43.38811],[0.27841,43.38622],[0.23258,43.36777],[0.20634,43.36778],[0.19948,43.37525],[0.17919,43.37294],[0.1738,43.40277],[0.15305,43.39948],[0.13231,43.4242],[0.13746,43.43399],[0.16588,43.44435],[0.15003,43.46472],[0.135,43.46572],[0.13047,43.4949],[0.11661,43.51493],[0.11212,43.51737],[0.08975,43.51017],[0.08027,43.5239],[0.05144,43.51855],[0.04304,43.53445],[0.02958,43.5449],[0.01677,43.54314],[0.00892,43.56055],[-0.00288,43.56624],[-0.00363,43.58539],[-0.01544,43.60551],[-0.03337,43.60402],[-0.04467,43.61316],[-0.05476,43.60622],[-0.07397,43.60631],[-0.07567,43.59159],[-0.09751,43.58942],[-0.09919,43.58178],[-0.12163,43.58678],[-0.12891,43.58122],[-0.13819,43.57989],[-0.1481,43.58579],[-0.16045,43.58057],[-0.17656,43.59683],[-0.20474,43.5836],[-0.21061,43.59324],[-0.24233,43.58342],[-0.24817,43.59666],[-0.25465,43.59708],[-0.2472,43.61595],[-0.27764,43.61589],[-0.2819,43.6411],[-0.26376,43.63592],[-0.26338,43.65278],[-0.24214,43.65506],[-0.23973,43.67124],[-0.25802,43.67375],[-0.25682,43.68319],[-0.2391,43.69395],[-0.25063,43.70779],[-0.21085,43.72426],[-0.19414,43.73702],[-0.19732,43.74766],[-0.21886,43.75033],[-0.2067,43.75921],[-0.2173,43.77149],[-0.21281,43.77879],[-0.22228,43.78933],[-0.2178,43.79817],[-0.22714,43.80827],[-0.216,43.81254],[-0.20082,43.80671],[-0.19177,43.8101],[-0.19812,43.82937],[-0.18813,43.83256],[-0.20891,43.85767],[-0.19572,43.86531],[-0.19641,43.87162],[-0.18556,43.86301],[-0.19049,43.88075],[-0.21128,43.88527],[-0.22231,43.89417],[-0.23394,43.89107],[-0.23934,43.89828],[-0.22458,43.91384],[-0.21774,43.90679],[-0.20009,43.91483],[-0.17911,43.93792],[-0.1598,43.92771],[-0.15347,43.93981],[-0.13582,43.93607],[-0.12468,43.94435],[-0.10818,43.92914],[-0.09524,43.92946],[-0.09925,43.93622],[-0.09336,43.9485],[-0.08114,43.94258],[-0.07025,43.94494],[-0.05936,43.96094],[-0.04401,43.96283],[-0.03617,43.98374],[0.00673,43.95374],[0.00551,43.9435],[-0.0239,43.92984],[0.01766,43.91169],[0.03079,43.90056],[0.04063,43.90378],[0.05902,43.89681],[0.07665,43.91647],[0.05472,43.96006],[0.06633,43.96472],[0.07605,43.98314]]]}},{"type":"Feature","properties":{"code":"33","nom":"Gironde"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-1.23902,44.59278],[-1.22951,44.58872],[-1.24357,44.58886],[-1.24362,44.58444],[-1.23442,44.58436],[-1.24954,44.58029],[-1.24631,44.57179],[-1.25158,44.57956],[-1.23902,44.59278]]],[[[-1.02997,44.6492],[-1.02626,44.66247],[-1.01378,44.6518],[-1.02997,44.6492]]],[[[-1.17789,44.69736],[-1.18516,44.69722],[-1.18765,44.70219],[-1.17943,44.70398],[-1.17789,44.69736]]],[[[-1.02574,45.57469],[-0.84106,45.43508],[-0.77402,45.36921],[-0.75268,45.32177],[-0.71367,45.3279],[-0.64431,45.32205],[-0.6446,45.31515],[-0.61464,45.32343],[-0.59448,45.32114],[-0.58689,45.34375],[-0.56897,45.33152],[-0.57538,45.31555],[-0.56579,45.29593],[-0.56103,45.29876],[-0.51359,45.28633],[-0.47309,45.29393],[-0.42549,45.27864],[-0.41542,45.26933],[-0.42464,45.24828],[-0.40728,45.24783],[-0.40511,45.23982],[-0.42077,45.20853],[-0.40167,45.18846],[-0.38493,45.14609],[-0.36385,45.17026],[-0.33914,45.1671],[-0.32064,45.15617],[-0.31376,45.13782],[-0.30804,45.14903],[-0.27536,45.1414],[-0.25853,45.1145],[-0.24684,45.10863],[-0.22208,45.10797],[-0.19096,45.09389],[-0.15409,45.08905],[-0.14161,45.09],[-0.13064,45.09667],[-0.1284,45.10504],[-0.09788,45.12104],[-0.0877,45.12139],[-0.06357,45.09915],[-0.05273,45.10118],[-0.04768,45.0975],[-0.03451,45.10349],[-0.02578,45.11518],[-0.00732,45.11912],[0.04446,45.11537],[0.06299,45.09635],[0.0733,45.07012],[0.03914,45.02431],[0.04011,44.9935],[0.03339,44.98063],[0.02707,44.97538],[0.01366,44.97893],[0.00997,44.95393],[0.00325,44.94744],[0.03461,44.91557],[-0.01101,44.85772],[-0.03304,44.85596],[-0.03421,44.85211],[0.00408,44.84555],[0.02106,44.84977],[0.03872,44.83872],[0.03946,44.82749],[0.06198,44.82573],[0.07181,44.81867],[0.08302,44.83122],[0.09871,44.83297],[0.10838,44.8315],[0.11233,44.81897],[0.12388,44.82792],[0.14717,44.82931],[0.17855,44.82598],[0.1913,44.82011],[0.20856,44.84071],[0.24175,44.85689],[0.2414,44.8725],[0.27906,44.86698],[0.31507,44.84541],[0.30831,44.83922],[0.30099,44.84026],[0.30075,44.82919],[0.29231,44.8317],[0.28682,44.82302],[0.26372,44.82641],[0.27489,44.80024],[0.27144,44.78537],[0.29733,44.76228],[0.29509,44.75743],[0.25157,44.75022],[0.24032,44.7632],[0.22649,44.76439],[0.20999,44.74045],[0.21914,44.72464],[0.20146,44.72315],[0.19168,44.74881],[0.18417,44.74871],[0.17506,44.73373],[0.16438,44.73579],[0.15081,44.73013],[0.13991,44.73644],[0.1334,44.70463],[0.11805,44.71307],[0.10768,44.71067],[0.1063,44.70154],[0.10034,44.70098],[0.10408,44.68562],[0.11428,44.68113],[0.13373,44.68244],[0.13259,44.66835],[0.14427,44.66546],[0.16217,44.67052],[0.18275,44.66136],[0.16853,44.647],[0.16521,44.63286],[0.14983,44.63279],[0.14119,44.64131],[0.13813,44.63896],[0.13926,44.62714],[0.15503,44.61516],[0.15086,44.60864],[0.13545,44.6079],[0.11147,44.59019],[0.08223,44.58405],[0.08159,44.563],[0.07641,44.56358],[0.06856,44.54822],[0.03774,44.55415],[0.02098,44.54146],[-0.00102,44.55177],[0.0181,44.52978],[-0.00611,44.51747],[-0.01513,44.50659],[-0.01325,44.46063],[0.00488,44.45683],[0.00753,44.44714],[-0.00471,44.44194],[-0.00594,44.42399],[-0.0139,44.4187],[-0.00519,44.4179],[-0.00869,44.4123],[0.01823,44.38988],[0.00702,44.38185],[0.0236,44.37747],[0.01472,44.36661],[-0.01223,44.37196],[-0.02882,44.36018],[-0.05843,44.36134],[-0.06956,44.35294],[-0.07882,44.3537],[-0.08575,44.33761],[-0.05951,44.32137],[-0.03481,44.29673],[-0.0434,44.29357],[-0.03298,44.27173],[-0.05336,44.26576],[-0.06662,44.24676],[-0.07437,44.25241],[-0.08825,44.23627],[-0.09671,44.23816],[-0.10806,44.23102],[-0.12318,44.24065],[-0.14069,44.2264],[-0.16605,44.24139],[-0.17481,44.25745],[-0.19385,44.27185],[-0.20442,44.26423],[-0.226,44.26478],[-0.22345,44.2059],[-0.27212,44.19381],[-0.31134,44.20327],[-0.38962,44.20948],[-0.39656,44.2366],[-0.38339,44.28631],[-0.40474,44.28738],[-0.42035,44.29948],[-0.43152,44.30093],[-0.43184,44.32258],[-0.47887,44.32489],[-0.51764,44.33911],[-0.5281,44.36465],[-0.57097,44.38253],[-0.64221,44.40035],[-0.62591,44.40711],[-0.6278,44.44272],[-0.67603,44.45733],[-0.68193,44.4441],[-0.69052,44.44118],[-0.72973,44.4482],[-0.78061,44.44012],[-0.78028,44.42811],[-0.79803,44.42756],[-0.81022,44.42012],[-0.84335,44.41818],[-0.91202,44.43694],[-0.91917,44.44334],[-0.96958,44.42938],[-1.02916,44.4227],[-1.00758,44.43662],[-0.9807,44.48288],[-0.98773,44.5083],[-0.99115,44.51185],[-1.02663,44.50712],[-1.08517,44.53219],[-1.10649,44.50282],[-1.25389,44.4676],[-1.25068,44.50598],[-1.26019,44.54317],[-1.23168,44.56937],[-1.21214,44.59951],[-1.2042,44.64043],[-1.19154,44.66073],[-1.16353,44.66401],[-1.14229,44.65925],[-1.13998,44.65297],[-1.154,44.64705],[-1.14916,44.64002],[-1.14387,44.64004],[-1.1435,44.6466],[-1.12778,44.64753],[-1.08112,44.64019],[-1.06556,44.64718],[-1.05076,44.64428],[-1.05151,44.64862],[-1.03926,44.65378],[-1.02218,44.6421],[-1.01983,44.64852],[-1.00362,44.64836],[-1.01892,44.66444],[-1.02442,44.67567],[-1.01939,44.67821],[-1.03809,44.67883],[-1.04385,44.6811],[-1.04029,44.68606],[-1.05002,44.68204],[-1.06928,44.69624],[-1.03742,44.69232],[-1.05128,44.70578],[-1.10167,44.74037],[-1.1182,44.74415],[-1.12258,44.75096],[-1.11615,44.75533],[-1.12776,44.7508],[-1.16756,44.77604],[-1.18001,44.7581],[-1.17381,44.74536],[-1.19007,44.73702],[-1.20438,44.71766],[-1.22256,44.71021],[-1.23262,44.69302],[-1.24854,44.61875],[-1.25682,44.62114],[-1.26205,44.6322],[-1.20786,44.96224],[-1.16203,45.29969],[-1.16055,45.41069],[-1.15106,45.4416],[-1.15619,45.47611],[-1.13642,45.511],[-1.10138,45.53959],[-1.0912,45.56241],[-1.06195,45.5723],[-1.02574,45.57469]]]]}},{"type":"Feature","properties":{"code":"34","nom":"H\xE9rault"},"geometry":{"type":"MultiPolygon","coordinates":[[[[3.35836,43.91383],[3.36181,43.91015],[3.37017,43.91748],[3.39474,43.90919],[3.40102,43.91504],[3.42445,43.9116],[3.44027,43.89684],[3.43219,43.89377],[3.44148,43.88752],[3.43137,43.87258],[3.42161,43.87232],[3.43212,43.86285],[3.46272,43.87205],[3.483,43.89197],[3.49566,43.8895],[3.50316,43.89141],[3.50265,43.89729],[3.51334,43.89621],[3.51594,43.88893],[3.52297,43.8884],[3.51909,43.86337],[3.52781,43.86054],[3.52825,43.85432],[3.53242,43.85739],[3.55377,43.85176],[3.5581,43.85671],[3.57886,43.8436],[3.5813,43.84813],[3.60087,43.84945],[3.59942,43.85473],[3.57551,43.86539],[3.62359,43.91698],[3.63898,43.91619],[3.63249,43.89927],[3.63898,43.89646],[3.64755,43.90244],[3.64261,43.91564],[3.67145,43.9096],[3.67579,43.93146],[3.68356,43.94045],[3.6895,43.93994],[3.68218,43.94713],[3.68551,43.95398],[3.69013,43.95154],[3.70513,43.96207],[3.71727,43.96098],[3.73141,43.97188],[3.74377,43.96661],[3.75214,43.97275],[3.75899,43.96758],[3.78734,43.96687],[3.78684,43.95453],[3.79552,43.94228],[3.82031,43.94241],[3.82902,43.92451],[3.79954,43.89081],[3.80369,43.87929],[3.82236,43.87482],[3.83081,43.86642],[3.838,43.87073],[3.8518,43.86763],[3.85681,43.87712],[3.8971,43.87759],[3.91696,43.88789],[3.9221,43.85838],[3.9579,43.85438],[3.95834,43.84374],[3.97936,43.84288],[3.97258,43.83723],[3.97838,43.82991],[3.96159,43.81655],[3.96587,43.8024],[3.97435,43.80147],[4.00134,43.81305],[4.01857,43.80717],[4.05353,43.78561],[4.054,43.77221],[4.06331,43.77228],[4.06751,43.76471],[4.08363,43.76847],[4.08976,43.76523],[4.09367,43.75247],[4.11404,43.73774],[4.13065,43.74099],[4.14302,43.73684],[4.16669,43.69932],[4.16285,43.68732],[4.19449,43.65345],[4.19377,43.64207],[4.16877,43.60903],[4.14979,43.59817],[4.15022,43.58556],[4.12401,43.58895],[4.09891,43.58524],[4.08444,43.592],[4.07467,43.58859],[4.08048,43.59016],[4.09591,43.58153],[4.10941,43.56849],[4.10104,43.55437],[4.05075,43.5574],[4.00701,43.55166],[3.89418,43.5109],[3.8512,43.48646],[3.79666,43.44104],[3.72492,43.41579],[3.72563,43.40119],[3.69165,43.39157],[3.6649,43.3932],[3.63526,43.37832],[3.56612,43.32572],[3.50951,43.27172],[3.44445,43.28189],[3.43033,43.29021],[3.39396,43.28588],[3.34268,43.26991],[3.24056,43.21281],[3.22587,43.2201],[3.19877,43.25036],[3.15758,43.24247],[3.14398,43.24725],[3.14751,43.25286],[3.14163,43.25951],[3.12009,43.26156],[3.11094,43.25347],[3.08656,43.26376],[3.07834,43.26183],[3.05374,43.28018],[3.02229,43.28194],[3.02296,43.27685],[3.0108,43.274],[3.01306,43.28189],[3.00477,43.28529],[3.00435,43.32013],[2.94694,43.31208],[2.92125,43.32608],[2.9141,43.31973],[2.89045,43.32808],[2.88415,43.33504],[2.89237,43.3436],[2.89017,43.36535],[2.8697,43.37333],[2.8686,43.38211],[2.85538,43.37299],[2.86914,43.35942],[2.87576,43.34031],[2.86926,43.33061],[2.83786,43.32212],[2.81816,43.32396],[2.80635,43.31999],[2.81835,43.30973],[2.78781,43.28875],[2.78752,43.27244],[2.77225,43.25779],[2.75252,43.25459],[2.72573,43.27274],[2.71503,43.27686],[2.70491,43.27456],[2.69885,43.28062],[2.70714,43.29427],[2.69833,43.30311],[2.69815,43.31608],[2.68913,43.3225],[2.68762,43.31715],[2.67576,43.31426],[2.67458,43.30234],[2.65907,43.29297],[2.63247,43.29822],[2.61708,43.28427],[2.60136,43.29812],[2.59971,43.31383],[2.58542,43.33344],[2.55634,43.3376],[2.55133,43.33437],[2.5407,43.34596],[2.557,43.36689],[2.55136,43.37842],[2.55522,43.38832],[2.56922,43.4003],[2.58605,43.39896],[2.59472,43.4092],[2.57968,43.41245],[2.56579,43.42296],[2.58073,43.42315],[2.59682,43.43284],[2.60608,43.43109],[2.60575,43.44091],[2.61779,43.43769],[2.64618,43.45913],[2.63788,43.46523],[2.64256,43.4691],[2.66554,43.46195],[2.668,43.47005],[2.65532,43.49165],[2.65885,43.51692],[2.67602,43.51346],[2.65464,43.52716],[2.6156,43.5665],[2.63178,43.58414],[2.61464,43.59986],[2.62863,43.61013],[2.62554,43.6183],[2.63502,43.62519],[2.64616,43.66031],[2.6523,43.64895],[2.68469,43.65381],[2.71135,43.64409],[2.7202,43.64537],[2.75452,43.61414],[2.78328,43.62637],[2.79486,43.62443],[2.81383,43.64105],[2.82842,43.63743],[2.84672,43.64585],[2.87373,43.64511],[2.8791,43.65727],[2.90735,43.65423],[2.91971,43.66225],[2.92177,43.68966],[2.93329,43.69526],[2.93759,43.69047],[2.94655,43.69294],[2.98132,43.70796],[3.0123,43.70377],[3.02733,43.69273],[3.04523,43.69737],[3.06017,43.69294],[3.06917,43.70684],[3.05346,43.71617],[3.05848,43.72671],[3.05185,43.73224],[3.05905,43.7381],[3.05257,43.74578],[3.07588,43.76852],[3.05906,43.77952],[3.04857,43.8015],[3.06308,43.80923],[3.05763,43.8186],[3.06113,43.83329],[3.08646,43.83581],[3.11297,43.82748],[3.12448,43.81841],[3.14959,43.81364],[3.15804,43.81758],[3.21144,43.81335],[3.22933,43.82493],[3.24904,43.82958],[3.25136,43.84343],[3.2344,43.85937],[3.24308,43.87518],[3.25898,43.88095],[3.26497,43.89526],[3.27507,43.89835],[3.28342,43.89272],[3.29343,43.89578],[3.31893,43.89062],[3.34257,43.89419],[3.34027,43.90173],[3.35836,43.91383]]]]}},{"type":"Feature","properties":{"code":"35","nom":"Ille-et-Vilaine"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-2.12371,48.60441],[-2.13648,48.61283],[-2.13858,48.62486],[-2.15032,48.62706],[-2.15067,48.63474],[-2.14142,48.63151],[-2.13233,48.63853],[-2.12197,48.63577],[-2.11206,48.64374],[-2.11119,48.6377],[-2.09838,48.6381],[-2.09535,48.63381],[-2.077,48.64078],[-2.05668,48.63985],[-2.0523,48.63561],[-2.04915,48.63867],[-2.05373,48.62569],[-2.02978,48.62378],[-2.03087,48.60443],[-2.02048,48.60441],[-2.02508,48.59792],[-2.01252,48.58625],[-2.00523,48.58837],[-2.00339,48.58358],[-1.99672,48.58411],[-1.99426,48.57772],[-2.01299,48.57065],[-2.00689,48.56611],[-2.02239,48.55313],[-2.03034,48.55485],[-2.04435,48.54134],[-2.0536,48.55399],[-2.04529,48.55739],[-2.0448,48.5642],[-2.05844,48.57038],[-2.09499,48.57095],[-2.12471,48.59135],[-2.12371,48.60441]]],[[[-1.94804,48.53881],[-1.9694,48.53655],[-1.96057,48.54905],[-1.96307,48.55594],[-1.97753,48.55695],[-1.97366,48.56792],[-1.98704,48.58451],[-1.95465,48.57647],[-1.96571,48.5843],[-1.96144,48.5922],[-1.97301,48.58938],[-1.99319,48.59429],[-1.99831,48.59071],[-1.99698,48.60369],[-2.01193,48.59826],[-2.00118,48.61515],[-2.01513,48.61398],[-2.01363,48.62701],[-2.02251,48.63469],[-2.03053,48.63402],[-2.03056,48.63799],[-2.02026,48.63991],[-2.02858,48.65031],[-1.98882,48.66457],[-1.98196,48.67565],[-1.98848,48.68414],[-1.98145,48.68157],[-1.9646,48.6872],[-1.95783,48.68057],[-1.93807,48.68398],[-1.95944,48.69054],[-1.93808,48.69446],[-1.93712,48.70234],[-1.93273,48.69407],[-1.91744,48.69578],[-1.9047,48.68995],[-1.88998,48.69914],[-1.87458,48.69489],[-1.84512,48.71175],[-1.84376,48.70229],[-1.85012,48.69939],[-1.8358,48.6803],[-1.86272,48.66728],[-1.87212,48.64572],[-1.84733,48.61759],[-1.76771,48.60239],[-1.66418,48.61014],[-1.57109,48.62645],[-1.56607,48.61428],[-1.53722,48.59875],[-1.54299,48.58044],[-1.52775,48.57907],[-1.51892,48.56659],[-1.52666,48.56574],[-1.52629,48.55656],[-1.53449,48.55031],[-1.5159,48.53792],[-1.51778,48.52984],[-1.4952,48.50689],[-1.48995,48.48937],[-1.47319,48.48539],[-1.45026,48.4876],[-1.43514,48.47743],[-1.44035,48.47114],[-1.42795,48.46192],[-1.39762,48.46198],[-1.37987,48.45608],[-1.36505,48.46643],[-1.35393,48.46783],[-1.34469,48.47307],[-1.34939,48.4817],[-1.33936,48.49094],[-1.32894,48.48632],[-1.32751,48.49812],[-1.30068,48.49899],[-1.28763,48.50953],[-1.27976,48.50861],[-1.26957,48.52406],[-1.27225,48.53392],[-1.25427,48.54327],[-1.2175,48.53691],[-1.20689,48.54219],[-1.19286,48.52891],[-1.16991,48.5311],[-1.15409,48.51904],[-1.11632,48.52154],[-1.10373,48.51301],[-1.07016,48.50849],[-1.06699,48.50449],[-1.07672,48.50231],[-1.07853,48.4901],[-1.06997,48.48554],[-1.07883,48.48159],[-1.07303,48.4818],[-1.07135,48.4693],[-1.06396,48.46695],[-1.06522,48.45143],[-1.07958,48.44356],[-1.08359,48.43373],[-1.08026,48.41398],[-1.05393,48.38399],[-1.06484,48.36723],[-1.05541,48.36379],[-1.05996,48.34921],[-1.04505,48.32818],[-1.09056,48.28918],[-1.10196,48.2625],[-1.0806,48.2195],[-1.08728,48.20927],[-1.07359,48.19968],[-1.08042,48.1754],[-1.07393,48.1593],[-1.06445,48.16043],[-1.06029,48.15011],[-1.04978,48.09038],[-1.04061,48.07818],[-1.02162,48.06801],[-1.03383,48.0521],[-1.02643,48.04556],[-1.035,48.03361],[-1.01577,48.00356],[-1.02126,47.99494],[-1.05029,47.98447],[-1.07178,47.98182],[-1.10348,47.98904],[-1.1248,47.98684],[-1.1254,47.97169],[-1.1553,47.96554],[-1.17623,47.8974],[-1.19663,47.88927],[-1.18899,47.86704],[-1.22305,47.85241],[-1.21403,47.84454],[-1.21601,47.83115],[-1.22028,47.82112],[-1.23214,47.8204],[-1.24264,47.80783],[-1.23618,47.79812],[-1.24588,47.77672],[-1.36506,47.7991],[-1.36148,47.80345],[-1.37805,47.80994],[-1.38103,47.82196],[-1.39465,47.82936],[-1.40574,47.8245],[-1.42335,47.83249],[-1.45427,47.83099],[-1.46257,47.83586],[-1.47823,47.83588],[-1.48241,47.83088],[-1.46675,47.80921],[-1.47054,47.80336],[-1.49089,47.79837],[-1.50327,47.80143],[-1.52904,47.78478],[-1.58641,47.77989],[-1.59832,47.77021],[-1.5944,47.76697],[-1.60495,47.76251],[-1.62306,47.76357],[-1.6365,47.74244],[-1.63818,47.72232],[-1.6485,47.72087],[-1.65751,47.70944],[-1.6895,47.71338],[-1.7106,47.70845],[-1.71127,47.70038],[-1.72206,47.69842],[-1.75137,47.70748],[-1.7716,47.69826],[-1.82088,47.70484],[-1.82753,47.71059],[-1.83995,47.7055],[-1.85831,47.70827],[-1.87828,47.69535],[-1.89866,47.6955],[-1.9363,47.68665],[-1.96124,47.67092],[-1.96927,47.67381],[-1.97438,47.69394],[-2.01291,47.66602],[-2.03908,47.66954],[-2.0499,47.6617],[-2.0515,47.64957],[-2.0812,47.6502],[-2.09704,47.63136],[-2.10462,47.63836],[-2.094,47.63963],[-2.09637,47.64742],[-2.10209,47.64405],[-2.1138,47.6477],[-2.10385,47.67619],[-2.12266,47.68267],[-2.11858,47.7094],[-2.13147,47.72224],[-2.10704,47.73187],[-2.10879,47.73675],[-2.0587,47.73826],[-2.05808,47.74197],[-2.06232,47.75127],[-2.08432,47.74994],[-2.08472,47.76271],[-2.12598,47.76096],[-2.12823,47.76867],[-2.11036,47.77133],[-2.1101,47.77859],[-2.09493,47.77868],[-2.07408,47.78897],[-2.07046,47.8114],[-2.04705,47.81846],[-2.03604,47.83346],[-2.0516,47.84056],[-2.0547,47.86879],[-2.06863,47.852],[-2.09125,47.84345],[-2.10945,47.84883],[-2.10446,47.85948],[-2.09561,47.86166],[-2.11434,47.87743],[-2.116,47.89011],[-2.10096,47.89596],[-2.10609,47.90206],[-2.08653,47.90357],[-2.07878,47.91913],[-2.09773,47.93323],[-2.10013,47.94832],[-2.10997,47.9529],[-2.11083,47.95984],[-2.12532,47.9647],[-2.14439,47.98401],[-2.17782,47.97957],[-2.19113,47.99076],[-2.23913,47.99966],[-2.28754,47.9915],[-2.28951,48.00092],[-2.27553,48.00986],[-2.28287,48.01785],[-2.2796,48.02636],[-2.26132,48.04158],[-2.24187,48.05284],[-2.18878,48.05243],[-2.18821,48.05677],[-2.17043,48.06344],[-2.16848,48.07621],[-2.18094,48.08317],[-2.21958,48.08086],[-2.23595,48.07586],[-2.23431,48.06318],[-2.25612,48.06287],[-2.25794,48.07297],[-2.24807,48.08534],[-2.25507,48.10948],[-2.28733,48.13671],[-2.27113,48.1515],[-2.25927,48.15133],[-2.25042,48.14388],[-2.23589,48.14481],[-2.24897,48.1566],[-2.22851,48.16509],[-2.22302,48.17405],[-2.2183,48.20422],[-2.22824,48.21018],[-2.21254,48.21403],[-2.20196,48.20765],[-2.18445,48.21021],[-2.19088,48.22537],[-2.18379,48.24944],[-2.15444,48.26124],[-2.12412,48.25947],[-2.1066,48.25179],[-2.11119,48.25742],[-2.10368,48.25793],[-2.09578,48.2668],[-2.1094,48.26762],[-2.11447,48.27071],[-2.11046,48.27506],[-2.08055,48.27704],[-2.07497,48.28491],[-2.07949,48.29282],[-2.05329,48.29833],[-2.04928,48.28993],[-2.0141,48.27953],[-2.00217,48.28053],[-2.00489,48.2916],[-1.99939,48.29042],[-1.99316,48.29885],[-1.97506,48.30175],[-1.96751,48.29163],[-1.95805,48.29312],[-1.96824,48.30332],[-1.95661,48.30696],[-1.959,48.31448],[-1.95402,48.31556],[-1.9669,48.34282],[-1.92908,48.34704],[-1.93309,48.36068],[-1.94279,48.36035],[-1.94772,48.36894],[-1.94596,48.38018],[-1.93843,48.38294],[-1.93983,48.39298],[-1.92997,48.39479],[-1.94292,48.40056],[-1.93609,48.41735],[-1.95191,48.42918],[-1.95166,48.43891],[-1.94863,48.44646],[-1.93889,48.44701],[-1.9263,48.45595],[-1.92417,48.46252],[-1.93282,48.47034],[-1.92846,48.47555],[-1.909,48.48155],[-1.92312,48.49881],[-1.92282,48.50494],[-1.91148,48.50617],[-1.91053,48.51482],[-1.91925,48.53538],[-1.92665,48.53785],[-1.92194,48.54375],[-1.93186,48.55078],[-1.94804,48.53881]]]]}},{"type":"Feature","properties":{"code":"36","nom":"Indre"},"geometry":{"type":"Polygon","coordinates":[[[1.32667,47.18623],[1.33849,47.19554],[1.35094,47.19363],[1.37142,47.1997],[1.40143,47.21245],[1.42121,47.22916],[1.45807,47.23992],[1.4816,47.23916],[1.49506,47.23539],[1.49359,47.23201],[1.50306,47.23513],[1.53117,47.21851],[1.53484,47.22532],[1.52547,47.24186],[1.53105,47.24878],[1.52396,47.25525],[1.55954,47.26139],[1.59289,47.2577],[1.59243,47.27668],[1.65229,47.27278],[1.6446,47.2644],[1.66802,47.25703],[1.70453,47.26497],[1.71595,47.27678],[1.77611,47.23138],[1.79097,47.2315],[1.79582,47.23782],[1.83908,47.21931],[1.84224,47.17758],[1.82256,47.17345],[1.81084,47.16426],[1.80824,47.15323],[1.77478,47.13062],[1.79367,47.12091],[1.82713,47.12183],[1.84886,47.10937],[1.88307,47.10051],[1.90493,47.1091],[1.92336,47.10193],[1.96366,47.12465],[1.9733,47.12054],[1.99666,47.127],[2.00024,47.11392],[2.01257,47.11139],[2.00332,47.09418],[2.02894,47.0951],[2.02453,47.10445],[2.04884,47.10676],[2.05339,47.10349],[2.04718,47.09444],[2.05568,47.07169],[2.04122,47.06554],[2.02882,47.04585],[2.05148,47.04213],[2.06372,47.02795],[2.09338,47.01574],[2.10886,46.99719],[2.09212,46.98816],[2.09628,46.9852],[2.08668,46.97317],[2.08825,46.96045],[2.0702,46.95442],[2.07038,46.9344],[2.11,46.91339],[2.14674,46.91759],[2.15483,46.91163],[2.1264,46.88005],[2.11421,46.88043],[2.10695,46.87214],[2.08297,46.86858],[2.09646,46.85525],[2.07631,46.83469],[2.04496,46.8365],[2.0725,46.80881],[2.09586,46.80122],[2.11665,46.77972],[2.1149,46.77355],[2.10763,46.77592],[2.10715,46.7653],[2.09594,46.75548],[2.06689,46.7515],[2.07188,46.73513],[2.09122,46.72744],[2.08696,46.71258],[2.10184,46.70784],[2.11811,46.71027],[2.14072,46.69555],[2.15545,46.69216],[2.14437,46.68211],[2.14798,46.67712],[2.13667,46.67728],[2.13907,46.66429],[2.16289,46.65412],[2.16284,46.64633],[2.17584,46.65085],[2.17945,46.64253],[2.18945,46.64214],[2.17962,46.62813],[2.18749,46.61672],[2.18628,46.60395],[2.17696,46.60168],[2.16715,46.58898],[2.17465,46.56448],[2.15889,46.55753],[2.18108,46.52904],[2.18342,46.50898],[2.19862,46.50234],[2.1944,46.49608],[2.20437,46.4906],[2.20432,46.48422],[2.19316,46.47026],[2.1514,46.4577],[2.15813,46.44044],[2.15435,46.43408],[2.16779,46.42407],[2.12701,46.4191],[2.1155,46.42195],[2.10332,46.40947],[2.08894,46.4089],[2.0742,46.41984],[1.99308,46.43092],[1.97875,46.44152],[1.92424,46.43195],[1.92053,46.44008],[1.90918,46.4435],[1.90246,46.43781],[1.88493,46.44093],[1.88344,46.43255],[1.85458,46.43392],[1.83978,46.42572],[1.8195,46.43004],[1.81733,46.43985],[1.79838,46.45482],[1.78652,46.45525],[1.74759,46.45002],[1.75882,46.44026],[1.76027,46.42714],[1.74865,46.413],[1.75055,46.40558],[1.72704,46.39021],[1.7109,46.39206],[1.6836,46.41818],[1.6424,46.38514],[1.62675,46.38851],[1.62622,46.39403],[1.61425,46.39953],[1.62266,46.41826],[1.60925,46.42312],[1.59864,46.41914],[1.5954,46.40864],[1.57862,46.41048],[1.5462,46.39346],[1.54409,46.4191],[1.52671,46.42686],[1.51123,46.42063],[1.49793,46.395],[1.49293,46.39834],[1.47766,46.39391],[1.46535,46.37478],[1.44643,46.375],[1.44295,46.36516],[1.4349,46.36467],[1.44036,46.35637],[1.41675,46.34719],[1.40903,46.36134],[1.39469,46.36761],[1.39657,46.3719],[1.38353,46.37476],[1.35602,46.40012],[1.34429,46.40155],[1.31391,46.39538],[1.32281,46.38548],[1.30796,46.37986],[1.31225,46.37292],[1.28367,46.37234],[1.2604,46.37878],[1.23816,46.3662],[1.22368,46.36907],[1.21964,46.36598],[1.20973,46.38976],[1.19154,46.37676],[1.18219,46.37608],[1.17728,46.38395],[1.19682,46.40129],[1.19319,46.4098],[1.21269,46.43222],[1.20386,46.4346],[1.18649,46.42813],[1.18602,46.44109],[1.15182,46.4487],[1.13551,46.47089],[1.15736,46.46945],[1.13341,46.49763],[1.14914,46.5022],[1.14594,46.5064],[1.09133,46.53767],[1.02291,46.53591],[1.02494,46.54948],[1.01476,46.56776],[0.98724,46.56556],[0.98201,46.57327],[0.97363,46.57461],[0.96367,46.57107],[0.93529,46.58634],[0.93776,46.59442],[0.91587,46.59663],[0.90643,46.61914],[0.8939,46.62861],[0.90643,46.6486],[0.91775,46.65059],[0.90671,46.66557],[0.91071,46.67718],[0.90266,46.68001],[0.92796,46.69539],[0.90805,46.71876],[0.91323,46.72571],[0.90182,46.73623],[0.87865,46.73864],[0.86747,46.74822],[0.88464,46.75487],[0.90422,46.75444],[0.90607,46.75883],[0.92727,46.75702],[0.94455,46.73672],[0.95638,46.73709],[0.97989,46.75433],[0.98338,46.76418],[1.01169,46.7578],[0.99919,46.78106],[1.00387,46.79326],[0.98363,46.80377],[1.01022,46.81475],[1.01052,46.83738],[1.02264,46.84562],[1.01681,46.85608],[1.03419,46.90797],[1.0361,46.94047],[1.06437,46.95581],[1.05902,46.97384],[1.04988,46.98064],[1.05572,46.98274],[1.05566,46.99572],[1.07365,47.00265],[1.0696,47.00724],[1.08374,47.02108],[1.11026,47.02923],[1.11515,47.02551],[1.12933,47.02701],[1.16142,47.03962],[1.18252,47.0407],[1.19864,47.02803],[1.22306,47.02431],[1.23209,47.01414],[1.25312,47.02177],[1.27761,47.0404],[1.26901,47.04931],[1.28298,47.05502],[1.29377,47.07225],[1.31216,47.07188],[1.31678,47.08493],[1.31008,47.09422],[1.31779,47.10414],[1.34349,47.10054],[1.36536,47.12205],[1.34671,47.16876],[1.32667,47.18623]]]}},{"type":"Feature","properties":{"code":"37","nom":"Indre-et-Loire"},"geometry":{"type":"Polygon","coordinates":[[[0.61443,47.69421],[0.62672,47.70748],[0.63913,47.70969],[0.64376,47.7],[0.65412,47.6988],[0.64387,47.68808],[0.64827,47.684],[0.67477,47.699],[0.71215,47.68181],[0.71973,47.69069],[0.73869,47.69612],[0.77036,47.68387],[0.80041,47.67932],[0.81178,47.68222],[0.82792,47.6768],[0.86703,47.69062],[0.85984,47.68081],[0.86001,47.66534],[0.84365,47.64548],[0.86319,47.6321],[0.85029,47.62451],[0.86078,47.5991],[0.89755,47.60415],[0.89941,47.60898],[0.89216,47.61152],[0.90627,47.61604],[0.91974,47.63267],[0.95401,47.62484],[0.96527,47.62957],[0.97098,47.6219],[0.99179,47.62003],[0.98392,47.60519],[0.98674,47.59068],[0.99702,47.58397],[1.00372,47.58436],[1.01229,47.60385],[1.03279,47.60813],[1.06346,47.56623],[1.07689,47.57137],[1.07467,47.55844],[1.04659,47.53954],[1.04529,47.53149],[1.05624,47.52356],[1.06995,47.52285],[1.06713,47.51536],[1.07392,47.5121],[1.06572,47.50522],[1.09456,47.4695],[1.0854,47.46432],[1.11288,47.46592],[1.13337,47.44895],[1.11376,47.42797],[1.10511,47.43179],[1.08514,47.43],[1.11107,47.40936],[1.11403,47.39576],[1.12352,47.39195],[1.12155,47.38243],[1.10435,47.37015],[1.12301,47.35357],[1.11327,47.34785],[1.10631,47.33108],[1.09485,47.32854],[1.10642,47.30077],[1.1224,47.29311],[1.12738,47.29788],[1.16232,47.27234],[1.17625,47.28804],[1.19447,47.28301],[1.22195,47.29411],[1.24232,47.28724],[1.24331,47.27385],[1.26622,47.25567],[1.27643,47.25684],[1.29459,47.23736],[1.32367,47.1875],[1.34346,47.17368],[1.36375,47.13509],[1.36536,47.12205],[1.35567,47.10847],[1.34349,47.10054],[1.31779,47.10414],[1.31008,47.09422],[1.31678,47.08493],[1.31216,47.07188],[1.29377,47.07225],[1.28298,47.05502],[1.26901,47.04931],[1.27761,47.0404],[1.25312,47.02177],[1.23209,47.01414],[1.22306,47.02431],[1.19864,47.02803],[1.1748,47.04138],[1.12933,47.02701],[1.11515,47.02551],[1.11026,47.02923],[1.08374,47.02108],[1.0696,47.00724],[1.07365,47.00265],[1.05638,46.99644],[1.05572,46.98274],[1.04988,46.98064],[1.05902,46.97384],[1.06437,46.95581],[1.0361,46.94047],[1.03419,46.90797],[1.01681,46.85608],[1.02264,46.84562],[1.01052,46.83738],[1.01022,46.81475],[0.98363,46.80377],[1.00387,46.79326],[0.99919,46.78106],[1.01169,46.7578],[0.98338,46.76418],[0.97989,46.75433],[0.95638,46.73709],[0.94455,46.73672],[0.92727,46.75702],[0.90607,46.75883],[0.90422,46.75444],[0.88464,46.75487],[0.86747,46.74822],[0.85902,46.76039],[0.84788,46.7607],[0.82798,46.77682],[0.82804,46.7868],[0.81628,46.78777],[0.8119,46.79451],[0.81709,46.80348],[0.81006,46.80856],[0.80932,46.82786],[0.7868,46.84046],[0.79646,46.84896],[0.76747,46.85145],[0.77002,46.86511],[0.75405,46.85963],[0.70432,46.90329],[0.70621,46.93621],[0.69257,46.97431],[0.66163,46.97809],[0.64769,46.98827],[0.63341,46.98672],[0.62202,46.99555],[0.61887,47.00746],[0.56774,47.00629],[0.57404,46.98285],[0.60118,46.97309],[0.59835,46.95676],[0.56442,46.95553],[0.54336,46.96042],[0.51343,46.95559],[0.50519,46.9599],[0.4448,46.94115],[0.43871,46.92958],[0.36652,46.94956],[0.34929,46.93724],[0.32383,46.93145],[0.31123,46.93784],[0.3013,46.95575],[0.30787,46.9628],[0.29821,46.97126],[0.30804,46.97738],[0.30553,46.98616],[0.29806,46.98359],[0.29187,46.98924],[0.30405,46.99058],[0.31297,46.99803],[0.30497,47.00261],[0.30703,47.01097],[0.29867,47.0196],[0.31029,47.02574],[0.30538,47.0527],[0.29306,47.05293],[0.26817,47.04282],[0.25999,47.05558],[0.26762,47.0675],[0.24554,47.07129],[0.208,47.05323],[0.19224,47.0654],[0.18932,47.06081],[0.17577,47.06064],[0.17422,47.07128],[0.20095,47.09139],[0.18711,47.10126],[0.18316,47.11438],[0.16598,47.10716],[0.16256,47.10071],[0.13472,47.10787],[0.14039,47.12387],[0.12716,47.11997],[0.12292,47.12866],[0.11118,47.13028],[0.10472,47.1208],[0.08135,47.11854],[0.07637,47.12393],[0.08198,47.13646],[0.07839,47.14633],[0.0656,47.14306],[0.05358,47.16056],[0.06659,47.18979],[0.05297,47.19677],[0.06819,47.21578],[0.07932,47.21677],[0.07245,47.21988],[0.06793,47.24733],[0.07483,47.24805],[0.07477,47.26213],[0.09,47.28164],[0.0786,47.28394],[0.11303,47.3179],[0.11746,47.33234],[0.13801,47.33616],[0.1473,47.34538],[0.14041,47.3618],[0.15359,47.36359],[0.18339,47.38123],[0.16751,47.38562],[0.1695,47.39564],[0.15386,47.39873],[0.18085,47.41615],[0.18528,47.42473],[0.18094,47.45341],[0.19977,47.48341],[0.22011,47.50195],[0.22606,47.52659],[0.20662,47.52641],[0.20555,47.53466],[0.19334,47.53911],[0.20408,47.54814],[0.21512,47.57299],[0.23434,47.57793],[0.2321,47.61082],[0.25316,47.61331],[0.26784,47.60867],[0.27562,47.59838],[0.3221,47.59523],[0.33972,47.57938],[0.37848,47.56853],[0.40238,47.57842],[0.38346,47.61019],[0.36426,47.62051],[0.38279,47.64309],[0.39625,47.64085],[0.42391,47.61783],[0.44993,47.61933],[0.46401,47.64561],[0.49842,47.64476],[0.51612,47.65664],[0.52296,47.6531],[0.55171,47.65917],[0.55879,47.6708],[0.58649,47.66892],[0.61481,47.68275],[0.61907,47.69091],[0.61443,47.69421]]]}},{"type":"Feature","properties":{"code":"38","nom":"Is\xE8re"},"geometry":{"type":"Polygon","coordinates":[[[5.62375,45.61327],[5.62303,45.60428],[5.64567,45.58421],[5.64709,45.57675],[5.67447,45.55905],[5.67226,45.54664],[5.68114,45.54205],[5.67334,45.54345],[5.66974,45.53807],[5.67603,45.53072],[5.69198,45.52764],[5.69125,45.52181],[5.70367,45.51337],[5.70117,45.50818],[5.71259,45.50747],[5.71915,45.48377],[5.73646,45.47168],[5.73197,45.45282],[5.74019,45.4368],[5.75766,45.43492],[5.7828,45.4423],[5.7981,45.43818],[5.80806,45.42584],[5.85427,45.41657],[5.86072,45.40925],[5.88993,45.40134],[5.89161,45.39066],[5.90962,45.3904],[5.92826,45.41673],[5.9036,45.40802],[5.90447,45.43258],[5.92124,45.44366],[5.92526,45.46406],[5.91537,45.47645],[5.97509,45.49164],[5.99119,45.47515],[6.01091,45.4732],[6.00852,45.45385],[6.04911,45.4379],[6.06316,45.44423],[6.09297,45.44418],[6.09538,45.43167],[6.12281,45.43889],[6.13401,45.43251],[6.14466,45.4136],[6.17745,45.39316],[6.19184,45.36933],[6.17107,45.35712],[6.19476,45.35224],[6.18679,45.31986],[6.15394,45.31135],[6.15412,45.30432],[6.14124,45.29879],[6.13071,45.28486],[6.14102,45.26132],[6.1257,45.24427],[6.12709,45.23243],[6.14178,45.22225],[6.13782,45.21334],[6.15948,45.20245],[6.16192,45.18841],[6.14379,45.15455],[6.16132,45.15101],[6.17866,45.16399],[6.19012,45.16415],[6.21558,45.15245],[6.22405,45.14114],[6.24997,45.15084],[6.26537,45.13961],[6.25714,45.12218],[6.22885,45.10831],[6.24452,45.07171],[6.22008,45.06537],[6.20393,45.01247],[6.25343,44.99521],[6.3182,45.00386],[6.32341,44.99822],[6.31482,44.98018],[6.32954,44.96924],[6.32292,44.95302],[6.33052,44.94641],[6.35884,44.94128],[6.35299,44.92451],[6.3593,44.88807],[6.3504,44.87369],[6.35536,44.85478],[6.34455,44.84934],[6.3204,44.8536],[6.30391,44.87305],[6.2886,44.87406],[6.26941,44.87047],[6.24998,44.85191],[6.19638,44.85898],[6.16845,44.85225],[6.1329,44.8645],[6.11068,44.84316],[6.1007,44.84258],[6.0565,44.81581],[6.03021,44.8381],[6.02182,44.83755],[6.00941,44.83038],[6.00552,44.82082],[5.97918,44.81858],[5.94952,44.80453],[5.97778,44.79098],[5.98015,44.78118],[5.95316,44.77131],[5.95112,44.75962],[5.93727,44.76361],[5.91901,44.75143],[5.90015,44.75832],[5.88181,44.74663],[5.84679,44.75162],[5.82709,44.75969],[5.82931,44.74161],[5.81768,44.73097],[5.81117,44.71275],[5.77177,44.69677],[5.75607,44.69594],[5.73652,44.71381],[5.72116,44.71263],[5.70406,44.7293],[5.69878,44.72207],[5.6471,44.7241],[5.6315,44.73883],[5.62631,44.75329],[5.5868,44.76323],[5.58205,44.77786],[5.54977,44.79453],[5.54452,44.79567],[5.54414,44.78893],[5.554,44.77933],[5.55453,44.76747],[5.46189,44.79492],[5.45851,44.80045],[5.47613,44.80698],[5.48477,44.82306],[5.46379,44.82597],[5.47555,44.86704],[5.47005,44.87903],[5.48031,44.89681],[5.48365,44.92229],[5.47767,44.96675],[5.49359,44.99613],[5.4804,45.01288],[5.47803,45.03365],[5.46485,45.04594],[5.47486,45.07035],[5.4942,45.07166],[5.48296,45.08381],[5.4693,45.08859],[5.46098,45.08643],[5.43524,45.05412],[5.42572,45.05627],[5.41265,45.04463],[5.39657,45.04409],[5.38306,45.05591],[5.38105,45.05123],[5.39653,45.03954],[5.38583,45.03463],[5.37309,45.0437],[5.34595,45.048],[5.34033,45.06206],[5.32069,45.05707],[5.32022,45.05164],[5.30627,45.05339],[5.30532,45.06102],[5.29278,45.06386],[5.26767,45.05473],[5.26626,45.05981],[5.24458,45.06067],[5.24451,45.06697],[5.23255,45.07048],[5.22612,45.07918],[5.20821,45.08422],[5.17938,45.08331],[5.17119,45.06901],[5.16246,45.06575],[5.14856,45.0769],[5.13845,45.07255],[5.13588,45.08004],[5.14098,45.07641],[5.14485,45.08153],[5.15414,45.07929],[5.16289,45.09843],[5.18744,45.12083],[5.19056,45.14067],[5.18132,45.14781],[5.1918,45.15507],[5.18981,45.16943],[5.17514,45.18155],[5.16876,45.19853],[5.16428,45.1976],[5.16742,45.21013],[5.17871,45.21698],[5.20171,45.2174],[5.18458,45.23119],[5.17654,45.2484],[5.15669,45.24739],[5.15823,45.25555],[5.15191,45.25548],[5.14153,45.24357],[5.12089,45.24763],[5.13859,45.29667],[5.12155,45.29874],[5.11863,45.29117],[5.07541,45.28182],[5.05432,45.31905],[5.02269,45.31776],[5.00965,45.34223],[4.99512,45.34405],[4.95435,45.32732],[4.92939,45.32423],[4.87971,45.29693],[4.85862,45.29852],[4.8588,45.30895],[4.80049,45.29836],[4.76185,45.32406],[4.76198,45.34241],[4.77358,45.34649],[4.77401,45.35263],[4.756,45.36567],[4.75807,45.39124],[4.74211,45.41461],[4.76032,45.43362],[4.75694,45.45571],[4.77948,45.45504],[4.78062,45.4709],[4.84192,45.50099],[4.87281,45.5313],[4.8351,45.54538],[4.81108,45.57113],[4.78208,45.58058],[4.77713,45.5874],[4.82959,45.58804],[4.85759,45.57652],[4.85978,45.59083],[4.90101,45.60619],[4.92753,45.60571],[4.97093,45.6132],[4.99796,45.60341],[5.00199,45.61395],[4.98945,45.61853],[5.00475,45.62311],[5.03673,45.6129],[5.04364,45.62133],[5.03508,45.62847],[5.03834,45.64495],[5.05806,45.65324],[5.05402,45.66006],[5.06083,45.66642],[5.10813,45.68802],[5.10489,45.70038],[5.11909,45.69971],[5.13106,45.70771],[5.14306,45.70003],[5.15017,45.70581],[5.154,45.69972],[5.16021,45.71176],[5.12601,45.73791],[5.09453,45.73945],[5.08938,45.74966],[5.09544,45.76918],[5.06752,45.76527],[5.05933,45.79198],[5.08931,45.78428],[5.10107,45.81338],[5.11016,45.79788],[5.11246,45.80991],[5.12554,45.81106],[5.17571,45.79419],[5.19153,45.77169],[5.22666,45.76948],[5.27024,45.79172],[5.28892,45.81112],[5.30202,45.84765],[5.35102,45.88371],[5.41313,45.85222],[5.41901,45.83968],[5.43619,45.82813],[5.42117,45.82202],[5.42216,45.80767],[5.48468,45.75268],[5.51623,45.73225],[5.52567,45.71673],[5.54955,45.71181],[5.55195,45.70224],[5.57368,45.69473],[5.57554,45.6881],[5.56682,45.68413],[5.55599,45.69763],[5.54595,45.69733],[5.55251,45.67229],[5.56323,45.67437],[5.58641,45.66707],[5.58736,45.65987],[5.60266,45.65153],[5.60519,45.63358],[5.62375,45.61327]]]}},{"type":"Feature","properties":{"code":"39","nom":"Jura"},"geometry":{"type":"MultiPolygon","coordinates":[[[[5.45608,46.85084],[5.45231,46.85364],[5.45803,46.85397],[5.45608,46.85084]]],[[[5.51854,47.30419],[5.52231,47.30584],[5.53023,47.29608],[5.53114,47.2848],[5.55893,47.27817],[5.55598,47.26871],[5.5721,47.26844],[5.5692,47.26312],[5.57767,47.25253],[5.60242,47.26151],[5.62444,47.25287],[5.65416,47.2608],[5.65336,47.26501],[5.67053,47.26978],[5.66956,47.27463],[5.69197,47.27231],[5.71966,47.24039],[5.71403,47.23601],[5.72126,47.23125],[5.72041,47.21994],[5.73818,47.20829],[5.73767,47.20128],[5.75403,47.2062],[5.76159,47.19335],[5.78075,47.19298],[5.78636,47.18808],[5.7851,47.17057],[5.79328,47.17468],[5.81147,47.16905],[5.81367,47.14998],[5.82807,47.14117],[5.81608,47.13434],[5.78727,47.09562],[5.77103,47.0944],[5.78472,47.05491],[5.76339,47.04484],[5.74587,47.05719],[5.73683,47.05498],[5.75328,47.0392],[5.74856,47.03118],[5.74091,47.03105],[5.74806,47.01823],[5.76316,47.01139],[5.77044,47.01815],[5.78765,47.02061],[5.79916,47.03075],[5.79714,47.04234],[5.81014,47.04681],[5.81791,47.04058],[5.81373,47.01743],[5.8287,47.01212],[5.83945,47.01534],[5.84694,47.0031],[5.85567,47.00882],[5.87649,47.00589],[5.88663,46.99697],[5.89713,46.99575],[5.91107,46.9995],[5.9214,47.01422],[5.91304,46.98944],[5.92164,46.9853],[5.92034,46.98052],[5.94,46.9822],[5.94954,46.99005],[5.94396,46.97986],[5.96856,46.98044],[5.9688,46.97611],[5.97569,46.97585],[5.97294,46.96928],[5.97979,46.96348],[5.95654,46.9485],[5.99722,46.93349],[5.98142,46.91862],[5.98134,46.90791],[6.0122,46.8903],[6.00578,46.87305],[6.01739,46.86812],[6.02209,46.87535],[6.03272,46.8709],[6.0227,46.85259],[6.04709,46.84563],[6.06504,46.86018],[6.08698,46.84996],[6.08671,46.84321],[6.10556,46.8453],[6.11325,46.83622],[6.15179,46.82067],[6.14883,46.81599],[6.18068,46.79624],[6.20724,46.76498],[6.18372,46.75501],[6.17748,46.73996],[6.06983,46.68952],[6.10552,46.65048],[6.09883,46.64269],[6.05917,46.62611],[6.06463,46.6131],[6.05366,46.6135],[6.04857,46.60772],[6.12633,46.5563],[6.13143,46.55374],[6.13811,46.55766],[6.15645,46.54547],[6.14857,46.53934],[6.15348,46.53679],[6.11668,46.51333],[6.09683,46.48121],[6.07268,46.4657],[6.07446,46.45367],[6.08635,46.44372],[6.06401,46.41623],[6.05717,46.41631],[6.0146,46.37609],[5.98354,46.36304],[5.94136,46.30873],[5.92591,46.31377],[5.918,46.30919],[5.9092,46.28394],[5.89463,46.28661],[5.87569,46.2676],[5.86919,46.26497],[5.86433,46.27121],[5.85307,46.26151],[5.76565,46.26829],[5.72518,46.26073],[5.71449,46.28091],[5.7193,46.29346],[5.71472,46.30877],[5.68458,46.31092],[5.6837,46.31686],[5.66844,46.32437],[5.64443,46.3248],[5.6498,46.33419],[5.64314,46.34478],[5.63051,46.33021],[5.61324,46.3272],[5.59354,46.29436],[5.56516,46.29345],[5.5391,46.2688],[5.50912,46.26455],[5.50255,46.27109],[5.47385,46.26428],[5.46918,46.27108],[5.45684,46.27448],[5.45891,46.29071],[5.46596,46.29182],[5.4753,46.31539],[5.46692,46.32327],[5.45944,46.32316],[5.45707,46.31706],[5.43783,46.3157],[5.42366,46.34768],[5.41683,46.34526],[5.41024,46.3091],[5.40465,46.31034],[5.40142,46.33955],[5.38058,46.34579],[5.37346,46.35224],[5.37705,46.36412],[5.36282,46.3699],[5.37788,46.38223],[5.36342,46.38901],[5.36267,46.39425],[5.35215,46.39341],[5.35347,46.39738],[5.34142,46.4018],[5.33421,46.3974],[5.31477,46.40948],[5.2988,46.41268],[5.30242,46.417],[5.3124,46.416],[5.30898,46.42453],[5.32447,46.42849],[5.31056,46.44677],[5.32335,46.46251],[5.35908,46.46422],[5.37331,46.4601],[5.38402,46.47117],[5.3981,46.4666],[5.4178,46.47597],[5.41955,46.5023],[5.4099,46.49991],[5.38494,46.51562],[5.3583,46.51969],[5.36253,46.55196],[5.35616,46.5618],[5.36788,46.56694],[5.36223,46.57704],[5.36768,46.57987],[5.40569,46.58167],[5.41423,46.60036],[5.39596,46.61112],[5.41711,46.61546],[5.44111,46.63754],[5.4131,46.65428],[5.4271,46.66016],[5.41865,46.66777],[5.42209,46.67303],[5.39536,46.68505],[5.40835,46.69844],[5.39433,46.7084],[5.39364,46.72863],[5.3611,46.73098],[5.36676,46.7524],[5.37329,46.75105],[5.39025,46.77058],[5.37172,46.77657],[5.36926,46.78649],[5.36481,46.78314],[5.35406,46.79253],[5.34001,46.79091],[5.3328,46.79561],[5.32739,46.8151],[5.33811,46.8227],[5.34201,46.81962],[5.33915,46.8261],[5.35157,46.81357],[5.3681,46.82533],[5.40841,46.83308],[5.41226,46.82803],[5.42899,46.82591],[5.44421,46.82904],[5.44795,46.82549],[5.45764,46.83034],[5.46281,46.82737],[5.45677,46.83097],[5.46508,46.84082],[5.45708,46.84531],[5.45884,46.85548],[5.43609,46.8615],[5.43955,46.85556],[5.45004,46.85631],[5.4445,46.85155],[5.40183,46.86832],[5.39946,46.89264],[5.39076,46.89437],[5.36208,46.88275],[5.35163,46.89329],[5.33552,46.88467],[5.32882,46.88759],[5.32898,46.89572],[5.3125,46.91002],[5.3079,46.93837],[5.2834,46.94003],[5.26966,46.92778],[5.26201,46.92739],[5.26406,46.93742],[5.25207,46.94397],[5.26108,46.94655],[5.26457,46.9587],[5.25336,46.97874],[5.27465,46.99152],[5.27429,46.99837],[5.3008,47.00197],[5.30453,47.01209],[5.31832,47.01281],[5.27533,47.02693],[5.28392,47.04791],[5.30577,47.06302],[5.31136,47.05814],[5.32659,47.07521],[5.38603,47.08198],[5.39886,47.09573],[5.39824,47.10551],[5.41066,47.11409],[5.40854,47.12666],[5.43851,47.14153],[5.43782,47.15279],[5.45111,47.16234],[5.45929,47.18256],[5.44575,47.19958],[5.48001,47.21737],[5.47402,47.23109],[5.4863,47.2434],[5.48006,47.25635],[5.48816,47.2681],[5.48828,47.28935],[5.50498,47.28322],[5.51854,47.30419]]]]}},{"type":"Feature","properties":{"code":"40","nom":"Landes"},"geometry":{"type":"Polygon","coordinates":[[[-0.24284,43.58498],[-0.25413,43.58275],[-0.25345,43.58825],[-0.25923,43.58889],[-0.28302,43.58569],[-0.29085,43.56812],[-0.3012,43.5713],[-0.30369,43.56028],[-0.33596,43.55085],[-0.35669,43.56296],[-0.39445,43.56926],[-0.40068,43.56322],[-0.40604,43.56823],[-0.44971,43.54987],[-0.46344,43.56659],[-0.4557,43.5693],[-0.45902,43.5622],[-0.44789,43.56657],[-0.44733,43.57321],[-0.44097,43.57871],[-0.43264,43.57802],[-0.4316,43.58369],[-0.44921,43.5963],[-0.4611,43.58692],[-0.46787,43.58967],[-0.50453,43.57259],[-0.51119,43.56265],[-0.55279,43.54318],[-0.56707,43.55822],[-0.59632,43.53824],[-0.61437,43.53772],[-0.61569,43.54439],[-0.63375,43.5541],[-0.65782,43.55611],[-0.64105,43.5748],[-0.68802,43.55676],[-0.70749,43.56002],[-0.70932,43.54129],[-0.7174,43.54061],[-0.76828,43.57948],[-0.78245,43.57671],[-0.78178,43.56417],[-0.79417,43.56396],[-0.80404,43.5563],[-0.8183,43.56144],[-0.84267,43.55356],[-0.84572,43.54221],[-0.90536,43.55051],[-0.92252,43.54272],[-0.92658,43.53202],[-0.94037,43.53855],[-0.95091,43.53212],[-0.97864,43.53987],[-0.98556,43.53714],[-0.98846,43.54143],[-1.0011,43.53823],[-0.98909,43.53052],[-0.99238,43.50402],[-1.01999,43.50631],[-1.02368,43.5017],[-1.03139,43.51003],[-1.04419,43.50879],[-1.04636,43.51426],[-1.05169,43.50893],[-1.05815,43.5126],[-1.069,43.50845],[-1.07254,43.51857],[-1.08155,43.52217],[-1.08766,43.51118],[-1.10925,43.51413],[-1.11798,43.50146],[-1.13798,43.49959],[-1.14435,43.48764],[-1.15318,43.49696],[-1.16869,43.4922],[-1.17189,43.50485],[-1.14732,43.51111],[-1.13332,43.50969],[-1.1308,43.51873],[-1.15348,43.52875],[-1.17082,43.54561],[-1.19562,43.5461],[-1.21732,43.53074],[-1.29118,43.4982],[-1.32447,43.50511],[-1.36791,43.4949],[-1.41766,43.49691],[-1.43112,43.51461],[-1.46501,43.51655],[-1.46115,43.53168],[-1.4766,43.53935],[-1.50141,43.52695],[-1.52487,43.5297],[-1.4468,43.64561],[-1.41998,43.77265],[-1.38891,43.85837],[-1.31317,44.14131],[-1.25389,44.4676],[-1.10649,44.50282],[-1.08517,44.53219],[-1.02663,44.50712],[-0.99115,44.51185],[-0.98773,44.5083],[-0.9807,44.48288],[-1.00758,44.43662],[-1.02916,44.4227],[-0.96958,44.42938],[-0.91917,44.44334],[-0.91202,44.43694],[-0.84335,44.41818],[-0.81022,44.42012],[-0.79803,44.42756],[-0.78028,44.42811],[-0.78061,44.44012],[-0.72973,44.4482],[-0.69238,44.44068],[-0.68193,44.4441],[-0.67603,44.45733],[-0.6441,44.45045],[-0.6278,44.44272],[-0.62547,44.41243],[-0.62779,44.4057],[-0.64221,44.40035],[-0.57097,44.38253],[-0.5281,44.36465],[-0.51764,44.33911],[-0.47887,44.32489],[-0.43184,44.32258],[-0.43152,44.30093],[-0.42035,44.29948],[-0.40474,44.28738],[-0.38339,44.28631],[-0.39656,44.2366],[-0.38962,44.20948],[-0.31134,44.20327],[-0.27212,44.19381],[-0.22345,44.2059],[-0.226,44.26478],[-0.20442,44.26423],[-0.19385,44.27185],[-0.17481,44.25745],[-0.16605,44.24139],[-0.14069,44.2264],[-0.12949,44.20413],[-0.12915,44.15241],[-0.08672,44.1562],[-0.05986,44.15082],[-0.00354,44.1499],[0.03459,44.13065],[0.13511,44.12422],[0.1307,44.12166],[0.13587,44.10855],[0.12361,44.10554],[0.10104,44.08727],[0.10483,44.07826],[0.09856,44.07885],[0.09432,44.06561],[0.08303,44.06359],[0.08728,44.05211],[0.07589,44.03001],[0.07226,44.02534],[0.05992,44.02473],[0.0627,44.00084],[0.07605,43.98314],[0.06633,43.96472],[0.05497,43.95696],[0.07665,43.91647],[0.05902,43.89681],[0.04063,43.90378],[0.03079,43.90056],[0.01766,43.91169],[-0.0239,43.92984],[0.00551,43.9435],[0.00673,43.95374],[-0.03617,43.98374],[-0.04401,43.96283],[-0.05936,43.96094],[-0.07025,43.94494],[-0.08114,43.94258],[-0.09336,43.9485],[-0.09925,43.93622],[-0.09524,43.92946],[-0.10818,43.92914],[-0.12468,43.94435],[-0.13582,43.93607],[-0.15347,43.93981],[-0.1598,43.92771],[-0.17911,43.93792],[-0.20009,43.91483],[-0.21774,43.90679],[-0.22458,43.91384],[-0.23934,43.89828],[-0.23394,43.89107],[-0.22231,43.89417],[-0.21128,43.88527],[-0.19049,43.88075],[-0.18556,43.86301],[-0.19641,43.87162],[-0.19572,43.86531],[-0.20891,43.85767],[-0.18813,43.83256],[-0.19812,43.82937],[-0.19177,43.8101],[-0.20082,43.80671],[-0.216,43.81254],[-0.22714,43.80827],[-0.2178,43.79817],[-0.22228,43.78933],[-0.21281,43.77879],[-0.2173,43.77149],[-0.2067,43.75921],[-0.21886,43.75033],[-0.19732,43.74766],[-0.19414,43.73702],[-0.21085,43.72426],[-0.25063,43.70779],[-0.2391,43.69395],[-0.25682,43.68319],[-0.25802,43.67375],[-0.23973,43.67124],[-0.24214,43.65506],[-0.26338,43.65278],[-0.26376,43.63592],[-0.2819,43.6411],[-0.27764,43.61589],[-0.2472,43.61595],[-0.25465,43.59708],[-0.24817,43.59666],[-0.24284,43.58498]]]}},{"type":"Feature","properties":{"code":"41","nom":"Loir-et-Cher"},"geometry":{"type":"Polygon","coordinates":[[[0.84122,48.10306],[0.87589,48.10944],[0.88156,48.10811],[0.87953,48.10377],[0.91017,48.1032],[0.92993,48.11207],[0.94403,48.11237],[0.94663,48.09756],[0.99555,48.12727],[1.01395,48.1327],[1.04057,48.13187],[1.04603,48.11764],[1.00349,48.10537],[0.99095,48.09692],[0.99223,48.09181],[1.00855,48.08313],[1.026,48.08841],[1.0637,48.08649],[1.07047,48.07563],[1.11223,48.08073],[1.10627,48.06014],[1.12271,48.03598],[1.16663,48.02739],[1.1672,48.01997],[1.159,48.0177],[1.16983,48.00651],[1.18714,48.00242],[1.1913,47.98406],[1.20263,47.97738],[1.1915,47.97197],[1.19693,47.96788],[1.24678,47.9796],[1.25802,47.97385],[1.26502,47.96182],[1.29958,47.96816],[1.30863,47.95385],[1.3437,47.95753],[1.34591,47.96506],[1.37002,47.95375],[1.38695,47.98128],[1.40688,47.9701],[1.43724,47.9765],[1.43739,48.0069],[1.43261,48.00853],[1.43966,48.01195],[1.48109,47.99737],[1.49878,47.98528],[1.50308,47.988],[1.52784,47.98143],[1.54044,47.98952],[1.54653,47.98574],[1.55233,47.99194],[1.55757,47.98626],[1.56482,47.98977],[1.56673,47.97427],[1.54784,47.96547],[1.5465,47.95602],[1.55498,47.95324],[1.52598,47.94508],[1.52237,47.93211],[1.5517,47.92161],[1.58142,47.90193],[1.57512,47.89838],[1.59051,47.87891],[1.54848,47.84122],[1.53514,47.84042],[1.53427,47.82746],[1.52569,47.82025],[1.54156,47.81699],[1.57054,47.79659],[1.56145,47.79068],[1.57125,47.78696],[1.54788,47.76976],[1.6005,47.74124],[1.58287,47.72644],[1.61472,47.73744],[1.62663,47.76097],[1.67233,47.73955],[1.71354,47.73335],[1.71287,47.72206],[1.72806,47.69956],[1.71938,47.69592],[1.73994,47.66153],[1.74887,47.65578],[1.78198,47.6523],[1.77882,47.64284],[1.78926,47.63704],[1.80295,47.63904],[1.81012,47.65329],[1.84517,47.65708],[1.84369,47.68635],[1.85862,47.69217],[1.86573,47.68784],[1.86075,47.67846],[1.86605,47.67457],[1.89044,47.67907],[1.90196,47.67178],[1.93552,47.67974],[1.94249,47.67427],[1.94146,47.66033],[1.95682,47.66195],[1.96412,47.6573],[1.96986,47.66348],[1.99615,47.66396],[2.00232,47.66848],[1.99775,47.67476],[2.00938,47.67875],[2.06646,47.67431],[2.07455,47.68215],[2.10767,47.67651],[2.11103,47.66968],[2.12824,47.67876],[2.14852,47.67043],[2.20395,47.6781],[2.20532,47.66111],[2.21996,47.66787],[2.24105,47.64095],[2.23921,47.62098],[2.19701,47.60695],[2.15135,47.6005],[2.14188,47.59005],[2.11958,47.58295],[2.12773,47.57006],[2.12378,47.55997],[2.12854,47.55126],[2.19784,47.54592],[2.21529,47.52211],[2.19607,47.4879],[2.22803,47.49698],[2.24775,47.49173],[2.23697,47.47126],[2.24522,47.45822],[2.23494,47.4517],[2.24789,47.4414],[2.24369,47.41482],[2.23039,47.40752],[2.20523,47.40525],[2.1889,47.43779],[2.13798,47.40596],[2.11499,47.42126],[2.11703,47.41011],[2.10312,47.39258],[2.09708,47.3668],[2.11395,47.37002],[2.12769,47.34496],[2.11939,47.33342],[2.12918,47.33295],[2.13162,47.32095],[2.14539,47.31544],[2.14942,47.31877],[2.15808,47.29864],[2.13849,47.29286],[2.1381,47.28417],[2.12867,47.27984],[2.11169,47.27944],[2.10504,47.28613],[2.07729,47.2858],[2.02453,47.26512],[2.00779,47.26862],[1.99849,47.26405],[1.9426,47.29099],[1.92322,47.27469],[1.92463,47.26466],[1.89477,47.25466],[1.89218,47.24876],[1.90952,47.24379],[1.91659,47.23599],[1.90381,47.21525],[1.87301,47.20532],[1.85279,47.22215],[1.84965,47.21809],[1.82803,47.22227],[1.79582,47.23782],[1.79097,47.2315],[1.77611,47.23138],[1.71595,47.27678],[1.70453,47.26497],[1.66802,47.25703],[1.6446,47.2644],[1.65229,47.27278],[1.59243,47.27668],[1.59289,47.2577],[1.55954,47.26139],[1.52396,47.25525],[1.53105,47.24878],[1.52547,47.24186],[1.53484,47.22532],[1.53117,47.21851],[1.50306,47.23513],[1.49359,47.23201],[1.49506,47.23539],[1.4816,47.23916],[1.45807,47.23992],[1.42121,47.22916],[1.40143,47.21245],[1.37142,47.1997],[1.35094,47.19363],[1.33849,47.19554],[1.32667,47.18623],[1.29459,47.23736],[1.27643,47.25684],[1.26622,47.25567],[1.24331,47.27385],[1.24232,47.28724],[1.22195,47.29411],[1.19447,47.28301],[1.17625,47.28804],[1.16232,47.27234],[1.12738,47.29788],[1.1224,47.29311],[1.10813,47.2984],[1.09485,47.32854],[1.10631,47.33108],[1.11327,47.34785],[1.12301,47.35357],[1.10435,47.37015],[1.12155,47.38243],[1.12352,47.39195],[1.11403,47.39576],[1.11107,47.40936],[1.08514,47.43],[1.10511,47.43179],[1.11376,47.42797],[1.13337,47.44895],[1.11288,47.46592],[1.0854,47.46432],[1.09456,47.4695],[1.06572,47.50522],[1.07392,47.5121],[1.06713,47.51536],[1.06995,47.52285],[1.05624,47.52356],[1.04529,47.53149],[1.04659,47.53954],[1.07467,47.55844],[1.07689,47.57137],[1.06346,47.56623],[1.03279,47.60813],[1.01229,47.60385],[1.00372,47.58436],[0.99702,47.58397],[0.98674,47.59068],[0.98392,47.60519],[0.99179,47.62003],[0.97098,47.6219],[0.96527,47.62957],[0.95401,47.62484],[0.91974,47.63267],[0.90627,47.61604],[0.89216,47.61152],[0.89941,47.60898],[0.89755,47.60415],[0.86185,47.59875],[0.85029,47.62451],[0.86319,47.6321],[0.84365,47.64548],[0.86001,47.66534],[0.85984,47.68081],[0.86703,47.69062],[0.82792,47.6768],[0.81178,47.68222],[0.80041,47.67932],[0.77036,47.68387],[0.73869,47.69612],[0.71973,47.69069],[0.71215,47.68181],[0.67477,47.699],[0.64827,47.684],[0.64387,47.68808],[0.65412,47.6988],[0.64376,47.7],[0.63913,47.70969],[0.62672,47.70748],[0.60419,47.68561],[0.59557,47.68832],[0.59297,47.70359],[0.58032,47.71238],[0.59409,47.72311],[0.60902,47.7253],[0.62427,47.75049],[0.64535,47.75283],[0.67697,47.76953],[0.69143,47.76383],[0.70254,47.76682],[0.69122,47.78339],[0.69838,47.78925],[0.71213,47.78715],[0.71453,47.79376],[0.71949,47.79275],[0.74021,47.8116],[0.74587,47.82756],[0.75886,47.83354],[0.76841,47.8311],[0.77485,47.84381],[0.77387,47.85033],[0.75916,47.85922],[0.76469,47.86658],[0.75709,47.88578],[0.76123,47.89982],[0.79002,47.91221],[0.79917,47.89691],[0.81211,47.88853],[0.81767,47.89297],[0.81522,47.90386],[0.80754,47.9079],[0.81609,47.91292],[0.80842,47.91659],[0.81175,47.92883],[0.81635,47.93428],[0.84771,47.94158],[0.84952,47.9472],[0.81866,47.98925],[0.83237,47.99659],[0.84188,48.03018],[0.83498,48.03444],[0.82673,48.02975],[0.80837,48.03167],[0.80598,48.03834],[0.79755,48.03724],[0.79398,48.06971],[0.84302,48.07264],[0.84817,48.0946],[0.83872,48.09417],[0.83793,48.08876],[0.81429,48.0961],[0.84122,48.10306]]]}},{"type":"Feature","properties":{"code":"42","nom":"Loire"},"geometry":{"type":"Polygon","coordinates":[[[3.89953,46.27591],[3.90969,46.24778],[3.90487,46.23786],[3.89765,46.23963],[3.89809,46.22518],[3.89013,46.21449],[3.91837,46.20285],[3.93352,46.20642],[3.97255,46.20271],[3.97097,46.18915],[3.99012,46.16911],[3.99348,46.17288],[4.0305,46.16977],[4.05886,46.18806],[4.06845,46.18639],[4.10383,46.19844],[4.13339,46.17732],[4.18701,46.17457],[4.18524,46.1894],[4.20791,46.19484],[4.22469,46.178],[4.24236,46.18883],[4.25491,46.18801],[4.26352,46.17536],[4.24866,46.16711],[4.24991,46.15818],[4.28123,46.15594],[4.29231,46.17248],[4.30696,46.17461],[4.31531,46.17064],[4.32709,46.18479],[4.33661,46.18102],[4.34567,46.18784],[4.35866,46.18185],[4.37081,46.18432],[4.36283,46.20004],[4.3735,46.20462],[4.37511,46.21111],[4.38938,46.21329],[4.38808,46.21979],[4.40716,46.22062],[4.42181,46.2086],[4.42261,46.20256],[4.39533,46.19221],[4.40413,46.18332],[4.43859,46.16788],[4.42212,46.15054],[4.41736,46.13591],[4.38028,46.15],[4.36159,46.13846],[4.32642,46.13261],[4.31977,46.11683],[4.30702,46.1063],[4.31107,46.08032],[4.30143,46.07845],[4.30012,46.0652],[4.28574,46.05353],[4.25784,46.05437],[4.25026,46.05004],[4.27644,46.023],[4.28767,46.01732],[4.30585,46.02159],[4.31251,46.00559],[4.3001,45.98888],[4.289,45.99844],[4.2851,45.99387],[4.27531,45.99467],[4.27126,45.98803],[4.26544,45.99673],[4.26987,45.99971],[4.26285,46.00191],[4.25814,45.99479],[4.24399,45.99586],[4.25113,45.98456],[4.27517,45.97978],[4.2981,45.96566],[4.30116,45.95755],[4.29487,45.95289],[4.30072,45.94707],[4.31454,45.94004],[4.31943,45.9435],[4.34602,45.92994],[4.33476,45.91646],[4.34479,45.91539],[4.32322,45.90393],[4.34215,45.87718],[4.3632,45.86438],[4.36855,45.86789],[4.377,45.86305],[4.39157,45.865],[4.39621,45.86005],[4.38253,45.84563],[4.3906,45.83747],[4.37732,45.8248],[4.38893,45.80636],[4.38784,45.80301],[4.38156,45.80717],[4.37369,45.80506],[4.37966,45.78399],[4.36026,45.77759],[4.35842,45.78329],[4.35906,45.77639],[4.34807,45.76953],[4.35999,45.751],[4.37098,45.749],[4.39125,45.75493],[4.40292,45.74392],[4.39175,45.73913],[4.37292,45.70257],[4.36552,45.69852],[4.37345,45.69078],[4.3643,45.68446],[4.36592,45.67124],[4.39255,45.66248],[4.39932,45.65655],[4.39384,45.65039],[4.41017,45.6325],[4.44149,45.62305],[4.44943,45.6058],[4.47331,45.59676],[4.46908,45.58501],[4.48056,45.58843],[4.48962,45.58425],[4.50476,45.58625],[4.50477,45.57655],[4.51996,45.57294],[4.56726,45.58357],[4.58845,45.57056],[4.61486,45.57547],[4.6447,45.54052],[4.6594,45.5434],[4.64624,45.55507],[4.64972,45.56486],[4.66456,45.56419],[4.67231,45.57028],[4.68034,45.56777],[4.6875,45.55821],[4.68302,45.55089],[4.67564,45.55176],[4.6508,45.53086],[4.65134,45.4917],[4.65526,45.48607],[4.67076,45.48346],[4.66625,45.47811],[4.67097,45.47342],[4.67642,45.48196],[4.69838,45.47725],[4.72183,45.4944],[4.73955,45.48704],[4.74433,45.47911],[4.73854,45.47277],[4.75694,45.45571],[4.76032,45.43362],[4.74211,45.41461],[4.75807,45.39124],[4.756,45.36567],[4.72583,45.36181],[4.72194,45.35431],[4.69802,45.34499],[4.68013,45.34626],[4.66236,45.34043],[4.63855,45.32619],[4.64057,45.31698],[4.61589,45.31199],[4.61458,45.30042],[4.62283,45.29141],[4.5986,45.28949],[4.59065,45.27344],[4.60603,45.26279],[4.60679,45.25463],[4.5848,45.24407],[4.5604,45.24779],[4.53831,45.24263],[4.54055,45.23475],[4.53136,45.23417],[4.52923,45.23978],[4.5094,45.24479],[4.51163,45.23291],[4.49146,45.23167],[4.44737,45.25763],[4.43449,45.275],[4.4009,45.26953],[4.38738,45.26234],[4.38713,45.25511],[4.37768,45.26345],[4.36497,45.26265],[4.34933,45.27835],[4.35817,45.28131],[4.37116,45.30114],[4.35127,45.30328],[4.33165,45.31848],[4.36529,45.33765],[4.34842,45.36046],[4.33344,45.36857],[4.30877,45.37079],[4.306,45.36112],[4.29782,45.36802],[4.29317,45.36625],[4.29686,45.35938],[4.28621,45.3612],[4.28872,45.35637],[4.28142,45.36083],[4.27155,45.35841],[4.27131,45.37464],[4.25192,45.37345],[4.24998,45.38212],[4.22656,45.38971],[4.21622,45.38427],[4.20465,45.38599],[4.20214,45.38149],[4.17793,45.3926],[4.14561,45.38431],[4.15812,45.37277],[4.15378,45.36479],[4.1194,45.36948],[4.10957,45.36393],[4.10918,45.35564],[4.08039,45.35778],[4.0708,45.33605],[4.04588,45.35572],[4.03155,45.3481],[4.02166,45.35049],[4.02602,45.34053],[4.01954,45.32754],[4.00248,45.35599],[3.99132,45.35588],[3.99347,45.36103],[3.98237,45.37434],[3.96679,45.3742],[3.9594,45.36805],[3.94847,45.37645],[3.93693,45.37225],[3.9353,45.359],[3.92474,45.35982],[3.91461,45.35405],[3.92252,45.34878],[3.91933,45.3418],[3.90502,45.33412],[3.89085,45.3702],[3.89537,45.38337],[3.88923,45.39452],[3.91389,45.42225],[3.96258,45.43518],[3.96019,45.44318],[3.97411,45.44927],[3.96876,45.45196],[3.9734,45.4599],[3.96667,45.47205],[3.98296,45.48208],[3.98469,45.49523],[3.96578,45.50036],[3.96147,45.5061],[3.94572,45.54516],[3.95435,45.55596],[3.93502,45.57838],[3.90667,45.5978],[3.88172,45.60354],[3.86092,45.61552],[3.85877,45.62471],[3.82345,45.63242],[3.81794,45.64653],[3.77695,45.69084],[3.78085,45.72435],[3.76816,45.72825],[3.75861,45.74632],[3.74591,45.74225],[3.73226,45.75102],[3.72763,45.75594],[3.7389,45.76681],[3.73182,45.7745],[3.71083,45.78318],[3.70082,45.78141],[3.68858,45.79114],[3.71162,45.79955],[3.72175,45.81364],[3.71732,45.81927],[3.72844,45.83151],[3.71877,45.84831],[3.72852,45.86251],[3.72012,45.86112],[3.71637,45.87125],[3.73511,45.87066],[3.74524,45.8843],[3.75437,45.88603],[3.73963,45.9092],[3.72345,45.92187],[3.69402,45.93073],[3.69463,45.95038],[3.70581,45.95659],[3.70247,45.97009],[3.70961,45.97413],[3.74724,45.96705],[3.75603,45.98283],[3.76483,45.9761],[3.78714,45.97299],[3.79879,45.9839],[3.82379,45.98735],[3.82973,45.99924],[3.81543,46.01945],[3.80553,46.05234],[3.82153,46.08983],[3.80585,46.10777],[3.79349,46.1122],[3.80175,46.13095],[3.78976,46.15485],[3.80881,46.16464],[3.78897,46.18568],[3.78817,46.20211],[3.79664,46.20701],[3.77196,46.22865],[3.76821,46.23881],[3.78222,46.24399],[3.80588,46.24093],[3.8038,46.25807],[3.86763,46.26253],[3.87766,46.27576],[3.89953,46.27591]]]}},{"type":"Feature","properties":{"code":"43","nom":"Haute-Loire"},"geometry":{"type":"Polygon","coordinates":[[[3.89741,45.35708],[3.90831,45.33332],[3.92252,45.34878],[3.91461,45.35405],[3.92474,45.35982],[3.9353,45.359],[3.93693,45.37225],[3.94847,45.37645],[3.9594,45.36805],[3.97693,45.37594],[3.98593,45.37185],[3.99132,45.35588],[4.00248,45.35599],[4.01954,45.32754],[4.02602,45.34053],[4.02166,45.35049],[4.03155,45.3481],[4.04588,45.35572],[4.0708,45.33605],[4.08039,45.35778],[4.10918,45.35564],[4.10957,45.36393],[4.1194,45.36948],[4.15378,45.36479],[4.15812,45.37277],[4.14561,45.38431],[4.17793,45.3926],[4.20214,45.38149],[4.20465,45.38599],[4.23456,45.3885],[4.25339,45.37918],[4.25192,45.37345],[4.27131,45.37464],[4.27155,45.35841],[4.28142,45.36083],[4.28872,45.35637],[4.28621,45.3612],[4.29686,45.35938],[4.29317,45.36625],[4.29782,45.36802],[4.306,45.36112],[4.30877,45.37079],[4.33532,45.36797],[4.35924,45.3504],[4.36564,45.33864],[4.33165,45.31848],[4.35127,45.30328],[4.37116,45.30114],[4.34943,45.27421],[4.38713,45.25511],[4.38738,45.26234],[4.4009,45.26953],[4.43449,45.275],[4.44737,45.25763],[4.48313,45.23645],[4.49066,45.22359],[4.48777,45.21634],[4.47658,45.21191],[4.48056,45.19546],[4.47254,45.17941],[4.45926,45.17502],[4.44705,45.16088],[4.44326,45.14083],[4.4564,45.11908],[4.43794,45.12198],[4.44124,45.11139],[4.43604,45.10874],[4.42629,45.11792],[4.43169,45.12831],[4.42298,45.13727],[4.41417,45.14158],[4.39666,45.1391],[4.37394,45.14396],[4.37652,45.13613],[4.36947,45.12855],[4.37746,45.12257],[4.40019,45.11839],[4.39957,45.10476],[4.38797,45.10541],[4.38458,45.10107],[4.37224,45.10633],[4.35922,45.09921],[4.36693,45.08896],[4.35708,45.08687],[4.35976,45.08017],[4.34701,45.07683],[4.34604,45.06884],[4.35961,45.05568],[4.37775,45.05483],[4.38172,45.04158],[4.37907,45.03617],[4.35618,45.03361],[4.35211,45.02796],[4.31029,45.03152],[4.31127,45.02462],[4.30154,45.02609],[4.30446,45.01857],[4.29749,45.01913],[4.28983,44.99731],[4.30792,44.98552],[4.3139,44.97351],[4.25314,44.9589],[4.23599,44.9704],[4.22732,44.96579],[4.21657,44.93357],[4.18219,44.90801],[4.17948,44.88651],[4.15692,44.87341],[4.13268,44.8736],[4.11658,44.8789],[4.07134,44.86666],[4.05626,44.87292],[4.03964,44.87316],[4.02391,44.85917],[4.02005,44.84586],[4.02917,44.83763],[4.02652,44.83114],[4.01446,44.8292],[4.0134,44.83682],[4.00528,44.83802],[4.00039,44.81931],[3.99074,44.83391],[3.98248,44.83263],[3.98854,44.8118],[3.9703,44.81791],[3.96318,44.82975],[3.94495,44.82456],[3.937,44.79542],[3.92621,44.7912],[3.92254,44.7774],[3.91077,44.77873],[3.92538,44.77012],[3.90021,44.76415],[3.89876,44.75265],[3.87558,44.75715],[3.86253,44.74386],[3.83543,44.74804],[3.82982,44.75479],[3.84248,44.77162],[3.83154,44.77668],[3.80927,44.76516],[3.79853,44.78609],[3.778,44.79873],[3.77126,44.7972],[3.77141,44.80318],[3.7612,44.80186],[3.76174,44.81373],[3.74255,44.83895],[3.73498,44.83976],[3.73464,44.83301],[3.72289,44.83099],[3.70013,44.83666],[3.69544,44.83096],[3.66323,44.82983],[3.65742,44.83612],[3.67182,44.84339],[3.67244,44.85683],[3.65364,44.87594],[3.63021,44.88093],[3.61475,44.87418],[3.60828,44.87933],[3.59373,44.87657],[3.59874,44.85972],[3.59042,44.84663],[3.5943,44.8411],[3.58663,44.83812],[3.58892,44.8264],[3.57884,44.82542],[3.57058,44.83587],[3.56022,44.83279],[3.56152,44.82488],[3.54305,44.82838],[3.50565,44.82385],[3.48907,44.807],[3.4819,44.80807],[3.4647,44.82794],[3.45599,44.82916],[3.45885,44.83993],[3.4418,44.85423],[3.43571,44.88024],[3.42045,44.8951],[3.41926,44.90843],[3.41038,44.91778],[3.41519,44.94158],[3.40438,44.95703],[3.39725,44.95853],[3.38907,44.95137],[3.37135,44.96025],[3.37619,44.96462],[3.37257,44.97545],[3.36229,44.97131],[3.34795,44.97387],[3.34531,44.98581],[3.36447,44.99024],[3.37013,45.00517],[3.34971,45.00166],[3.3472,45.01423],[3.32497,45.00979],[3.33717,45.02534],[3.32704,45.03061],[3.31088,45.02039],[3.29725,45.03608],[3.30483,45.04523],[3.29982,45.06085],[3.30651,45.06277],[3.30195,45.06375],[3.31489,45.0851],[3.29771,45.09119],[3.28977,45.08675],[3.28229,45.10319],[3.30457,45.1066],[3.30543,45.10111],[3.32579,45.09514],[3.36145,45.10418],[3.35053,45.10428],[3.34788,45.11295],[3.33098,45.10945],[3.29948,45.12524],[3.28803,45.12042],[3.27375,45.14528],[3.2816,45.15161],[3.26711,45.15453],[3.26061,45.17094],[3.27335,45.20841],[3.26575,45.21359],[3.25544,45.20999],[3.25362,45.21585],[3.23536,45.22009],[3.23442,45.23765],[3.22095,45.24458],[3.22911,45.26486],[3.22685,45.27194],[3.22011,45.2719],[3.22322,45.27682],[3.20235,45.28238],[3.18351,45.27941],[3.18838,45.27744],[3.16494,45.26884],[3.16976,45.27987],[3.16099,45.29533],[3.14737,45.28781],[3.13694,45.28969],[3.118,45.28419],[3.09936,45.29232],[3.08315,45.28937],[3.08461,45.29903],[3.10489,45.30016],[3.11381,45.3091],[3.09046,45.32252],[3.09372,45.3274],[3.11342,45.32709],[3.11618,45.33382],[3.10951,45.34507],[3.11285,45.35156],[3.1035,45.35437],[3.18041,45.35146],[3.1746,45.35533],[3.18139,45.36469],[3.1945,45.36257],[3.19226,45.36682],[3.2019,45.3711],[3.21865,45.36949],[3.22173,45.38179],[3.23794,45.39363],[3.25407,45.38868],[3.29003,45.40066],[3.29817,45.4203],[3.32011,45.41317],[3.32758,45.39682],[3.33412,45.39825],[3.34085,45.42136],[3.35595,45.4227],[3.37828,45.40077],[3.39021,45.40363],[3.40228,45.39992],[3.40611,45.40339],[3.41966,45.39741],[3.43029,45.40208],[3.46361,45.40188],[3.46096,45.40649],[3.47978,45.4211],[3.49953,45.42751],[3.50647,45.41125],[3.52091,45.40241],[3.52437,45.40633],[3.52994,45.39822],[3.53059,45.40149],[3.55406,45.39724],[3.55617,45.39163],[3.57058,45.4021],[3.58805,45.37523],[3.5869,45.36129],[3.61863,45.33771],[3.64494,45.35101],[3.64482,45.35934],[3.66374,45.36167],[3.67021,45.38376],[3.67395,45.38034],[3.68011,45.38419],[3.68341,45.37798],[3.6907,45.38005],[3.6905,45.37335],[3.70744,45.37387],[3.69709,45.36549],[3.6999,45.35946],[3.73011,45.36144],[3.74077,45.35276],[3.7574,45.35739],[3.77582,45.3487],[3.77949,45.35477],[3.79,45.35388],[3.7854,45.37018],[3.79141,45.38477],[3.80494,45.3921],[3.82236,45.37987],[3.83585,45.38301],[3.83756,45.3658],[3.85083,45.36828],[3.85397,45.35997],[3.87347,45.35513],[3.89741,45.35708]]]}},{"type":"Feature","properties":{"code":"44","nom":"Loire-Atlantique"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-2.45849,47.44812],[-2.45343,47.46207],[-2.4377,47.46597],[-2.42303,47.47711],[-2.41721,47.46109],[-2.39994,47.45598],[-2.36826,47.46422],[-2.35253,47.45467],[-2.31697,47.46129],[-2.31187,47.46524],[-2.31314,47.4859],[-2.30123,47.49639],[-2.29642,47.51599],[-2.28083,47.50958],[-2.25494,47.51151],[-2.26564,47.50178],[-2.24428,47.4936],[-2.21556,47.50839],[-2.18452,47.51226],[-2.18376,47.50179],[-2.19216,47.49664],[-2.16462,47.48915],[-2.15418,47.49636],[-2.15602,47.52203],[-2.13252,47.52653],[-2.13199,47.53119],[-2.11782,47.528],[-2.09855,47.53396],[-2.09683,47.54033],[-2.10465,47.54715],[-2.09669,47.57052],[-2.10051,47.57726],[-2.10474,47.57525],[-2.09953,47.58077],[-2.10385,47.59087],[-2.08602,47.60403],[-2.08499,47.62123],[-2.09704,47.63136],[-2.0812,47.6502],[-2.0515,47.64957],[-2.0499,47.6617],[-2.03908,47.66954],[-2.01291,47.66602],[-1.97438,47.69394],[-1.96927,47.67381],[-1.96124,47.67092],[-1.9363,47.68665],[-1.89866,47.6955],[-1.87828,47.69535],[-1.85831,47.70827],[-1.83995,47.7055],[-1.82753,47.71059],[-1.82088,47.70484],[-1.7716,47.69826],[-1.75137,47.70748],[-1.72206,47.69842],[-1.71127,47.70038],[-1.7106,47.70845],[-1.6895,47.71338],[-1.65751,47.70944],[-1.6485,47.72087],[-1.63818,47.72232],[-1.6365,47.74244],[-1.62306,47.76357],[-1.60495,47.76251],[-1.5944,47.76697],[-1.59832,47.77021],[-1.58641,47.77989],[-1.52904,47.78478],[-1.50327,47.80143],[-1.49089,47.79837],[-1.47311,47.80197],[-1.46675,47.80921],[-1.48241,47.83088],[-1.47823,47.83588],[-1.46257,47.83586],[-1.45427,47.83099],[-1.42335,47.83249],[-1.40574,47.8245],[-1.39851,47.8291],[-1.38907,47.82787],[-1.37805,47.80994],[-1.36148,47.80345],[-1.36506,47.7991],[-1.24588,47.77672],[-1.24964,47.76422],[-1.23466,47.75487],[-1.24172,47.74286],[-1.25572,47.74256],[-1.25543,47.73141],[-1.21542,47.71882],[-1.19512,47.72155],[-1.19622,47.7099],[-1.18159,47.7035],[-1.1895,47.69916],[-1.17493,47.69457],[-1.18081,47.66476],[-1.17039,47.66314],[-1.17402,47.65975],[-1.16075,47.6616],[-1.15741,47.63522],[-1.1382,47.61946],[-1.10065,47.62068],[-1.07799,47.60657],[-1.05855,47.60138],[-1.03685,47.60246],[-1.01039,47.59319],[-1.00684,47.58874],[-1.01912,47.57669],[-1.04104,47.56988],[-1.04185,47.56233],[-1.05564,47.56527],[-1.05238,47.55794],[-1.06049,47.55603],[-1.05037,47.54719],[-1.03861,47.54726],[-1.04446,47.5055],[-1.02393,47.5002],[-1.00643,47.48815],[-0.96548,47.4918],[-0.95913,47.48122],[-0.96805,47.46994],[-0.95257,47.45147],[-0.94671,47.4276],[-0.94835,47.42273],[-0.96067,47.42279],[-0.96106,47.41815],[-0.95042,47.40688],[-0.95086,47.38926],[-0.94581,47.38702],[-0.97487,47.37138],[-0.99119,47.3729],[-1.01522,47.36505],[-1.07602,47.37083],[-1.10823,47.36578],[-1.16652,47.36632],[-1.18766,47.35236],[-1.29691,47.33862],[-1.3542,47.30415],[-1.33726,47.30033],[-1.32161,47.30582],[-1.31825,47.30125],[-1.29574,47.30601],[-1.29423,47.30038],[-1.27505,47.29067],[-1.27781,47.27087],[-1.2539,47.2477],[-1.22836,47.23971],[-1.20738,47.2532],[-1.19804,47.25294],[-1.18097,47.24081],[-1.18847,47.22],[-1.17448,47.2144],[-1.18049,47.20733],[-1.17358,47.19871],[-1.17846,47.19339],[-1.17034,47.18661],[-1.16188,47.18754],[-1.16163,47.17764],[-1.17663,47.16278],[-1.1815,47.16529],[-1.18307,47.15916],[-1.19804,47.15384],[-1.1985,47.14892],[-1.20564,47.1501],[-1.2047,47.14486],[-1.21887,47.14555],[-1.23889,47.13704],[-1.22462,47.11889],[-1.22976,47.10986],[-1.24964,47.09844],[-1.24428,47.09428],[-1.22854,47.10045],[-1.16938,47.09317],[-1.15504,47.07244],[-1.11554,47.0627],[-1.12147,47.05576],[-1.11705,47.04013],[-1.14692,47.02951],[-1.20068,47.04002],[-1.20186,47.04588],[-1.23093,47.06503],[-1.24749,47.06717],[-1.27074,47.08468],[-1.28028,47.07569],[-1.28771,47.0763],[-1.28759,47.05704],[-1.30492,47.0406],[-1.29647,47.04316],[-1.29892,47.03466],[-1.32032,47.03448],[-1.34572,47.04573],[-1.34146,47.04037],[-1.34702,47.03777],[-1.36607,47.0417],[-1.36809,47.03475],[-1.37861,47.03085],[-1.36691,47.01952],[-1.36302,47.00523],[-1.37802,46.99173],[-1.35906,46.98113],[-1.35818,46.97121],[-1.36925,46.96379],[-1.36503,46.95694],[-1.39215,46.94692],[-1.41308,46.94538],[-1.45827,46.92584],[-1.47174,46.93318],[-1.45739,46.95541],[-1.47195,46.96776],[-1.47696,46.98097],[-1.4739,46.98794],[-1.46024,46.99296],[-1.46917,47.00199],[-1.47256,47.03106],[-1.49277,47.04206],[-1.50499,47.03886],[-1.51741,47.02641],[-1.53854,47.02335],[-1.54027,47.01744],[-1.54959,47.01893],[-1.55573,47.01449],[-1.54267,47.00327],[-1.55529,46.97857],[-1.54282,46.96534],[-1.54442,46.95736],[-1.53402,46.94537],[-1.52545,46.94602],[-1.51878,46.93463],[-1.5291,46.9227],[-1.54581,46.92556],[-1.52933,46.90653],[-1.50319,46.89399],[-1.50077,46.88389],[-1.52696,46.87279],[-1.54628,46.87471],[-1.54878,46.86016],[-1.57618,46.86404],[-1.60453,46.87546],[-1.60929,46.87142],[-1.63193,46.87839],[-1.66754,46.87588],[-1.68842,46.89069],[-1.72294,46.88402],[-1.73595,46.89446],[-1.73514,46.90989],[-1.74571,46.91664],[-1.74186,46.92133],[-1.74841,46.9295],[-1.7783,46.92498],[-1.78629,46.92964],[-1.83199,46.93227],[-1.82638,46.93802],[-1.82841,46.95303],[-1.87347,46.95315],[-1.89867,46.96154],[-1.90632,46.97089],[-1.91101,46.96937],[-1.91744,46.97508],[-1.9123,46.97915],[-1.91858,46.98018],[-1.91672,46.99216],[-1.94323,46.99471],[-1.96885,47.02767],[-1.98362,47.02951],[-2.00472,47.06146],[-2.0326,47.07352],[-2.05207,47.09381],[-2.10716,47.10665],[-2.10344,47.11436],[-2.11113,47.10993],[-2.13685,47.11054],[-2.17939,47.12209],[-2.21858,47.12491],[-2.22682,47.13094],[-2.24473,47.13032],[-2.24782,47.13402],[-2.2231,47.15388],[-2.20005,47.15876],[-2.17818,47.15615],[-2.16706,47.16618],[-2.15837,47.20905],[-2.18099,47.23263],[-2.17054,47.23975],[-2.16999,47.26848],[-2.18736,47.28062],[-2.1997,47.26983],[-2.22374,47.26542],[-2.22216,47.25863],[-2.22804,47.25615],[-2.25282,47.25344],[-2.26741,47.2384],[-2.29818,47.23312],[-2.33536,47.25216],[-2.3541,47.27114],[-2.37516,47.2788],[-2.39838,47.28145],[-2.42038,47.27645],[-2.42539,47.27096],[-2.41655,47.25872],[-2.4316,47.25832],[-2.46112,47.27002],[-2.49392,47.27542],[-2.49909,47.28074],[-2.54636,47.29065],[-2.53948,47.29959],[-2.51193,47.29958],[-2.50291,47.32875],[-2.52116,47.35881],[-2.55894,47.37457],[-2.49123,47.40481],[-2.48829,47.4112],[-2.47792,47.41248],[-2.4682,47.42091],[-2.46252,47.41101],[-2.45673,47.41449],[-2.4335,47.41306],[-2.44047,47.4212],[-2.45867,47.42361],[-2.44549,47.43564],[-2.45849,47.44812]]]]}},{"type":"Feature","properties":{"code":"45","nom":"Loiret"},"geometry":{"type":"Polygon","coordinates":[[[2.93631,48.16339],[2.95327,48.16501],[2.96361,48.15296],[2.99088,48.15249],[2.99839,48.13977],[3.00961,48.14577],[3.0294,48.1333],[3.01588,48.11571],[3.03529,48.11599],[3.03835,48.09885],[3.0504,48.09136],[3.05047,48.07233],[3.06089,48.06422],[3.09536,48.05398],[3.08965,48.04907],[3.09463,48.04041],[3.12426,48.03113],[3.09946,48.02075],[3.10409,48.01355],[3.12421,48.0069],[3.12112,47.99594],[3.12668,47.99127],[3.12172,47.9868],[3.12857,47.98337],[3.12845,47.97097],[3.10931,47.96207],[3.10527,47.94694],[3.0984,47.94878],[3.08386,47.94263],[3.07847,47.93142],[3.05081,47.92417],[3.05049,47.91064],[3.00956,47.90539],[3.01697,47.89892],[3.00723,47.89529],[3.01244,47.87413],[2.99831,47.86728],[3.0233,47.86102],[3.03178,47.85036],[3.0297,47.83508],[3.01254,47.83437],[3.01391,47.82245],[3.02206,47.81777],[3.01547,47.81354],[3.02434,47.81308],[3.02813,47.802],[3.02528,47.78767],[2.98822,47.78603],[2.95474,47.77556],[2.9497,47.76587],[2.93077,47.76228],[2.90938,47.76931],[2.89904,47.76379],[2.87018,47.76487],[2.85199,47.75786],[2.85901,47.74954],[2.84897,47.71684],[2.86063,47.70992],[2.87886,47.72035],[2.88465,47.71389],[2.87915,47.7038],[2.90366,47.69689],[2.92675,47.68176],[2.91815,47.66979],[2.92662,47.659],[2.94158,47.65754],[2.95423,47.64569],[2.93629,47.63665],[2.93232,47.62705],[2.94522,47.60845],[2.93627,47.59932],[2.96231,47.58592],[2.96227,47.57679],[2.97654,47.56943],[2.95866,47.55738],[2.9143,47.56597],[2.90489,47.55621],[2.8739,47.55281],[2.87322,47.54512],[2.85655,47.55235],[2.84519,47.54493],[2.84746,47.53966],[2.87463,47.52042],[2.83923,47.51123],[2.82535,47.49721],[2.80781,47.49436],[2.79324,47.4977],[2.79636,47.50551],[2.78459,47.5101],[2.78529,47.51595],[2.76712,47.5251],[2.746,47.52482],[2.73262,47.53804],[2.72234,47.5213],[2.72956,47.52033],[2.72376,47.51608],[2.72767,47.50681],[2.72002,47.50485],[2.72741,47.49889],[2.72486,47.494],[2.71895,47.49514],[2.71539,47.488],[2.68444,47.48297],[2.6576,47.48728],[2.65409,47.5122],[2.61532,47.52386],[2.61674,47.5409],[2.59391,47.55831],[2.57392,47.55944],[2.5632,47.57213],[2.54727,47.57518],[2.49136,47.5683],[2.45255,47.59676],[2.45017,47.60567],[2.4394,47.6095],[2.40075,47.59942],[2.39596,47.59249],[2.38106,47.59178],[2.37262,47.58553],[2.34244,47.60528],[2.32495,47.60757],[2.29117,47.62375],[2.28963,47.62906],[2.23921,47.62098],[2.24105,47.64095],[2.21996,47.66787],[2.20532,47.66111],[2.20395,47.6781],[2.14852,47.67043],[2.12824,47.67876],[2.11103,47.66968],[2.10767,47.67651],[2.07455,47.68215],[2.06646,47.67431],[2.00938,47.67875],[1.99775,47.67476],[2.00232,47.66848],[1.99615,47.66396],[1.96986,47.66348],[1.96412,47.6573],[1.95682,47.66195],[1.94146,47.66033],[1.94249,47.67427],[1.93552,47.67974],[1.90196,47.67178],[1.89044,47.67907],[1.86605,47.67457],[1.86075,47.67846],[1.86573,47.68784],[1.85862,47.69217],[1.84369,47.68635],[1.84517,47.65708],[1.81012,47.65329],[1.80295,47.63904],[1.78926,47.63704],[1.77882,47.64284],[1.78198,47.6523],[1.74887,47.65578],[1.73994,47.66153],[1.71938,47.69592],[1.72806,47.69956],[1.71287,47.72206],[1.71354,47.73335],[1.67233,47.73955],[1.62663,47.76097],[1.61472,47.73744],[1.58287,47.72644],[1.6005,47.74124],[1.54788,47.76976],[1.57125,47.78696],[1.56145,47.79068],[1.57054,47.79659],[1.54156,47.81699],[1.52569,47.82025],[1.53427,47.82746],[1.53514,47.84042],[1.54848,47.84122],[1.59051,47.87891],[1.57512,47.89838],[1.58142,47.90193],[1.5517,47.92161],[1.52237,47.93211],[1.52598,47.94508],[1.55498,47.95324],[1.5465,47.95602],[1.54784,47.96547],[1.56065,47.96803],[1.56649,47.9812],[1.56482,47.98977],[1.55757,47.98626],[1.55233,47.99194],[1.54653,47.98574],[1.54044,47.98952],[1.52784,47.98143],[1.52012,47.98228],[1.51873,47.98996],[1.5255,47.9928],[1.51706,47.99697],[1.52667,48.00727],[1.51789,48.01178],[1.51255,48.02813],[1.52253,48.03463],[1.54707,48.02958],[1.55081,48.03523],[1.53903,48.03857],[1.54531,48.04459],[1.59412,48.0307],[1.59717,48.04317],[1.61935,48.04309],[1.62409,48.07001],[1.64724,48.0695],[1.65568,48.07618],[1.66476,48.07465],[1.67048,48.06237],[1.68893,48.07796],[1.70899,48.06698],[1.72572,48.07049],[1.74501,48.06388],[1.74933,48.06785],[1.75503,48.06484],[1.7618,48.07162],[1.77154,48.07004],[1.78005,48.07741],[1.78413,48.07262],[1.78837,48.07745],[1.79798,48.07687],[1.80153,48.08943],[1.82976,48.07903],[1.84455,48.08903],[1.84909,48.08469],[1.86567,48.08386],[1.8649,48.09519],[1.88439,48.09766],[1.90192,48.13111],[1.91262,48.12913],[1.9204,48.14639],[1.90528,48.1463],[1.90334,48.15281],[1.91427,48.16746],[1.92505,48.17449],[1.9409,48.16771],[1.94496,48.17467],[1.97097,48.17107],[1.97099,48.18308],[1.95146,48.18958],[1.95112,48.19505],[1.95726,48.2036],[1.96656,48.20215],[1.96245,48.19445],[1.97083,48.18999],[1.9796,48.2039],[1.9626,48.2226],[1.96232,48.24687],[1.96548,48.25547],[1.98426,48.26396],[1.99408,48.28659],[2.01155,48.28483],[2.02499,48.28923],[2.04126,48.28438],[2.05271,48.29547],[2.08534,48.29401],[2.10617,48.30763],[2.11372,48.30725],[2.1106,48.29695],[2.16375,48.29843],[2.1523,48.31591],[2.18069,48.31168],[2.18213,48.32427],[2.20286,48.33891],[2.20225,48.3446],[2.21583,48.33421],[2.22391,48.33642],[2.22757,48.32963],[2.24617,48.33126],[2.23805,48.31637],[2.2493,48.31629],[2.24516,48.2984],[2.25357,48.30024],[2.2669,48.31468],[2.29569,48.30808],[2.31718,48.33157],[2.32645,48.32965],[2.32755,48.33297],[2.32816,48.3264],[2.33478,48.32739],[2.34198,48.31683],[2.35823,48.30849],[2.39747,48.31456],[2.40266,48.32072],[2.42332,48.29476],[2.4177,48.27885],[2.42352,48.26037],[2.44014,48.2532],[2.4464,48.25518],[2.45016,48.25004],[2.46909,48.25527],[2.48411,48.23905],[2.50619,48.23854],[2.50689,48.22599],[2.51833,48.22759],[2.51412,48.21438],[2.52313,48.19489],[2.51297,48.19298],[2.51814,48.18991],[2.50728,48.17968],[2.51653,48.16624],[2.50633,48.15644],[2.48324,48.16452],[2.47465,48.14883],[2.44426,48.13147],[2.44276,48.1254],[2.45438,48.12237],[2.47601,48.12964],[2.52187,48.12512],[2.53751,48.14034],[2.55827,48.14161],[2.57056,48.14082],[2.57482,48.13127],[2.60268,48.13149],[2.63967,48.13895],[2.66475,48.12054],[2.67743,48.12593],[2.70532,48.12303],[2.72046,48.13691],[2.7552,48.14565],[2.75358,48.15321],[2.73641,48.16631],[2.75517,48.16009],[2.76724,48.1649],[2.77172,48.16169],[2.77916,48.1675],[2.79207,48.16455],[2.79526,48.16908],[2.81142,48.16376],[2.79791,48.15116],[2.80122,48.13145],[2.82088,48.12966],[2.84988,48.1411],[2.86803,48.15643],[2.93631,48.16339]]]}},{"type":"Feature","properties":{"code":"46","nom":"Lot"},"geometry":{"type":"Polygon","coordinates":[[[1.44826,45.01931],[1.46199,45.0137],[1.47689,45.01854],[1.48254,45.03019],[1.53747,45.04669],[1.54512,45.02888],[1.57631,45.0407],[1.60772,45.03177],[1.62996,45.03357],[1.65189,45.02529],[1.66381,45.00884],[1.68437,45.00266],[1.70266,44.98783],[1.71103,44.96729],[1.72494,44.9681],[1.7339,44.95943],[1.7508,44.95573],[1.75589,44.94627],[1.74934,44.93758],[1.76729,44.93368],[1.77493,44.92372],[1.78632,44.93093],[1.7857,44.93691],[1.7983,44.93032],[1.80129,44.92209],[1.80915,44.92825],[1.82391,44.92768],[1.83117,44.94549],[1.84277,44.93708],[1.84488,44.94307],[1.86321,44.94783],[1.86861,44.95406],[1.88742,44.95657],[1.88729,44.96272],[1.90866,44.97842],[1.92883,44.97867],[1.93907,44.97322],[1.94028,44.95289],[1.94916,44.95252],[1.99148,44.97591],[2.04544,44.98367],[2.05256,44.97648],[2.06291,44.97651],[2.0807,44.95329],[2.0778,44.93393],[2.10458,44.91977],[2.10728,44.91028],[2.08591,44.90384],[2.08434,44.88567],[2.11721,44.84826],[2.12809,44.84531],[2.13531,44.827],[2.16772,44.81096],[2.16972,44.77748],[2.16556,44.77152],[2.15413,44.77196],[2.14846,44.76655],[2.15574,44.74245],[2.15057,44.74073],[2.14905,44.72214],[2.13123,44.70885],[2.12995,44.69867],[2.13828,44.6936],[2.15303,44.70001],[2.15953,44.69741],[2.17915,44.67445],[2.16184,44.6634],[2.17404,44.65365],[2.16873,44.63861],[2.19377,44.62802],[2.21096,44.60492],[2.19397,44.60004],[2.20179,44.59605],[2.19442,44.58537],[2.18695,44.59085],[2.18058,44.58783],[2.17855,44.59435],[2.16811,44.59078],[2.14846,44.57058],[2.13253,44.56948],[2.12495,44.57941],[2.10527,44.57123],[2.08129,44.58701],[2.0679,44.56692],[2.06068,44.56538],[2.05938,44.57122],[2.06767,44.57565],[2.05737,44.58291],[2.03502,44.57107],[2.02886,44.55822],[2.00174,44.55653],[1.98662,44.55],[1.96044,44.52],[1.93662,44.51515],[1.92965,44.50545],[1.91299,44.50516],[1.92113,44.49151],[1.91645,44.48632],[1.90809,44.48818],[1.90503,44.50135],[1.89029,44.50589],[1.88442,44.48471],[1.86158,44.48732],[1.84213,44.48202],[1.8396,44.4759],[1.85321,44.46303],[1.84618,44.44734],[1.84986,44.4357],[1.87319,44.42414],[1.87584,44.40727],[1.86725,44.39761],[1.89118,44.37989],[1.89306,44.37098],[1.90874,44.36421],[1.90891,44.35007],[1.89189,44.35297],[1.88208,44.34007],[1.85272,44.33167],[1.84723,44.33781],[1.83333,44.33559],[1.82647,44.32359],[1.81075,44.32851],[1.80598,44.33664],[1.7944,44.33482],[1.79039,44.32577],[1.78335,44.32794],[1.78887,44.32256],[1.78374,44.31552],[1.77612,44.31759],[1.77449,44.31192],[1.75536,44.32582],[1.73735,44.32698],[1.73656,44.31806],[1.71049,44.31153],[1.6995,44.31381],[1.6706,44.2978],[1.66924,44.28996],[1.66338,44.29349],[1.65949,44.28326],[1.65237,44.29622],[1.63387,44.29885],[1.63199,44.29389],[1.6522,44.28509],[1.64252,44.27109],[1.63399,44.26856],[1.6143,44.28049],[1.61665,44.29766],[1.60069,44.29567],[1.59501,44.30342],[1.58724,44.29878],[1.57073,44.3015],[1.57835,44.28392],[1.56076,44.27947],[1.57708,44.27022],[1.58725,44.24901],[1.5752,44.2419],[1.57473,44.23394],[1.55528,44.2338],[1.54139,44.2274],[1.51824,44.24952],[1.52631,44.26024],[1.50926,44.27378],[1.48454,44.27255],[1.48684,44.27774],[1.47192,44.28685],[1.46453,44.26901],[1.45318,44.26736],[1.45356,44.25412],[1.44075,44.25277],[1.42875,44.24228],[1.38126,44.22551],[1.35758,44.20334],[1.33583,44.22859],[1.32947,44.23055],[1.32593,44.22544],[1.31792,44.23296],[1.30688,44.22698],[1.28236,44.23639],[1.28439,44.25252],[1.30502,44.26202],[1.30402,44.26931],[1.29343,44.27268],[1.30181,44.28031],[1.30314,44.29427],[1.28314,44.29067],[1.27098,44.28106],[1.25469,44.28447],[1.24701,44.26607],[1.23874,44.27603],[1.22056,44.2804],[1.21409,44.26819],[1.20462,44.28209],[1.19713,44.28025],[1.1798,44.28913],[1.17899,44.31055],[1.16784,44.30287],[1.16296,44.30993],[1.15141,44.30739],[1.13599,44.31722],[1.12241,44.31568],[1.1104,44.32311],[1.11549,44.33829],[1.08122,44.35438],[1.09169,44.36036],[1.08858,44.37111],[1.10459,44.36446],[1.10743,44.37011],[1.13301,44.37128],[1.13183,44.38869],[1.13704,44.39235],[1.10351,44.39231],[1.08484,44.3817],[1.06408,44.37851],[1.06035,44.39106],[1.05143,44.39209],[1.06131,44.40188],[1.05749,44.42767],[1.04528,44.43433],[1.0282,44.434],[1.03238,44.44133],[1.02104,44.44535],[1.02401,44.47307],[1.00903,44.48004],[1.01699,44.48905],[1.01162,44.49565],[1.01623,44.50587],[0.98152,44.54444],[0.99504,44.54973],[1.00888,44.54711],[1.01297,44.53626],[1.04524,44.56237],[1.0697,44.56611],[1.07439,44.57728],[1.08769,44.57076],[1.10321,44.57173],[1.10253,44.58644],[1.09459,44.59234],[1.15333,44.63774],[1.14673,44.6708],[1.17847,44.68264],[1.22455,44.68427],[1.23008,44.69142],[1.24193,44.69288],[1.24871,44.70807],[1.26342,44.71055],[1.27078,44.72273],[1.28778,44.71478],[1.29856,44.72591],[1.30019,44.74428],[1.31605,44.74037],[1.32282,44.76504],[1.29846,44.77424],[1.30473,44.78454],[1.30465,44.78909],[1.29331,44.78984],[1.29827,44.79619],[1.32551,44.80601],[1.3641,44.81157],[1.35995,44.83425],[1.36595,44.84579],[1.37105,44.8474],[1.37714,44.84183],[1.38731,44.85104],[1.40249,44.85008],[1.41132,44.87229],[1.43109,44.87129],[1.44192,44.87758],[1.43986,44.88895],[1.42312,44.89539],[1.42142,44.90626],[1.41225,44.90979],[1.42532,44.91997],[1.44235,44.91655],[1.4347,44.94452],[1.41663,44.96062],[1.42164,44.96858],[1.41259,44.97238],[1.41762,44.98295],[1.41179,44.98663],[1.40927,45.006],[1.44438,45.01409],[1.44826,45.01931]]]}},{"type":"Feature","properties":{"code":"47","nom":"Lot-et-Garonne"},"geometry":{"type":"Polygon","coordinates":[[[0.29733,44.76228],[0.32008,44.75094],[0.34804,44.7196],[0.34054,44.70305],[0.3597,44.69033],[0.34891,44.6702],[0.35372,44.65443],[0.36558,44.66221],[0.3754,44.65282],[0.38536,44.657],[0.41517,44.64589],[0.44567,44.65239],[0.47053,44.66958],[0.49056,44.66679],[0.51554,44.67857],[0.52823,44.67846],[0.54618,44.66465],[0.5673,44.67155],[0.57471,44.69115],[0.58501,44.69901],[0.62002,44.6913],[0.62201,44.701],[0.63087,44.70609],[0.64774,44.70313],[0.65449,44.69671],[0.65743,44.67785],[0.68369,44.67522],[0.72995,44.67613],[0.7467,44.68239],[0.76307,44.67857],[0.76249,44.6886],[0.78756,44.68543],[0.78689,44.69365],[0.79773,44.70177],[0.81612,44.69531],[0.81795,44.69848],[0.827,44.69189],[0.83155,44.68426],[0.82679,44.67344],[0.85244,44.66898],[0.8423,44.66622],[0.84404,44.65441],[0.83506,44.65329],[0.83804,44.6353],[0.817,44.627],[0.82929,44.61285],[0.83934,44.61374],[0.83391,44.59995],[0.86967,44.59767],[0.87722,44.61581],[0.901,44.61745],[0.93872,44.6397],[0.9496,44.64109],[0.96796,44.63465],[0.97946,44.64388],[1.01361,44.6144],[1.04542,44.60575],[1.05599,44.59768],[1.07298,44.59631],[1.07796,44.58383],[1.0697,44.56611],[1.04524,44.56237],[1.01297,44.53626],[1.00888,44.54711],[0.99504,44.54973],[0.98152,44.54444],[1.01623,44.50587],[1.01162,44.49565],[1.01699,44.48905],[1.00903,44.48004],[1.02401,44.47307],[1.02104,44.44535],[1.03238,44.44133],[1.0282,44.434],[1.04528,44.43433],[1.05749,44.42767],[1.06131,44.40188],[1.05143,44.39209],[1.06035,44.39106],[1.06448,44.38054],[1.06065,44.3656],[1.01929,44.36333],[0.99671,44.36914],[0.9773,44.35618],[0.97517,44.36152],[0.95151,44.36158],[0.9418,44.35319],[0.94238,44.3446],[0.93714,44.36943],[0.91985,44.38442],[0.89638,44.38184],[0.8872,44.36462],[0.89611,44.34623],[0.88924,44.33223],[0.87327,44.32357],[0.86917,44.30989],[0.88472,44.30756],[0.89412,44.29693],[0.91643,44.3022],[0.92582,44.28647],[0.94038,44.28213],[0.94249,44.27471],[0.95079,44.27506],[0.94029,44.26333],[0.92778,44.26741],[0.93263,44.24834],[0.92483,44.24698],[0.91909,44.23827],[0.92924,44.23025],[0.90518,44.19732],[0.90597,44.19012],[0.86174,44.19339],[0.85302,44.18391],[0.85363,44.17478],[0.87099,44.1679],[0.88302,44.17547],[0.88918,44.17199],[0.88482,44.16082],[0.894,44.13789],[0.88269,44.14207],[0.88094,44.12999],[0.86697,44.12635],[0.8189,44.14385],[0.78857,44.14439],[0.79757,44.13038],[0.79299,44.11871],[0.79889,44.11064],[0.77569,44.11582],[0.75683,44.1074],[0.73836,44.07542],[0.73868,44.06102],[0.70792,44.05829],[0.69526,44.04437],[0.68567,44.04617],[0.67709,44.02697],[0.6604,44.02542],[0.65234,44.03312],[0.65408,44.04243],[0.63165,44.0495],[0.62789,44.06063],[0.59376,44.07929],[0.57588,44.07591],[0.56692,44.06033],[0.55547,44.05475],[0.53843,44.05295],[0.51214,44.0633],[0.50594,44.05185],[0.50233,44.05751],[0.48522,44.05791],[0.48406,44.05272],[0.45952,44.05524],[0.44245,44.02876],[0.425,44.02613],[0.41722,44.0295],[0.41119,44.02068],[0.39687,44.02231],[0.38152,44.00638],[0.3581,44.01701],[0.32706,44.00734],[0.31653,44.01012],[0.3177,43.99461],[0.30285,43.99098],[0.25724,44.00784],[0.25344,44.0025],[0.23338,44.00889],[0.23399,44.0216],[0.22471,44.01917],[0.21404,44.02299],[0.20587,44.02102],[0.20281,44.01265],[0.18958,44.01464],[0.18035,44.00055],[0.16676,43.99683],[0.16591,43.98088],[0.15754,43.97284],[0.13864,43.97477],[0.14166,43.99424],[0.12679,44.00191],[0.11682,43.98804],[0.07812,43.98112],[0.0627,44.00084],[0.05992,44.02473],[0.07226,44.02534],[0.07589,44.03001],[0.08728,44.05211],[0.08303,44.06359],[0.09432,44.06561],[0.09856,44.07885],[0.10483,44.07826],[0.10104,44.08727],[0.12361,44.10554],[0.13587,44.10855],[0.1307,44.12166],[0.13511,44.12422],[0.03459,44.13065],[-0.00354,44.1499],[-0.05986,44.15082],[-0.08672,44.1562],[-0.12915,44.15241],[-0.12949,44.20413],[-0.14069,44.2264],[-0.12318,44.24065],[-0.10806,44.23102],[-0.09671,44.23816],[-0.08825,44.23627],[-0.07437,44.25241],[-0.06662,44.24676],[-0.05336,44.26576],[-0.03298,44.27173],[-0.0434,44.29357],[-0.03481,44.29673],[-0.05951,44.32137],[-0.08575,44.33761],[-0.07882,44.3537],[-0.06956,44.35294],[-0.05843,44.36134],[-0.02882,44.36018],[-0.01223,44.37196],[0.01472,44.36661],[0.02296,44.37574],[0.00702,44.38185],[0.01823,44.38988],[-0.00869,44.4123],[-0.00519,44.4179],[-0.0139,44.4187],[-0.00594,44.42399],[-0.00471,44.44194],[0.00753,44.44714],[0.00488,44.45683],[-0.01325,44.46063],[-0.01513,44.50659],[-0.00611,44.51747],[0.0181,44.52978],[-0.00102,44.55177],[0.02098,44.54146],[0.03774,44.55415],[0.07153,44.54949],[0.08618,44.57629],[0.08223,44.58405],[0.11147,44.59019],[0.13545,44.6079],[0.15086,44.60864],[0.15503,44.61516],[0.13926,44.62714],[0.13813,44.63896],[0.14119,44.64131],[0.14983,44.63279],[0.16521,44.63286],[0.16853,44.647],[0.18221,44.65929],[0.17725,44.66734],[0.16217,44.67052],[0.13686,44.66635],[0.12998,44.67292],[0.13373,44.68244],[0.11428,44.68113],[0.10408,44.68562],[0.10034,44.70098],[0.1063,44.70154],[0.10501,44.70755],[0.11805,44.71307],[0.1334,44.70463],[0.13991,44.73644],[0.15081,44.73013],[0.16438,44.73579],[0.17506,44.73373],[0.18417,44.74871],[0.19168,44.74881],[0.20146,44.72315],[0.21914,44.72464],[0.20999,44.74045],[0.22649,44.76439],[0.24032,44.7632],[0.25157,44.75022],[0.28078,44.7533],[0.29733,44.76228]]]}},{"type":"Feature","properties":{"code":"48","nom":"Loz\xE8re"},"geometry":{"type":"Polygon","coordinates":[[[3.36134,44.97141],[3.37257,44.97545],[3.37619,44.96462],[3.37135,44.96025],[3.38907,44.95137],[3.39725,44.95853],[3.40438,44.95703],[3.41519,44.94158],[3.41038,44.91778],[3.41926,44.90843],[3.42045,44.8951],[3.43571,44.88024],[3.4418,44.85423],[3.45885,44.83993],[3.45599,44.82916],[3.4647,44.82794],[3.47824,44.80968],[3.48907,44.807],[3.50565,44.82385],[3.54305,44.82838],[3.56152,44.82488],[3.56022,44.83279],[3.57058,44.83587],[3.57884,44.82542],[3.58892,44.8264],[3.58663,44.83812],[3.5943,44.8411],[3.59042,44.84663],[3.59874,44.85972],[3.59373,44.87657],[3.60828,44.87933],[3.61475,44.87418],[3.63021,44.88093],[3.65364,44.87594],[3.67244,44.85683],[3.67182,44.84339],[3.65742,44.83612],[3.66323,44.82983],[3.69544,44.83096],[3.70013,44.83666],[3.72289,44.83099],[3.73464,44.83301],[3.73498,44.83976],[3.74255,44.83895],[3.76174,44.81373],[3.7612,44.80186],[3.77141,44.80318],[3.77126,44.7972],[3.778,44.79873],[3.79853,44.78609],[3.80927,44.76516],[3.83356,44.77647],[3.84319,44.77022],[3.82982,44.75479],[3.83543,44.74804],[3.85935,44.74539],[3.87752,44.73745],[3.8782,44.73231],[3.86686,44.72842],[3.86151,44.71202],[3.87256,44.70723],[3.86965,44.6971],[3.8843,44.69758],[3.86954,44.67825],[3.87882,44.67393],[3.88288,44.65768],[3.88967,44.65691],[3.89705,44.64548],[3.894,44.6137],[3.9071,44.61059],[3.90517,44.59271],[3.91828,44.58848],[3.91561,44.58289],[3.9243,44.57142],[3.92946,44.56875],[3.94515,44.57379],[3.95472,44.56686],[3.96966,44.52889],[3.9881,44.50419],[3.98585,44.47816],[3.99816,44.4598],[3.97526,44.44293],[3.97304,44.42671],[3.96114,44.41397],[3.94874,44.41257],[3.95106,44.40142],[3.91649,44.40465],[3.90792,44.40262],[3.89981,44.39096],[3.8887,44.39296],[3.88586,44.38827],[3.90725,44.37538],[3.93462,44.3359],[3.95223,44.33154],[3.94272,44.31597],[3.92286,44.30522],[3.93942,44.28698],[3.93372,44.27572],[3.9457,44.26668],[3.9601,44.2708],[3.97477,44.25584],[3.9663,44.24785],[3.95474,44.24958],[3.94617,44.24238],[3.95159,44.21826],[3.93657,44.19492],[3.95988,44.19125],[3.96135,44.17523],[3.96586,44.1707],[3.97657,44.17113],[3.97167,44.16364],[3.92333,44.18233],[3.92727,44.1613],[3.91305,44.16],[3.90952,44.14714],[3.90083,44.14983],[3.88963,44.14494],[3.87553,44.12654],[3.83212,44.13734],[3.797,44.12739],[3.77358,44.14352],[3.76534,44.14116],[3.76039,44.15116],[3.73701,44.15586],[3.72562,44.16424],[3.70625,44.16469],[3.68403,44.18252],[3.66984,44.18638],[3.67151,44.17964],[3.66031,44.17384],[3.64965,44.18085],[3.6371,44.17635],[3.62749,44.15449],[3.65324,44.14596],[3.636,44.14058],[3.63284,44.12122],[3.60317,44.11578],[3.56384,44.12324],[3.54342,44.10928],[3.54074,44.1189],[3.53225,44.122],[3.43973,44.12901],[3.43083,44.148],[3.41143,44.15336],[3.40514,44.16192],[3.39655,44.16123],[3.39562,44.16863],[3.37365,44.17076],[3.3748,44.17926],[3.35741,44.19323],[3.36279,44.2015],[3.33494,44.20409],[3.31799,44.20019],[3.2939,44.20698],[3.28776,44.19959],[3.26715,44.20138],[3.23769,44.18996],[3.20409,44.18973],[3.2247,44.21189],[3.23054,44.23034],[3.19227,44.24076],[3.1893,44.24749],[3.16164,44.24454],[3.15475,44.27182],[3.14649,44.27669],[3.13836,44.26414],[3.12017,44.26184],[3.12349,44.28464],[3.15425,44.30837],[3.14505,44.31815],[3.15426,44.33095],[3.13374,44.33033],[3.12732,44.34703],[3.13198,44.35717],[3.11933,44.3641],[3.12444,44.38017],[3.11784,44.38427],[3.14042,44.39221],[3.13715,44.41091],[3.12672,44.41396],[3.13027,44.42208],[3.1417,44.42635],[3.14345,44.43534],[3.13487,44.44126],[3.13683,44.45624],[3.12464,44.46131],[3.11585,44.47555],[3.09956,44.48043],[3.06884,44.50132],[3.08386,44.56041],[3.07591,44.57297],[3.03218,44.59768],[3.01156,44.62255],[2.98168,44.64468],[2.98176,44.652],[3.01653,44.71437],[3.03913,44.71499],[3.03443,44.72919],[3.02636,44.72893],[3.03108,44.74941],[3.04904,44.76272],[3.04259,44.77221],[3.05172,44.78525],[3.0466,44.80174],[3.06217,44.81898],[3.07698,44.82419],[3.07266,44.83744],[3.09916,44.83291],[3.09324,44.85424],[3.1077,44.86647],[3.10398,44.88656],[3.11509,44.894],[3.12401,44.88989],[3.12838,44.90358],[3.1411,44.90332],[3.16467,44.87381],[3.17353,44.87299],[3.18855,44.86145],[3.19918,44.87464],[3.21571,44.87436],[3.23633,44.88791],[3.22754,44.89612],[3.22643,44.90998],[3.24969,44.91624],[3.24813,44.92983],[3.24173,44.9337],[3.25055,44.93459],[3.24841,44.93951],[3.26663,44.94229],[3.26153,44.93207],[3.28602,44.92638],[3.29914,44.93909],[3.31333,44.93849],[3.33795,44.95591],[3.35453,44.95482],[3.36134,44.97141]]]}},{"type":"Feature","properties":{"code":"49","nom":"Maine-et-Loire"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-1.24588,47.77672],[-1.23618,47.79812],[-1.24264,47.80783],[-1.23825,47.80999],[-1.21364,47.80287],[-1.21139,47.79699],[-1.1969,47.79519],[-1.19319,47.78576],[-1.1713,47.78291],[-1.17099,47.77922],[-1.14381,47.77423],[-1.137,47.77516],[-1.13956,47.78209],[-1.12497,47.78433],[-1.03361,47.77049],[-1.02219,47.77793],[-1.02325,47.77255],[-1.01347,47.76675],[-0.98002,47.76149],[-0.97542,47.76577],[-0.95165,47.76671],[-0.95541,47.77907],[-0.97122,47.78281],[-0.96112,47.79552],[-0.95203,47.7965],[-0.93486,47.78564],[-0.9316,47.79347],[-0.89518,47.77441],[-0.89318,47.76353],[-0.83929,47.75227],[-0.83993,47.76828],[-0.81607,47.77123],[-0.81125,47.76425],[-0.79041,47.76062],[-0.78339,47.75018],[-0.75931,47.75375],[-0.74744,47.73909],[-0.74576,47.74241],[-0.74171,47.73811],[-0.71033,47.7446],[-0.68442,47.73857],[-0.66863,47.74119],[-0.65215,47.7341],[-0.62823,47.73813],[-0.61082,47.73569],[-0.58478,47.75836],[-0.57474,47.75298],[-0.56319,47.75763],[-0.53292,47.75069],[-0.51943,47.76416],[-0.51901,47.78734],[-0.48477,47.78003],[-0.45363,47.75673],[-0.42832,47.76761],[-0.41003,47.76521],[-0.41601,47.78014],[-0.38659,47.76982],[-0.3817,47.76056],[-0.37522,47.76049],[-0.3807,47.75029],[-0.37264,47.74386],[-0.37492,47.73895],[-0.35694,47.73046],[-0.36251,47.71516],[-0.34808,47.71477],[-0.33336,47.72173],[-0.30571,47.71674],[-0.28585,47.71952],[-0.23465,47.70326],[-0.20237,47.72524],[-0.18461,47.71478],[-0.17455,47.71644],[-0.18374,47.71183],[-0.18165,47.70604],[-0.20535,47.69265],[-0.2155,47.69589],[-0.21977,47.68765],[-0.19506,47.66138],[-0.19652,47.64892],[-0.15868,47.64695],[-0.14778,47.63599],[-0.1345,47.63249],[-0.12548,47.63745],[-0.11133,47.63536],[-0.11425,47.64813],[-0.10184,47.66188],[-0.0946,47.66226],[-0.08972,47.65039],[-0.07211,47.65991],[-0.05468,47.64842],[-0.02458,47.64669],[-0.02002,47.63712],[-0.00451,47.64769],[0.00923,47.6364],[0.00596,47.63053],[0.01254,47.62931],[0.00862,47.62613],[0.01373,47.622],[0.03583,47.61866],[0.06033,47.60426],[0.07001,47.60822],[0.09577,47.60332],[0.11569,47.60573],[0.11858,47.59692],[0.13231,47.59655],[0.14571,47.58128],[0.16193,47.59414],[0.18311,47.59683],[0.18583,47.61654],[0.20183,47.61409],[0.20625,47.60342],[0.21129,47.61228],[0.22413,47.61229],[0.23243,47.60579],[0.23434,47.57793],[0.21512,47.57299],[0.20408,47.54814],[0.19334,47.53911],[0.20555,47.53466],[0.20662,47.52641],[0.22606,47.52659],[0.22011,47.50195],[0.19977,47.48341],[0.18094,47.45341],[0.18528,47.42473],[0.18085,47.41615],[0.15386,47.39873],[0.1695,47.39564],[0.16751,47.38562],[0.18339,47.38123],[0.15359,47.36359],[0.14041,47.3618],[0.1473,47.34538],[0.13801,47.33616],[0.11746,47.33234],[0.11303,47.3179],[0.0786,47.28394],[0.09,47.28164],[0.07477,47.26213],[0.07483,47.24805],[0.06793,47.24733],[0.07245,47.21988],[0.07932,47.21677],[0.06819,47.21578],[0.05297,47.19677],[0.06659,47.18979],[0.05383,47.16373],[0.0492,47.16889],[0.03664,47.16035],[0.01901,47.17576],[-0.00441,47.16219],[-0.04098,47.11355],[-0.03941,47.10787],[-0.0266,47.10588],[-0.03562,47.08626],[-0.04155,47.09365],[-0.06724,47.09343],[-0.06738,47.09941],[-0.0859,47.10101],[-0.10141,47.08551],[-0.10212,47.0648],[-0.12297,47.05571],[-0.13717,47.05658],[-0.13665,47.06384],[-0.14732,47.06968],[-0.16598,47.0646],[-0.17902,47.07017],[-0.14556,47.09136],[-0.14126,47.10374],[-0.15212,47.10085],[-0.18524,47.10842],[-0.18707,47.10113],[-0.20627,47.09319],[-0.24074,47.1057],[-0.2627,47.09913],[-0.26288,47.10548],[-0.2815,47.09947],[-0.28274,47.10326],[-0.31425,47.09134],[-0.34146,47.08733],[-0.34088,47.09202],[-0.35347,47.09533],[-0.38614,47.08737],[-0.38693,47.09235],[-0.39592,47.09159],[-0.40685,47.06702],[-0.42585,47.07273],[-0.44082,47.06783],[-0.45799,47.06877],[-0.48038,47.05363],[-0.48554,47.06521],[-0.4643,47.07435],[-0.45956,47.08241],[-0.49445,47.08309],[-0.5573,47.06437],[-0.55573,47.04258],[-0.54253,47.03234],[-0.56226,47.03066],[-0.56547,47.01943],[-0.58396,47.01211],[-0.59395,46.99876],[-0.61881,46.99236],[-0.63303,46.99749],[-0.64696,46.99231],[-0.64786,46.99652],[-0.67058,47.0029],[-0.67619,47.00188],[-0.68019,46.98766],[-0.69847,46.99456],[-0.71588,46.98388],[-0.74337,47.0007],[-0.74286,46.9919],[-0.76195,46.99214],[-0.76934,47.00293],[-0.78758,47.00514],[-0.79625,46.99598],[-0.80948,46.99274],[-0.80845,46.98758],[-0.8115,46.99435],[-0.83625,46.98579],[-0.84428,46.98931],[-0.85682,46.97878],[-0.84916,46.97378],[-0.86076,46.96868],[-0.89196,46.97582],[-0.89727,46.98967],[-0.90409,46.99479],[-0.91512,46.99228],[-0.92053,46.99779],[-0.9148,47.00106],[-0.92074,47.00342],[-0.92506,46.99978],[-0.93256,47.00204],[-0.92925,47.00808],[-0.94554,46.99907],[-0.95127,47.00284],[-0.96087,46.99528],[-0.96858,47.00781],[-0.97513,47.00871],[-0.97633,47.01821],[-0.9816,47.0181],[-0.98192,47.01054],[-1.00226,47.02129],[-1.01492,47.00467],[-1.05472,47.00436],[-1.06672,47.013],[-1.07413,47.00828],[-1.09224,47.0158],[-1.11127,47.01595],[-1.14305,47.02477],[-1.14857,47.02955],[-1.11705,47.04013],[-1.12147,47.05576],[-1.11554,47.0627],[-1.15504,47.07244],[-1.16938,47.09317],[-1.22854,47.10045],[-1.24428,47.09428],[-1.24964,47.09844],[-1.22976,47.10986],[-1.22462,47.11889],[-1.23889,47.13704],[-1.21887,47.14555],[-1.2047,47.14486],[-1.20564,47.1501],[-1.1985,47.14892],[-1.19804,47.15384],[-1.18307,47.15916],[-1.1815,47.16529],[-1.17663,47.16278],[-1.16163,47.17764],[-1.16188,47.18754],[-1.17034,47.18661],[-1.17846,47.19339],[-1.17358,47.19871],[-1.18049,47.20733],[-1.17448,47.2144],[-1.18847,47.22],[-1.18097,47.24081],[-1.19804,47.25294],[-1.20738,47.2532],[-1.22836,47.23971],[-1.2539,47.2477],[-1.27781,47.27087],[-1.27505,47.29067],[-1.29423,47.30038],[-1.29574,47.30601],[-1.31825,47.30125],[-1.32161,47.30582],[-1.33726,47.30033],[-1.3542,47.30415],[-1.29691,47.33862],[-1.18766,47.35236],[-1.16652,47.36632],[-1.10823,47.36578],[-1.07602,47.37083],[-1.01522,47.36505],[-0.99119,47.3729],[-0.97487,47.37138],[-0.94581,47.38702],[-0.95086,47.38926],[-0.95042,47.40688],[-0.96106,47.41815],[-0.96067,47.42279],[-0.94835,47.42273],[-0.94671,47.4276],[-0.95257,47.45147],[-0.96805,47.46994],[-0.95913,47.48122],[-0.96548,47.4918],[-1.00643,47.48815],[-1.02393,47.5002],[-1.04446,47.5055],[-1.03861,47.54726],[-1.05037,47.54719],[-1.06049,47.55603],[-1.05238,47.55794],[-1.05564,47.56527],[-1.04185,47.56233],[-1.04104,47.56988],[-1.01912,47.57669],[-1.00684,47.58874],[-1.01039,47.59319],[-1.03685,47.60246],[-1.05855,47.60138],[-1.07799,47.60657],[-1.10065,47.62068],[-1.1382,47.61946],[-1.15741,47.63522],[-1.16075,47.6616],[-1.17402,47.65975],[-1.17039,47.66314],[-1.18081,47.66476],[-1.17493,47.69457],[-1.1895,47.69916],[-1.18159,47.7035],[-1.19622,47.7099],[-1.19512,47.72155],[-1.21542,47.71882],[-1.25543,47.73141],[-1.25572,47.74256],[-1.24172,47.74286],[-1.23466,47.75487],[-1.24964,47.76422],[-1.24588,47.77672]]]]}},{"type":"Feature","properties":{"code":"50","nom":"Manche"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-1.24053,49.58545],[-1.24911,49.59037],[-1.24274,49.59128],[-1.24053,49.58545]]],[[[-1.82137,48.86824],[-1.83262,48.86901],[-1.83869,48.87783],[-1.82137,48.86824]]],[[[-1.11962,49.35557],[-1.11331,49.32669],[-1.14071,49.30601],[-1.13468,49.2868],[-1.12057,49.27907],[-1.12395,49.27433],[-1.13369,49.27858],[-1.13592,49.27032],[-1.12703,49.26726],[-1.12646,49.27175],[-1.10413,49.25237],[-1.09641,49.25428],[-1.09505,49.24563],[-1.08822,49.24615],[-1.07816,49.23389],[-1.06086,49.22522],[-1.05035,49.22799],[-1.04838,49.22041],[-1.03743,49.22226],[-1.02267,49.20339],[-1.00803,49.20418],[-0.97352,49.19145],[-0.9544,49.20023],[-0.94179,49.21197],[-0.94666,49.2152],[-0.93312,49.21589],[-0.926,49.232],[-0.90087,49.20297],[-0.88943,49.20441],[-0.88726,49.20146],[-0.91591,49.18949],[-0.90608,49.18383],[-0.91613,49.1844],[-0.91418,49.17874],[-0.92135,49.17822],[-0.92591,49.16405],[-0.93705,49.16144],[-0.94993,49.16773],[-0.95878,49.16139],[-0.93133,49.15787],[-0.94086,49.15246],[-0.93303,49.14612],[-0.90794,49.13913],[-0.90569,49.13286],[-0.88659,49.12943],[-0.89145,49.12172],[-0.91341,49.11485],[-0.92465,49.10238],[-0.89135,49.11935],[-0.88566,49.11511],[-0.87846,49.1171],[-0.88058,49.09071],[-0.87051,49.08028],[-0.86909,49.0679],[-0.8918,49.04555],[-0.88452,49.03871],[-0.86968,49.03917],[-0.86087,49.03083],[-0.86256,49.02641],[-0.88666,49.02209],[-0.89805,49.00977],[-0.90511,49.0114],[-0.91099,48.99354],[-0.94241,48.96799],[-0.98877,48.95193],[-0.99305,48.94154],[-1.00529,48.93538],[-1.01153,48.941],[-1.03211,48.93811],[-1.06587,48.92027],[-1.01978,48.92739],[-1.01341,48.9152],[-1.02851,48.90117],[-1.04919,48.89403],[-1.07042,48.87018],[-1.07777,48.86779],[-1.09054,48.87903],[-1.09852,48.87609],[-1.09928,48.86827],[-1.12172,48.85531],[-1.12116,48.84822],[-1.13149,48.84949],[-1.14169,48.83755],[-1.15708,48.83637],[-1.15949,48.82612],[-1.1023,48.81426],[-1.09116,48.79308],[-1.10116,48.78972],[-1.08254,48.77777],[-1.05873,48.77335],[-1.04505,48.78316],[-1.01268,48.77178],[-1.00652,48.77737],[-0.99144,48.77812],[-0.97101,48.77283],[-0.96705,48.78608],[-0.95105,48.78924],[-0.93629,48.77517],[-0.89393,48.76743],[-0.88264,48.75618],[-0.87084,48.75575],[-0.82126,48.77122],[-0.82129,48.7664],[-0.85209,48.74575],[-0.85088,48.73219],[-0.83492,48.72733],[-0.82846,48.73358],[-0.81775,48.73109],[-0.79035,48.70407],[-0.73474,48.68552],[-0.73627,48.6795],[-0.74329,48.68093],[-0.75492,48.67457],[-0.75999,48.66428],[-0.77336,48.65748],[-0.76208,48.63101],[-0.74221,48.62727],[-0.73874,48.62259],[-0.75349,48.62075],[-0.75174,48.60132],[-0.76962,48.58994],[-0.77417,48.56268],[-0.79016,48.5517],[-0.8059,48.55077],[-0.8697,48.49818],[-0.90915,48.4967],[-0.92271,48.50332],[-0.92331,48.51345],[-0.9554,48.51729],[-0.97225,48.4946],[-1.004,48.48917],[-1.06044,48.51494],[-1.07277,48.50796],[-1.10373,48.51301],[-1.11632,48.52154],[-1.14708,48.5175],[-1.16991,48.5311],[-1.19286,48.52891],[-1.20689,48.54219],[-1.2175,48.53691],[-1.23871,48.53782],[-1.24901,48.54366],[-1.27225,48.53392],[-1.26957,48.52406],[-1.27976,48.50861],[-1.28763,48.50953],[-1.30068,48.49899],[-1.32751,48.49812],[-1.32894,48.48632],[-1.33936,48.49094],[-1.34939,48.4817],[-1.34469,48.47307],[-1.35393,48.46783],[-1.36505,48.46643],[-1.37987,48.45608],[-1.39762,48.46198],[-1.42291,48.46073],[-1.44035,48.47114],[-1.43514,48.47743],[-1.45026,48.4876],[-1.47319,48.48539],[-1.48995,48.48937],[-1.4952,48.50689],[-1.51778,48.52984],[-1.5159,48.53792],[-1.53449,48.55031],[-1.52629,48.55656],[-1.52666,48.56574],[-1.51892,48.56659],[-1.52775,48.57907],[-1.54299,48.58044],[-1.53722,48.59875],[-1.56607,48.61428],[-1.57109,48.62645],[-1.52813,48.62948],[-1.51865,48.62724],[-1.51274,48.61312],[-1.51094,48.61877],[-1.44869,48.62348],[-1.42553,48.63793],[-1.42493,48.64358],[-1.42088,48.63926],[-1.39104,48.64465],[-1.38394,48.64038],[-1.37404,48.64237],[-1.35175,48.63122],[-1.36384,48.64671],[-1.3932,48.65052],[-1.39961,48.65553],[-1.39842,48.66409],[-1.37418,48.68829],[-1.37881,48.69016],[-1.37683,48.68631],[-1.40119,48.67398],[-1.43243,48.66639],[-1.44577,48.65477],[-1.44929,48.67],[-1.48583,48.68639],[-1.49696,48.68367],[-1.50494,48.6874],[-1.52928,48.73012],[-1.55272,48.73243],[-1.57101,48.74422],[-1.56782,48.80264],[-1.57444,48.82168],[-1.59401,48.83474],[-1.61443,48.83422],[-1.58484,48.84893],[-1.56434,48.92158],[-1.55324,48.93421],[-1.56063,48.91333],[-1.55452,48.89391],[-1.54993,48.89636],[-1.54342,48.93103],[-1.54954,48.94019],[-1.56095,48.93912],[-1.56251,48.94528],[-1.55941,49.00212],[-1.55224,48.98602],[-1.54826,48.9902],[-1.55681,49.02665],[-1.53452,49.03406],[-1.50553,49.02037],[-1.50854,49.02658],[-1.54256,49.04132],[-1.56013,49.03671],[-1.57703,49.02001],[-1.57623,49.00041],[-1.58592,49.00783],[-1.59888,49.03737],[-1.59654,49.06739],[-1.60187,49.06981],[-1.59732,49.07294],[-1.60894,49.08277],[-1.60988,49.07391],[-1.60883,49.1056],[-1.59475,49.13193],[-1.58107,49.13167],[-1.59583,49.14283],[-1.60535,49.20558],[-1.61363,49.21876],[-1.56856,49.22164],[-1.58637,49.23388],[-1.60892,49.23207],[-1.61469,49.23795],[-1.62582,49.22329],[-1.62552,49.21006],[-1.64738,49.22989],[-1.67839,49.28207],[-1.67676,49.2851],[-1.67465,49.28013],[-1.65995,49.2788],[-1.65736,49.28182],[-1.6853,49.2885],[-1.71117,49.3251],[-1.6746,49.33201],[-1.69239,49.32981],[-1.69965,49.33415],[-1.71942,49.32498],[-1.76472,49.36356],[-1.7871,49.37459],[-1.75692,49.36819],[-1.75865,49.37336],[-1.76992,49.37516],[-1.77155,49.38002],[-1.78728,49.37589],[-1.78947,49.36923],[-1.80916,49.3721],[-1.82366,49.40147],[-1.82677,49.45292],[-1.83967,49.47155],[-1.84775,49.47373],[-1.84817,49.50375],[-1.85195,49.51001],[-1.8756,49.51496],[-1.88661,49.52635],[-1.88529,49.5414],[-1.85792,49.55139],[-1.839,49.5764],[-1.84584,49.62154],[-1.8603,49.65019],[-1.87235,49.65732],[-1.94689,49.67454],[-1.93589,49.6899],[-1.94695,49.70441],[-1.94219,49.7261],[-1.9062,49.72211],[-1.88291,49.70571],[-1.85179,49.7184],[-1.82286,49.69031],[-1.76064,49.67825],[-1.71781,49.67985],[-1.7009,49.66994],[-1.68748,49.67393],[-1.67771,49.6699],[-1.68314,49.66498],[-1.67242,49.65765],[-1.61545,49.65818],[-1.62937,49.65968],[-1.63124,49.65367],[-1.62346,49.64452],[-1.61657,49.64894],[-1.61516,49.64346],[-1.61337,49.64883],[-1.60275,49.6465],[-1.60576,49.65852],[-1.5999,49.66073],[-1.58669,49.65099],[-1.56846,49.65693],[-1.54182,49.65404],[-1.50906,49.6608],[-1.49248,49.67035],[-1.48693,49.66852],[-1.48487,49.67776],[-1.47264,49.6864],[-1.47826,49.6899],[-1.47326,49.69701],[-1.45511,49.69121],[-1.43655,49.70168],[-1.37099,49.7073],[-1.2897,49.6923],[-1.2662,49.69542],[-1.2721,49.67944],[-1.23913,49.65364],[-1.24324,49.6482],[-1.22795,49.62302],[-1.22866,49.60607],[-1.25429,49.61266],[-1.27212,49.57069],[-1.27617,49.57314],[-1.26975,49.58383],[-1.28517,49.58716],[-1.29623,49.58317],[-1.30669,49.56655],[-1.30636,49.53893],[-1.25271,49.4806],[-1.17115,49.41252],[-1.16173,49.39175],[-1.16629,49.38315],[-1.17935,49.37753],[-1.17754,49.36489],[-1.16395,49.36666],[-1.13605,49.35404],[-1.11962,49.35557]]]]}},{"type":"Feature","properties":{"code":"51","nom":"Marne"},"geometry":{"type":"Polygon","coordinates":[[[4.04797,49.40564],[4.07691,49.40161],[4.19143,49.40104],[4.20131,49.38378],[4.21367,49.38787],[4.24832,49.38226],[4.2584,49.36352],[4.27714,49.35146],[4.29405,49.35266],[4.28799,49.34916],[4.3083,49.32665],[4.33751,49.32596],[4.34617,49.32225],[4.34384,49.31398],[4.37562,49.32381],[4.39617,49.29218],[4.41669,49.28781],[4.42258,49.28064],[4.43954,49.2801],[4.44722,49.27254],[4.48384,49.28078],[4.51605,49.28017],[4.55708,49.29532],[4.57587,49.29665],[4.58369,49.2909],[4.59792,49.29145],[4.58988,49.28096],[4.59214,49.27345],[4.60801,49.26933],[4.61865,49.23864],[4.63426,49.2318],[4.6705,49.24124],[4.68893,49.25747],[4.70381,49.2554],[4.7038,49.25091],[4.72701,49.25353],[4.74423,49.24147],[4.77313,49.2451],[4.79072,49.24108],[4.81542,49.24985],[4.81713,49.24146],[4.82985,49.24307],[4.82582,49.23672],[4.83081,49.23337],[4.83675,49.2355],[4.86646,49.22657],[4.86185,49.23986],[4.88305,49.25652],[4.87738,49.26268],[4.89276,49.25812],[4.92398,49.26654],[4.91692,49.26041],[4.93427,49.25957],[4.92158,49.25211],[4.94588,49.24378],[4.95099,49.23687],[4.97076,49.23606],[4.97802,49.21893],[4.99339,49.20985],[4.93976,49.18507],[4.99662,49.10661],[5.00574,49.05987],[4.96543,49.02144],[5.01022,49.03512],[5.03652,49.02383],[5.03458,48.99347],[5.00467,48.99301],[4.9938,48.98416],[5.00465,48.98364],[5.00766,48.97884],[5.02828,48.97957],[5.03945,48.97387],[5.03087,48.95419],[5.01413,48.94559],[5.01411,48.93735],[5.00029,48.93826],[4.95927,48.92589],[4.95067,48.93089],[4.93621,48.92214],[4.93352,48.91262],[4.91882,48.90557],[4.91244,48.89816],[4.9247,48.89136],[4.91166,48.86871],[4.92525,48.86404],[4.92139,48.86062],[4.93037,48.856],[4.92801,48.85003],[4.93738,48.84811],[4.93703,48.84254],[4.91462,48.83512],[4.88887,48.81685],[4.89685,48.80884],[4.88858,48.80061],[4.92075,48.79057],[4.93313,48.79137],[4.95025,48.76881],[4.97226,48.75759],[4.98136,48.74564],[5.00922,48.74139],[5.00459,48.71972],[5.016,48.70952],[4.99726,48.7096],[5.00641,48.69907],[4.99088,48.69322],[4.98843,48.68442],[4.97633,48.68925],[4.95487,48.68458],[4.95149,48.6887],[4.93868,48.67477],[4.91127,48.68871],[4.86778,48.6672],[4.82102,48.67493],[4.81708,48.68041],[4.79833,48.6775],[4.79548,48.66937],[4.78167,48.6702],[4.77188,48.65188],[4.80756,48.65431],[4.84196,48.64967],[4.83906,48.64583],[4.85364,48.6348],[4.84828,48.62791],[4.85118,48.61551],[4.85798,48.61433],[4.82966,48.61248],[4.79678,48.59529],[4.78478,48.59947],[4.77544,48.59278],[4.76428,48.59482],[4.77602,48.56596],[4.79633,48.56804],[4.78278,48.55416],[4.79918,48.52978],[4.71801,48.54199],[4.70728,48.53709],[4.67493,48.53762],[4.67018,48.53189],[4.66647,48.53785],[4.63774,48.54186],[4.63492,48.5515],[4.64234,48.55224],[4.63062,48.55472],[4.56831,48.54819],[4.54883,48.53661],[4.54541,48.52525],[4.52563,48.52815],[4.52854,48.54042],[4.52121,48.53988],[4.52197,48.54505],[4.51104,48.54782],[4.49393,48.53875],[4.4092,48.55877],[4.34958,48.59766],[4.33063,48.60196],[4.31492,48.61622],[4.33438,48.63248],[4.31733,48.65166],[4.32839,48.65629],[4.32282,48.66385],[4.33425,48.67524],[4.32289,48.68366],[4.32559,48.70028],[4.29938,48.71459],[4.26405,48.70605],[4.24311,48.71667],[4.23304,48.70231],[4.16526,48.70763],[4.13109,48.68615],[4.07979,48.70112],[4.06496,48.68699],[4.06282,48.68208],[4.06904,48.67915],[4.0582,48.66627],[4.05346,48.66851],[4.04705,48.66199],[4.03005,48.65914],[4.0017,48.66388],[3.98471,48.65338],[3.97867,48.62639],[3.97014,48.62691],[3.96845,48.63167],[3.94924,48.60343],[3.92084,48.60643],[3.90842,48.60175],[3.90005,48.57484],[3.87165,48.58121],[3.85386,48.58023],[3.85512,48.57279],[3.86496,48.56817],[3.85861,48.55818],[3.86558,48.53793],[3.8514,48.52338],[3.8259,48.51517],[3.79804,48.52911],[3.7661,48.52808],[3.73842,48.53832],[3.70419,48.53348],[3.68801,48.53996],[3.66161,48.53472],[3.65061,48.53924],[3.64364,48.53626],[3.64402,48.54066],[3.63355,48.54178],[3.62873,48.56229],[3.63344,48.56862],[3.62627,48.57765],[3.62121,48.58025],[3.60424,48.57245],[3.5927,48.58763],[3.58259,48.58546],[3.57989,48.60486],[3.56259,48.60262],[3.56322,48.61322],[3.55482,48.62201],[3.53798,48.63162],[3.51907,48.63347],[3.51738,48.63719],[3.53324,48.64651],[3.5175,48.64337],[3.49288,48.64762],[3.47657,48.63733],[3.45109,48.63465],[3.46043,48.65301],[3.44061,48.66365],[3.44755,48.67725],[3.47168,48.68567],[3.47256,48.69786],[3.47778,48.69792],[3.4643,48.70738],[3.46973,48.73787],[3.44407,48.73663],[3.42852,48.75839],[3.42335,48.75393],[3.39911,48.755],[3.39583,48.75925],[3.40892,48.7839],[3.4241,48.78412],[3.42945,48.77943],[3.43817,48.78511],[3.44186,48.78241],[3.44395,48.79139],[3.44212,48.80358],[3.42304,48.80075],[3.40417,48.80927],[3.41661,48.81783],[3.44815,48.81115],[3.47038,48.82089],[3.48092,48.81218],[3.4872,48.81519],[3.49131,48.83467],[3.48183,48.86594],[3.50191,48.87192],[3.50832,48.8904],[3.52858,48.91214],[3.56002,48.91702],[3.56418,48.9113],[3.57075,48.91492],[3.57645,48.92325],[3.57444,48.93902],[3.60255,48.94393],[3.60163,48.95348],[3.59156,48.96037],[3.60093,48.96634],[3.62121,48.96603],[3.62334,48.98268],[3.63989,49.00409],[3.66026,49.00426],[3.67772,49.01397],[3.66354,49.03731],[3.65008,49.04282],[3.64261,49.03701],[3.63133,49.03971],[3.61571,49.03363],[3.58761,49.03381],[3.5852,49.03887],[3.58771,49.05939],[3.59994,49.062],[3.60906,49.0731],[3.6238,49.07087],[3.63847,49.07744],[3.6118,49.11809],[3.60309,49.11467],[3.60002,49.12069],[3.61166,49.12874],[3.60964,49.13501],[3.62057,49.13925],[3.62225,49.1511],[3.65344,49.14869],[3.68726,49.15418],[3.70274,49.14145],[3.74877,49.15708],[3.75115,49.1777],[3.73011,49.17832],[3.72544,49.17352],[3.71123,49.17819],[3.70439,49.18137],[3.70685,49.18593],[3.69731,49.18843],[3.69694,49.19455],[3.70487,49.19859],[3.69861,49.2055],[3.68158,49.19747],[3.67611,49.20095],[3.68179,49.20534],[3.65283,49.21543],[3.65148,49.22156],[3.66357,49.22187],[3.66998,49.23286],[3.67815,49.23533],[3.66861,49.24089],[3.66069,49.26008],[3.65387,49.25423],[3.66149,49.26996],[3.6516,49.27836],[3.65899,49.28682],[3.63834,49.30136],[3.64394,49.31272],[3.66916,49.32475],[3.74222,49.33651],[3.74109,49.34759],[3.75782,49.34761],[3.77753,49.35582],[3.77969,49.35193],[3.80223,49.35891],[3.82406,49.35735],[3.85284,49.34497],[3.85874,49.35412],[3.84789,49.36457],[3.8561,49.36424],[3.85985,49.38615],[3.83961,49.39101],[3.82238,49.40238],[3.88118,49.40529],[3.89574,49.39278],[3.91033,49.39483],[3.91472,49.40353],[3.92523,49.40758],[3.96131,49.37734],[3.99494,49.3779],[4.01273,49.3583],[4.0355,49.3599],[4.03991,49.3974],[4.04797,49.40564]]]}},{"type":"Feature","properties":{"code":"52","nom":"Haute-Marne"},"geometry":{"type":"Polygon","coordinates":[[[4.67018,48.53189],[4.67493,48.53762],[4.70728,48.53709],[4.71801,48.54199],[4.79918,48.52978],[4.78278,48.55416],[4.79633,48.56804],[4.77602,48.56596],[4.76428,48.59482],[4.77544,48.59278],[4.78478,48.59947],[4.79678,48.59529],[4.82966,48.61248],[4.85798,48.61433],[4.85118,48.61551],[4.84828,48.62791],[4.85364,48.6348],[4.83906,48.64583],[4.84196,48.64967],[4.80756,48.65431],[4.77188,48.65188],[4.78167,48.6702],[4.79548,48.66937],[4.79833,48.6775],[4.81708,48.68041],[4.82102,48.67493],[4.86778,48.6672],[4.91127,48.68871],[4.93868,48.67477],[4.95149,48.6887],[4.95487,48.68458],[4.97633,48.68925],[5.00905,48.67855],[5.01105,48.66783],[4.99281,48.65827],[5.00616,48.63348],[4.99467,48.62183],[5.0007,48.61373],[5.01414,48.61021],[5.03292,48.61356],[5.05204,48.6333],[5.05667,48.63233],[5.0596,48.61247],[5.07089,48.59573],[5.11945,48.59572],[5.11791,48.58495],[5.14629,48.56028],[5.16716,48.56502],[5.17311,48.55631],[5.19683,48.54668],[5.19509,48.53772],[5.20843,48.53861],[5.21225,48.52879],[5.22195,48.52648],[5.22735,48.53196],[5.27111,48.51355],[5.28619,48.51547],[5.29621,48.50841],[5.30562,48.51591],[5.31698,48.50836],[5.32755,48.50938],[5.32846,48.50297],[5.358,48.47757],[5.38137,48.47114],[5.3977,48.47381],[5.40605,48.46539],[5.4032,48.45408],[5.40911,48.44466],[5.43335,48.43198],[5.43869,48.4353],[5.45077,48.42268],[5.46834,48.42377],[5.45928,48.41624],[5.4466,48.41532],[5.41965,48.395],[5.39391,48.39165],[5.40742,48.38273],[5.44288,48.37939],[5.41855,48.36069],[5.42273,48.35158],[5.41697,48.3427],[5.4268,48.33122],[5.44542,48.33755],[5.46175,48.35214],[5.46909,48.34904],[5.48096,48.35641],[5.52653,48.34686],[5.52461,48.33355],[5.53733,48.31833],[5.58888,48.27559],[5.61165,48.29182],[5.64332,48.27504],[5.65381,48.26852],[5.64153,48.24175],[5.67742,48.22898],[5.68779,48.23418],[5.71824,48.2145],[5.73006,48.19832],[5.73098,48.1897],[5.70182,48.19044],[5.67964,48.17929],[5.68684,48.16653],[5.6851,48.14666],[5.67687,48.14512],[5.67714,48.1367],[5.65737,48.12165],[5.67212,48.10944],[5.64939,48.10505],[5.63744,48.09764],[5.63877,48.08878],[5.63388,48.09022],[5.62901,48.08442],[5.65592,48.06913],[5.66128,48.07199],[5.65281,48.08037],[5.65753,48.08621],[5.67332,48.07876],[5.67507,48.0819],[5.68843,48.0754],[5.6968,48.07723],[5.69875,48.06679],[5.70893,48.06536],[5.72128,48.05272],[5.72054,48.04424],[5.74004,48.05011],[5.76441,48.03477],[5.7645,48.02991],[5.77695,48.03351],[5.77642,48.02241],[5.79467,47.99801],[5.79316,47.98707],[5.77849,47.97801],[5.78728,47.9526],[5.80527,47.94697],[5.81772,47.95799],[5.83158,47.95776],[5.84584,47.9757],[5.84663,47.96951],[5.85356,47.96988],[5.84959,47.96059],[5.85753,47.94506],[5.86864,47.94499],[5.88475,47.92951],[5.8834,47.92145],[5.88957,47.92059],[5.89086,47.91083],[5.88278,47.90004],[5.84839,47.90433],[5.83863,47.88539],[5.8207,47.8691],[5.82806,47.85803],[5.81785,47.85325],[5.82967,47.85623],[5.82798,47.85187],[5.79608,47.84675],[5.79888,47.8557],[5.76732,47.85565],[5.76119,47.85933],[5.7442,47.84885],[5.74563,47.8295],[5.75108,47.82903],[5.74076,47.8192],[5.70108,47.82364],[5.68989,47.8191],[5.68153,47.80911],[5.67661,47.77916],[5.67997,47.76997],[5.70753,47.76755],[5.70958,47.7453],[5.69039,47.73515],[5.69522,47.726],[5.68342,47.71671],[5.69353,47.70481],[5.69106,47.68463],[5.66348,47.68493],[5.64796,47.67533],[5.60123,47.67525],[5.59668,47.67169],[5.58509,47.70015],[5.56739,47.70712],[5.52978,47.67283],[5.51203,47.67358],[5.48277,47.68463],[5.47027,47.67503],[5.4475,47.67083],[5.42018,47.67767],[5.40634,47.6734],[5.39905,47.65325],[5.40575,47.64687],[5.38582,47.63511],[5.3726,47.61839],[5.37408,47.60454],[5.36704,47.60472],[5.35929,47.59372],[5.34211,47.59466],[5.34547,47.60474],[5.32234,47.61236],[5.31455,47.60621],[5.29821,47.60434],[5.27783,47.58978],[5.2779,47.58136],[5.25663,47.57668],[5.23802,47.59654],[5.2586,47.62221],[5.23694,47.61678],[5.23024,47.62954],[5.21141,47.64189],[5.1736,47.65257],[5.17834,47.68095],[5.16186,47.6805],[5.15496,47.66721],[5.13533,47.65373],[5.13857,47.65086],[5.12537,47.64677],[5.11686,47.65202],[5.10888,47.64968],[5.10396,47.65885],[5.08612,47.65662],[5.06916,47.66858],[5.06738,47.66502],[5.0535,47.66827],[5.04359,47.67652],[5.06065,47.69479],[5.02877,47.69328],[5.03393,47.70162],[5.02915,47.70992],[5.00465,47.70122],[4.99675,47.68997],[4.96909,47.68583],[4.97198,47.69157],[4.95414,47.70146],[4.97166,47.72941],[4.97003,47.73553],[4.9568,47.73245],[4.96615,47.74056],[4.95899,47.76187],[4.94741,47.76659],[4.92268,47.75895],[4.9267,47.76484],[4.91714,47.7669],[4.9238,47.77342],[4.91796,47.77709],[4.98226,47.80009],[4.99413,47.81975],[4.96043,47.8394],[4.9634,47.85221],[4.95409,47.86677],[4.92746,47.87155],[4.92858,47.88623],[4.90291,47.92104],[4.86934,47.91745],[4.86043,47.89631],[4.83404,47.90679],[4.83122,47.91787],[4.84677,47.92131],[4.84639,47.9274],[4.8661,47.94051],[4.85774,47.95207],[4.84518,47.96125],[4.81982,47.96449],[4.81101,47.95933],[4.78651,47.9642],[4.79497,47.98446],[4.80919,47.99009],[4.79325,47.99654],[4.78908,48.00783],[4.7493,48.00425],[4.71994,48.0089],[4.70424,48.02023],[4.71453,48.0212],[4.70504,48.02773],[4.72315,48.04576],[4.71101,48.04992],[4.69048,48.07269],[4.65754,48.07924],[4.70613,48.08951],[4.7041,48.10011],[4.72416,48.10624],[4.73187,48.11944],[4.80427,48.10481],[4.83439,48.10516],[4.8286,48.12908],[4.85237,48.14274],[4.83699,48.15149],[4.83689,48.16786],[4.8506,48.17607],[4.84708,48.17992],[4.86442,48.19921],[4.86161,48.21092],[4.84172,48.21435],[4.83525,48.22106],[4.85387,48.22876],[4.84782,48.23896],[4.83946,48.23748],[4.84811,48.2511],[4.84499,48.2572],[4.85712,48.25999],[4.86162,48.26636],[4.84239,48.28357],[4.85085,48.29625],[4.83754,48.30392],[4.82628,48.30224],[4.82521,48.31234],[4.81422,48.32301],[4.84005,48.34197],[4.83249,48.34623],[4.81555,48.34481],[4.79433,48.35665],[4.77865,48.35618],[4.75458,48.36655],[4.76019,48.38761],[4.74785,48.39215],[4.71715,48.39564],[4.7053,48.39085],[4.70015,48.39595],[4.70836,48.40118],[4.69355,48.4152],[4.68176,48.41761],[4.68953,48.42469],[4.67778,48.43213],[4.67845,48.44053],[4.62935,48.46115],[4.62781,48.46864],[4.65347,48.47055],[4.65814,48.50591],[4.67662,48.51748],[4.67018,48.53189]]]}},{"type":"Feature","properties":{"code":"53","nom":"Mayenne"},"geometry":{"type":"Polygon","coordinates":[[[-1.07016,48.50849],[-1.06044,48.51494],[-1.004,48.48917],[-0.97225,48.4946],[-0.9554,48.51729],[-0.92331,48.51345],[-0.92271,48.50332],[-0.90915,48.4967],[-0.84636,48.49952],[-0.83255,48.47938],[-0.81476,48.47205],[-0.81274,48.45492],[-0.79918,48.45894],[-0.79661,48.46625],[-0.77787,48.46541],[-0.77979,48.44607],[-0.76016,48.43616],[-0.7151,48.44895],[-0.71489,48.45435],[-0.73586,48.46112],[-0.7311,48.47282],[-0.71496,48.46915],[-0.705,48.47559],[-0.70207,48.46721],[-0.69177,48.46811],[-0.68172,48.47095],[-0.68534,48.47715],[-0.66884,48.48646],[-0.65572,48.47407],[-0.65974,48.4691],[-0.65107,48.44395],[-0.59533,48.47263],[-0.57332,48.46879],[-0.56481,48.47725],[-0.55964,48.47211],[-0.55172,48.47312],[-0.53736,48.49049],[-0.51641,48.49813],[-0.5097,48.50901],[-0.49332,48.50177],[-0.4782,48.50157],[-0.47013,48.51194],[-0.44722,48.51538],[-0.4238,48.50677],[-0.39514,48.5103],[-0.39335,48.50107],[-0.3716,48.49579],[-0.36819,48.48786],[-0.35315,48.48377],[-0.34937,48.48885],[-0.35582,48.49567],[-0.34854,48.50129],[-0.33586,48.5019],[-0.33591,48.50933],[-0.32024,48.52292],[-0.29349,48.51504],[-0.28808,48.51934],[-0.2854,48.50677],[-0.27155,48.50745],[-0.26818,48.51688],[-0.27453,48.51781],[-0.26125,48.52685],[-0.25094,48.52673],[-0.24131,48.53667],[-0.26265,48.54864],[-0.24636,48.55842],[-0.24264,48.56799],[-0.21733,48.55808],[-0.20808,48.56414],[-0.17945,48.54084],[-0.1446,48.52775],[-0.14538,48.52055],[-0.16313,48.51767],[-0.1725,48.51054],[-0.17209,48.50214],[-0.15601,48.49584],[-0.14688,48.45644],[-0.10586,48.44726],[-0.07301,48.45053],[-0.07053,48.45801],[-0.05135,48.45293],[-0.05734,48.43098],[-0.05453,48.382],[-0.06253,48.37567],[-0.07086,48.37905],[-0.07782,48.36901],[-0.09053,48.37517],[-0.11216,48.37425],[-0.11923,48.36721],[-0.13672,48.36432],[-0.13191,48.34315],[-0.12222,48.33831],[-0.14781,48.3441],[-0.1571,48.34088],[-0.15795,48.32152],[-0.15462,48.31399],[-0.14197,48.30918],[-0.13794,48.29317],[-0.14981,48.28531],[-0.1557,48.26529],[-0.16734,48.26351],[-0.16096,48.23881],[-0.14484,48.22399],[-0.15314,48.21473],[-0.14684,48.20501],[-0.16448,48.19977],[-0.19003,48.18124],[-0.25256,48.15752],[-0.24568,48.15155],[-0.23774,48.15298],[-0.23742,48.14742],[-0.24871,48.14483],[-0.25381,48.13653],[-0.23906,48.13586],[-0.24679,48.12764],[-0.22296,48.12272],[-0.21642,48.11373],[-0.21933,48.10453],[-0.2368,48.0979],[-0.23741,48.08286],[-0.22232,48.07779],[-0.23094,48.05899],[-0.27145,48.06524],[-0.28427,48.06],[-0.27987,48.05534],[-0.31721,48.04509],[-0.33036,48.05037],[-0.34166,48.0431],[-0.33365,48.02798],[-0.34147,48.01179],[-0.30853,48.00565],[-0.31337,47.99407],[-0.29871,47.97965],[-0.30168,47.96546],[-0.27657,47.95747],[-0.29532,47.944],[-0.31987,47.93544],[-0.33132,47.93815],[-0.33877,47.93064],[-0.37745,47.93281],[-0.39704,47.92593],[-0.39681,47.91644],[-0.40518,47.91502],[-0.40475,47.92088],[-0.41285,47.91583],[-0.40365,47.90232],[-0.41021,47.8947],[-0.39443,47.89373],[-0.3733,47.88463],[-0.36922,47.87028],[-0.38039,47.86773],[-0.37143,47.85867],[-0.37806,47.85491],[-0.38963,47.86027],[-0.41236,47.85753],[-0.41099,47.84663],[-0.42829,47.85037],[-0.43004,47.84159],[-0.44786,47.83222],[-0.42872,47.80617],[-0.41678,47.80253],[-0.3882,47.80532],[-0.37543,47.76724],[-0.3817,47.76056],[-0.38659,47.76982],[-0.41601,47.78014],[-0.41003,47.76521],[-0.42832,47.76761],[-0.45363,47.75673],[-0.48477,47.78003],[-0.51901,47.78734],[-0.51943,47.76416],[-0.53292,47.75069],[-0.56319,47.75763],[-0.57474,47.75298],[-0.58478,47.75836],[-0.61082,47.73569],[-0.62823,47.73813],[-0.65215,47.7341],[-0.66863,47.74119],[-0.68442,47.73857],[-0.71033,47.7446],[-0.74171,47.73811],[-0.75574,47.74426],[-0.75931,47.75375],[-0.78339,47.75018],[-0.79041,47.76062],[-0.81125,47.76425],[-0.81607,47.77123],[-0.83993,47.76828],[-0.83929,47.75227],[-0.89318,47.76353],[-0.89518,47.77441],[-0.9316,47.79347],[-0.93486,47.78564],[-0.95203,47.7965],[-0.96112,47.79552],[-0.97122,47.78281],[-0.95541,47.77907],[-0.95165,47.76671],[-0.97542,47.76577],[-0.98002,47.76149],[-1.01347,47.76675],[-1.02325,47.77255],[-1.02219,47.77793],[-1.02994,47.77064],[-1.04151,47.77085],[-1.12497,47.78433],[-1.13956,47.78209],[-1.137,47.77516],[-1.14381,47.77423],[-1.19319,47.78576],[-1.1969,47.79519],[-1.23713,47.80832],[-1.23578,47.81795],[-1.22315,47.81901],[-1.21601,47.83115],[-1.21403,47.84454],[-1.22305,47.85241],[-1.18899,47.86704],[-1.19663,47.88927],[-1.17623,47.8974],[-1.1553,47.96554],[-1.1254,47.97169],[-1.1248,47.98684],[-1.10348,47.98904],[-1.07178,47.98182],[-1.05029,47.98447],[-1.02126,47.99494],[-1.01577,48.00356],[-1.035,48.03361],[-1.02643,48.04556],[-1.03383,48.0521],[-1.02162,48.06801],[-1.04061,48.07818],[-1.04978,48.09038],[-1.06029,48.15011],[-1.06445,48.16043],[-1.07393,48.1593],[-1.08042,48.1754],[-1.07359,48.19968],[-1.08728,48.20927],[-1.0806,48.2195],[-1.10196,48.2625],[-1.09056,48.28918],[-1.04505,48.32818],[-1.05996,48.34921],[-1.05541,48.36379],[-1.06484,48.36723],[-1.05393,48.38399],[-1.08026,48.41398],[-1.08359,48.43373],[-1.07958,48.44356],[-1.06522,48.45143],[-1.06396,48.46695],[-1.07135,48.4693],[-1.07303,48.4818],[-1.07883,48.48159],[-1.06997,48.48554],[-1.07853,48.4901],[-1.07672,48.50231],[-1.06699,48.50449],[-1.07016,48.50849]]]}},{"type":"Feature","properties":{"code":"54","nom":"Meurthe-et-Moselle"},"geometry":{"type":"MultiPolygon","coordinates":[[[[5.45245,49.41235],[5.47154,49.41988],[5.4709,49.41275],[5.45147,49.40679],[5.45245,49.41235]]],[[[5.42599,49.48614],[5.442,49.50362],[5.47104,49.4869],[5.4602,49.48803],[5.45555,49.48094],[5.44074,49.48701],[5.42599,49.48614]]],[[[5.47091,49.49721],[5.48384,49.50712],[5.54118,49.51526],[5.55605,49.52925],[5.59345,49.52191],[5.61098,49.50593],[5.62136,49.51955],[5.61593,49.52713],[5.62034,49.53316],[5.64298,49.54997],[5.66051,49.55361],[5.70208,49.53932],[5.73328,49.54547],[5.73861,49.53865],[5.75732,49.54305],[5.75832,49.56121],[5.77145,49.56325],[5.79197,49.5517],[5.81572,49.54825],[5.80815,49.54257],[5.8172,49.537],[5.83696,49.54247],[5.84588,49.52995],[5.83456,49.52336],[5.85062,49.50826],[5.86909,49.49878],[5.8934,49.49691],[5.89791,49.48079],[5.90649,49.48588],[5.91276,49.48182],[5.92961,49.48535],[5.9401,49.47761],[5.93171,49.47159],[5.9394,49.46631],[5.94273,49.45136],[5.93089,49.44628],[5.94228,49.43035],[5.92872,49.42709],[5.91192,49.40771],[5.92715,49.40449],[5.93308,49.39607],[5.93588,49.3787],[5.92492,49.373],[5.93525,49.36917],[5.94011,49.36038],[5.95612,49.36159],[5.96299,49.34648],[5.97838,49.34486],[5.94453,49.3416],[5.94138,49.33536],[5.98522,49.30517],[5.99712,49.31424],[6.00373,49.31192],[6.0001,49.27763],[6.01054,49.26642],[6.00519,49.25709],[6.01137,49.26072],[6.03205,49.25123],[6.02507,49.24264],[6.03014,49.2314],[6.01926,49.22652],[6.02304,49.22365],[6.00957,49.22179],[5.99563,49.2072],[5.98763,49.20962],[5.98827,49.20149],[5.98086,49.20151],[5.97855,49.195],[5.98142,49.1868],[6.00658,49.18362],[6.00735,49.17712],[6.03284,49.16549],[6.02237,49.16412],[6.00992,49.1529],[5.98909,49.15495],[5.99667,49.14883],[5.98138,49.14436],[5.98582,49.13602],[5.99733,49.13471],[5.99349,49.12817],[5.98712,49.12833],[6.00449,49.11197],[5.9974,49.10784],[5.9316,49.1091],[5.92479,49.0919],[5.94063,49.08627],[5.94334,49.07934],[5.93394,49.07532],[5.93551,49.0696],[5.95077,49.06479],[5.95825,49.047],[5.96736,49.04708],[5.97107,49.04097],[5.98731,49.04361],[6.00544,49.03442],[6.01468,49.03705],[6.02244,49.02178],[6.04511,49.01352],[6.04494,48.98306],[6.0295,48.99053],[6.03171,48.98429],[6.04577,48.97667],[6.07384,48.98081],[6.06942,48.97207],[6.08132,48.96305],[6.10475,48.96965],[6.11644,48.96817],[6.11342,48.96339],[6.12596,48.95672],[6.12321,48.94942],[6.12981,48.94619],[6.12489,48.9391],[6.13221,48.93472],[6.14959,48.93324],[6.1573,48.9437],[6.17149,48.94422],[6.16899,48.93853],[6.17664,48.93481],[6.22242,48.93912],[6.22409,48.92722],[6.23506,48.92946],[6.2417,48.9236],[6.27124,48.93331],[6.27501,48.9284],[6.28779,48.92768],[6.2884,48.91631],[6.31118,48.92107],[6.30964,48.91189],[6.32675,48.90733],[6.32836,48.90012],[6.30915,48.89223],[6.29795,48.88105],[6.31,48.87802],[6.31171,48.86383],[6.29798,48.86692],[6.29943,48.85169],[6.2842,48.8464],[6.30092,48.84047],[6.30635,48.83325],[6.3207,48.83784],[6.33895,48.83406],[6.33802,48.82679],[6.32794,48.82521],[6.31698,48.83068],[6.30112,48.82425],[6.33297,48.82269],[6.33798,48.81193],[6.35454,48.81275],[6.34559,48.80397],[6.35555,48.79474],[6.35789,48.77913],[6.3706,48.78462],[6.39596,48.77471],[6.43195,48.7883],[6.44431,48.77857],[6.45213,48.78004],[6.45359,48.76634],[6.46538,48.76975],[6.47229,48.76531],[6.48578,48.76693],[6.51191,48.75445],[6.50506,48.74732],[6.51438,48.75373],[6.53475,48.74892],[6.54019,48.75386],[6.5622,48.75634],[6.57425,48.7394],[6.59484,48.72922],[6.59897,48.71569],[6.62729,48.71255],[6.63855,48.70114],[6.65875,48.70803],[6.66462,48.70349],[6.6764,48.68886],[6.66981,48.68658],[6.6669,48.66795],[6.68577,48.68423],[6.69436,48.67956],[6.69228,48.67284],[6.704,48.6747],[6.72608,48.66441],[6.75988,48.66978],[6.76395,48.6521],[6.77798,48.65385],[6.77411,48.64792],[6.78249,48.64273],[6.8105,48.64743],[6.83663,48.64309],[6.84399,48.62607],[6.85403,48.62144],[6.89303,48.62506],[6.91018,48.62027],[6.91822,48.62476],[6.91971,48.63376],[6.93001,48.63555],[6.94504,48.61881],[6.93974,48.61506],[6.95092,48.6109],[6.9608,48.60829],[6.98581,48.61304],[6.99968,48.60802],[7.00975,48.61166],[7.0167,48.60399],[6.99329,48.59342],[7.0192,48.58001],[7.03424,48.58042],[7.05387,48.55186],[7.08387,48.54533],[7.08361,48.54129],[7.05634,48.53901],[7.07936,48.53642],[7.06449,48.5234],[7.08072,48.51255],[7.10222,48.5187],[7.12317,48.51359],[7.09402,48.51295],[7.06518,48.49913],[7.02358,48.49093],[7.00643,48.48104],[6.97975,48.47851],[6.89149,48.41782],[6.87101,48.42009],[6.86459,48.4367],[6.84936,48.42397],[6.82826,48.41661],[6.81381,48.39633],[6.794,48.40337],[6.78241,48.39176],[6.78899,48.4025],[6.76696,48.39908],[6.76097,48.40621],[6.76479,48.41191],[6.73934,48.41177],[6.73627,48.4169],[6.72213,48.41618],[6.71406,48.42294],[6.6995,48.41309],[6.66941,48.42606],[6.64509,48.42743],[6.64829,48.43388],[6.63598,48.44886],[6.63883,48.46392],[6.6354,48.4705],[6.6237,48.4731],[6.58497,48.46051],[6.57419,48.44272],[6.56723,48.4409],[6.5675,48.43315],[6.57387,48.43323],[6.58387,48.41723],[6.57535,48.41434],[6.53371,48.43136],[6.50076,48.41423],[6.49141,48.41733],[6.47099,48.40921],[6.45727,48.41755],[6.4355,48.41279],[6.40407,48.39061],[6.4,48.39617],[6.38876,48.39093],[6.38426,48.3947],[6.3929,48.40875],[6.38339,48.40662],[6.38122,48.41498],[6.35396,48.40388],[6.30773,48.41173],[6.29797,48.43454],[6.29157,48.42805],[6.28279,48.43003],[6.28071,48.42344],[6.2703,48.4261],[6.26044,48.4064],[6.2444,48.40529],[6.23334,48.39711],[6.21747,48.40162],[6.19104,48.39541],[6.17842,48.3976],[6.18203,48.41198],[6.17356,48.40555],[6.15005,48.4095],[6.15235,48.38097],[6.13615,48.36513],[6.12509,48.36726],[6.11705,48.35384],[6.10301,48.35471],[6.09288,48.36117],[6.09887,48.36899],[6.08613,48.38283],[6.06907,48.37529],[6.07756,48.37485],[6.07995,48.36718],[6.07149,48.35977],[6.05102,48.36607],[6.02461,48.3569],[6.02049,48.3614],[6.00358,48.3629],[6.00553,48.35824],[6.0015,48.36049],[5.9804,48.34897],[5.97177,48.35276],[5.95924,48.35042],[5.95349,48.3579],[5.95647,48.36729],[5.94923,48.36897],[5.95382,48.37377],[5.94465,48.37582],[5.95494,48.38733],[5.95066,48.39543],[5.93385,48.40336],[5.93487,48.39584],[5.92769,48.39369],[5.91871,48.40522],[5.90491,48.40035],[5.91192,48.40572],[5.90747,48.41922],[5.91532,48.4278],[5.9249,48.42183],[5.93133,48.43395],[5.92357,48.43627],[5.89804,48.43594],[5.90907,48.42921],[5.89519,48.40525],[5.87361,48.40124],[5.85538,48.40938],[5.89895,48.44672],[5.88693,48.45387],[5.89242,48.46435],[5.88559,48.46915],[5.90357,48.48024],[5.89879,48.48544],[5.9058,48.49462],[5.88815,48.49401],[5.86236,48.5066],[5.84612,48.5068],[5.82637,48.49674],[5.81077,48.4983],[5.78702,48.48291],[5.76515,48.49649],[5.76181,48.51198],[5.76654,48.53561],[5.77441,48.53577],[5.77626,48.54108],[5.72971,48.55315],[5.71372,48.56654],[5.71923,48.59167],[5.74494,48.59761],[5.75226,48.60648],[5.76334,48.60953],[5.78991,48.60719],[5.80324,48.62496],[5.79284,48.62888],[5.77214,48.62028],[5.75838,48.62128],[5.7609,48.63164],[5.743,48.65267],[5.74744,48.67706],[5.7646,48.70107],[5.75285,48.70814],[5.75531,48.71437],[5.74203,48.71503],[5.7434,48.71913],[5.71904,48.73291],[5.72574,48.73744],[5.71404,48.74453],[5.72581,48.75273],[5.73241,48.74871],[5.74189,48.7528],[5.74545,48.75917],[5.73431,48.76144],[5.73648,48.77029],[5.76773,48.79014],[5.77646,48.79007],[5.77804,48.79915],[5.76241,48.7939],[5.75717,48.79983],[5.76885,48.80438],[5.78224,48.83229],[5.77346,48.85136],[5.77738,48.8548],[5.76435,48.87252],[5.78659,48.8782],[5.79106,48.88662],[5.76658,48.89694],[5.75765,48.91297],[5.74765,48.91735],[5.75487,48.92313],[5.77884,48.92511],[5.78403,48.92887],[5.7767,48.93157],[5.78703,48.93269],[5.79525,48.94487],[5.83376,48.94428],[5.83454,48.95065],[5.84727,48.95178],[5.85034,48.95742],[5.83239,48.96957],[5.83446,48.97573],[5.81998,48.9768],[5.80092,48.98588],[5.82807,49.00622],[5.8148,49.00833],[5.83053,49.03251],[5.85417,49.04242],[5.83643,49.05484],[5.83606,49.06606],[5.8072,49.06086],[5.80512,49.06452],[5.8128,49.08311],[5.82699,49.08993],[5.81812,49.0946],[5.82197,49.10839],[5.78381,49.11261],[5.77256,49.10535],[5.7566,49.11223],[5.74694,49.1246],[5.75505,49.12792],[5.75339,49.13373],[5.7718,49.13979],[5.75597,49.14239],[5.76014,49.15284],[5.74452,49.15727],[5.76577,49.1975],[5.75961,49.2016],[5.72513,49.19565],[5.71904,49.21599],[5.74056,49.23012],[5.72093,49.24771],[5.73045,49.25692],[5.72465,49.26875],[5.75224,49.27991],[5.76137,49.27904],[5.7693,49.30335],[5.76304,49.3165],[5.74777,49.30952],[5.73356,49.31003],[5.72912,49.32159],[5.72333,49.32168],[5.71969,49.33056],[5.7376,49.33971],[5.73916,49.35433],[5.72105,49.36544],[5.71266,49.36353],[5.71603,49.37058],[5.70779,49.38411],[5.68728,49.39375],[5.69509,49.39888],[5.69131,49.41631],[5.68129,49.41421],[5.6751,49.42151],[5.63457,49.43744],[5.61582,49.43046],[5.61716,49.42083],[5.6148,49.42572],[5.60573,49.42004],[5.59889,49.42374],[5.58372,49.41786],[5.57036,49.42338],[5.5291,49.40737],[5.50002,49.40881],[5.49399,49.40402],[5.49488,49.39112],[5.48032,49.38234],[5.47594,49.3969],[5.46551,49.39543],[5.44747,49.4024],[5.47291,49.41067],[5.47604,49.40356],[5.49733,49.4078],[5.50821,49.42126],[5.4716,49.42712],[5.48736,49.44808],[5.46626,49.44951],[5.46123,49.45387],[5.47121,49.46089],[5.46426,49.47116],[5.46949,49.48064],[5.46308,49.48191],[5.47363,49.48265],[5.48296,49.4945],[5.47091,49.49721]]]]}},{"type":"Feature","properties":{"code":"55","nom":"Meuse"},"geometry":{"type":"Polygon","coordinates":[[[4.95099,49.23687],[4.96754,49.24927],[4.99942,49.25947],[4.99644,49.26404],[5.02575,49.27416],[5.03359,49.27069],[5.05118,49.27405],[5.04904,49.28531],[5.05941,49.28987],[5.05425,49.29494],[5.03981,49.2952],[5.03581,49.3074],[5.02545,49.31043],[5.03815,49.3162],[5.02631,49.33623],[5.05565,49.35866],[5.05334,49.36574],[5.06147,49.37198],[5.08492,49.36981],[5.10115,49.37815],[5.10415,49.38978],[5.08578,49.39879],[5.0881,49.40207],[5.07674,49.40307],[5.11484,49.41898],[5.10488,49.42588],[5.10028,49.44088],[5.11122,49.45754],[5.09505,49.45964],[5.08296,49.47036],[5.08351,49.48412],[5.0595,49.50057],[5.06175,49.50749],[5.07878,49.50947],[5.09931,49.53157],[5.10038,49.53717],[5.08981,49.53486],[5.08804,49.54492],[5.09608,49.55779],[5.10839,49.55529],[5.11311,49.56062],[5.10457,49.57585],[5.11828,49.59307],[5.14431,49.59092],[5.16275,49.56252],[5.18412,49.5696],[5.19751,49.56672],[5.20854,49.57435],[5.23558,49.56919],[5.23468,49.56224],[5.25419,49.55554],[5.26271,49.54182],[5.2763,49.5443],[5.28511,49.55333],[5.31177,49.55929],[5.30817,49.56285],[5.34016,49.59477],[5.35133,49.58841],[5.37811,49.59302],[5.39354,49.61709],[5.42855,49.59587],[5.43797,49.56974],[5.45681,49.56667],[5.44135,49.55214],[5.46507,49.53887],[5.46679,49.5259],[5.4472,49.51788],[5.46562,49.5087],[5.46519,49.4989],[5.48296,49.4945],[5.47363,49.48265],[5.46308,49.48191],[5.46949,49.48064],[5.46426,49.47116],[5.47121,49.46089],[5.46123,49.45387],[5.46626,49.44951],[5.48736,49.44808],[5.4716,49.42712],[5.50821,49.42126],[5.49733,49.4078],[5.47604,49.40356],[5.47291,49.41067],[5.44747,49.4024],[5.46551,49.39543],[5.47594,49.3969],[5.48032,49.38234],[5.49488,49.39112],[5.49399,49.40402],[5.50002,49.40881],[5.5291,49.40737],[5.57036,49.42338],[5.58372,49.41786],[5.59889,49.42374],[5.60573,49.42004],[5.6148,49.42572],[5.61716,49.42083],[5.61582,49.43046],[5.63457,49.43744],[5.6751,49.42151],[5.68129,49.41421],[5.69131,49.41631],[5.69509,49.39888],[5.68728,49.39375],[5.70779,49.38411],[5.71603,49.37058],[5.71266,49.36353],[5.72105,49.36544],[5.73916,49.35433],[5.7376,49.33971],[5.71969,49.33056],[5.72333,49.32168],[5.72912,49.32159],[5.73356,49.31003],[5.74777,49.30952],[5.76304,49.3165],[5.7693,49.30335],[5.76137,49.27904],[5.75224,49.27991],[5.72465,49.26875],[5.73045,49.25692],[5.72093,49.24771],[5.74056,49.23012],[5.71904,49.21599],[5.72513,49.19565],[5.75961,49.2016],[5.76577,49.1975],[5.74452,49.15727],[5.76014,49.15284],[5.75597,49.14239],[5.77181,49.13903],[5.75339,49.13373],[5.74846,49.12095],[5.76576,49.10636],[5.77256,49.10535],[5.78381,49.11261],[5.82197,49.10839],[5.81812,49.0946],[5.82699,49.08993],[5.8128,49.08311],[5.80512,49.06452],[5.8072,49.06086],[5.83606,49.06606],[5.83643,49.05484],[5.85417,49.04242],[5.83053,49.03251],[5.8148,49.00833],[5.82807,49.00622],[5.80092,48.98588],[5.81998,48.9768],[5.83446,48.97573],[5.83239,48.96957],[5.84982,48.959],[5.84727,48.95178],[5.83642,48.95194],[5.82955,48.94374],[5.80025,48.94675],[5.78703,48.93269],[5.7767,48.93157],[5.78403,48.92887],[5.77884,48.92511],[5.75487,48.92313],[5.74765,48.91735],[5.75765,48.91297],[5.76658,48.89694],[5.79106,48.88662],[5.78659,48.8782],[5.76435,48.87252],[5.77738,48.8548],[5.77346,48.85136],[5.78224,48.83229],[5.76885,48.80438],[5.75717,48.79983],[5.76241,48.7939],[5.77804,48.79915],[5.77646,48.79007],[5.76773,48.79014],[5.73648,48.77029],[5.73431,48.76144],[5.74545,48.75917],[5.74189,48.7528],[5.73241,48.74871],[5.72581,48.75273],[5.71404,48.74453],[5.72574,48.73744],[5.71904,48.73291],[5.7434,48.71913],[5.74203,48.71503],[5.75531,48.71437],[5.75285,48.70814],[5.7646,48.70107],[5.74744,48.67706],[5.743,48.65267],[5.7609,48.63164],[5.75838,48.62128],[5.77214,48.62028],[5.79284,48.62888],[5.80324,48.62496],[5.78991,48.60719],[5.76334,48.60953],[5.75226,48.60648],[5.74494,48.59761],[5.71536,48.58863],[5.71609,48.56142],[5.72971,48.55315],[5.77626,48.54108],[5.76139,48.52375],[5.76515,48.49649],[5.75533,48.49174],[5.73858,48.46607],[5.71323,48.46034],[5.68057,48.47112],[5.65566,48.47216],[5.65494,48.46849],[5.64224,48.47244],[5.63774,48.46935],[5.65322,48.45882],[5.61826,48.4424],[5.62213,48.42639],[5.60906,48.4426],[5.58902,48.44237],[5.57665,48.43196],[5.56778,48.4329],[5.56815,48.43959],[5.56083,48.44147],[5.51619,48.43094],[5.50946,48.4165],[5.5137,48.4108],[5.50193,48.40951],[5.49668,48.41529],[5.48238,48.41582],[5.46466,48.42535],[5.45077,48.42268],[5.43869,48.4353],[5.43335,48.43198],[5.40911,48.44466],[5.4032,48.45408],[5.40605,48.46539],[5.3977,48.47381],[5.38137,48.47114],[5.358,48.47757],[5.32846,48.50297],[5.32755,48.50938],[5.31698,48.50836],[5.30562,48.51591],[5.29621,48.50841],[5.28619,48.51547],[5.27111,48.51355],[5.22735,48.53196],[5.22195,48.52648],[5.21225,48.52879],[5.20843,48.53861],[5.19509,48.53772],[5.19683,48.54668],[5.17311,48.55631],[5.16716,48.56502],[5.14629,48.56028],[5.11791,48.58495],[5.11945,48.59572],[5.07089,48.59573],[5.0596,48.61247],[5.05667,48.63233],[5.05204,48.6333],[5.03292,48.61356],[5.01414,48.61021],[4.99933,48.61484],[4.99467,48.62183],[5.00616,48.63348],[4.99281,48.65827],[5.01105,48.66783],[5.00743,48.68007],[4.98843,48.68442],[4.99088,48.69322],[5.00641,48.69907],[4.99726,48.7096],[5.016,48.70952],[5.00459,48.71972],[5.00922,48.74139],[4.98136,48.74564],[4.97226,48.75759],[4.95025,48.76881],[4.93313,48.79137],[4.92075,48.79057],[4.88858,48.80061],[4.89685,48.80884],[4.88887,48.81685],[4.91462,48.83512],[4.93703,48.84254],[4.93738,48.84811],[4.92801,48.85003],[4.93037,48.856],[4.92139,48.86062],[4.92525,48.86404],[4.91166,48.86871],[4.9247,48.89136],[4.91244,48.89816],[4.91882,48.90557],[4.93352,48.91262],[4.93621,48.92214],[4.95067,48.93089],[4.95927,48.92589],[5.00029,48.93826],[5.01411,48.93735],[5.01413,48.94559],[5.03087,48.95419],[5.03945,48.97387],[5.02828,48.97957],[5.00766,48.97884],[5.00465,48.98364],[4.9938,48.98416],[5.00467,48.99301],[5.03458,48.99347],[5.03652,49.02383],[5.01022,49.03512],[4.96543,49.02144],[5.00574,49.05987],[4.99662,49.10661],[4.93976,49.18507],[4.99339,49.20985],[4.97802,49.21893],[4.97076,49.23606],[4.95099,49.23687]],[[5.45245,49.41235],[5.45147,49.40679],[5.4709,49.41275],[5.47154,49.41988],[5.45245,49.41235]],[[5.42599,49.48614],[5.44074,49.48701],[5.45555,49.48094],[5.4602,49.48803],[5.47104,49.4869],[5.442,49.50362],[5.42599,49.48614]]]}},{"type":"Feature","properties":{"code":"56","nom":"Morbihan"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-3.42179,47.62],[-3.43899,47.62852],[-3.46262,47.62017],[-3.50626,47.63972],[-3.51361,47.65013],[-3.48486,47.65266],[-3.44731,47.64299],[-3.42991,47.64304],[-3.41513,47.63228],[-3.42179,47.62]]],[[[-2.8837,47.34309],[-2.86336,47.34897],[-2.86104,47.34082],[-2.88243,47.3303],[-2.89165,47.34669],[-2.8837,47.34309]]],[[[-3.23545,47.32382],[-3.24862,47.33067],[-3.25493,47.3484],[-3.26355,47.35226],[-3.26233,47.37157],[-3.24695,47.37114],[-3.25317,47.37535],[-3.24722,47.38754],[-3.23501,47.37939],[-3.2199,47.37962],[-3.21949,47.37053],[-3.20061,47.37225],[-3.18968,47.36407],[-3.17175,47.36136],[-3.15729,47.36462],[-3.15347,47.34753],[-3.13856,47.32899],[-3.12396,47.32882],[-3.10086,47.31558],[-3.06675,47.31655],[-3.0559,47.30817],[-3.06474,47.30709],[-3.07592,47.28605],[-3.09184,47.2784],[-3.09464,47.28314],[-3.12077,47.29043],[-3.13965,47.28597],[-3.13909,47.28956],[-3.15807,47.29236],[-3.16764,47.30159],[-3.19269,47.2939],[-3.20287,47.29941],[-3.20573,47.29386],[-3.21838,47.29244],[-3.24828,47.3135],[-3.23545,47.32382]]],[[[-2.94815,47.37334],[-2.95872,47.38363],[-2.99368,47.39342],[-2.99039,47.40237],[-2.96773,47.39282],[-2.93938,47.3947],[-2.95344,47.38513],[-2.94815,47.37334]]],[[[-2.85956,47.55989],[-2.85519,47.60039],[-2.84866,47.59829],[-2.83887,47.6072],[-2.84067,47.59351],[-2.82393,47.58857],[-2.84676,47.58972],[-2.85571,47.57291],[-2.84886,47.56619],[-2.85792,47.56632],[-2.85956,47.55989]]],[[[-2.80961,47.57826],[-2.81362,47.58394],[-2.80476,47.58681],[-2.81287,47.59068],[-2.79559,47.59862],[-2.79329,47.60579],[-2.78656,47.59483],[-2.80961,47.57826]]],[[[-2.72741,47.57259],[-2.73874,47.58377],[-2.72668,47.57961],[-2.72741,47.57259]]],[[[-2.78595,47.56848],[-2.79539,47.571],[-2.79078,47.57986],[-2.78595,47.56848]]],[[[-2.75329,47.6022],[-2.77026,47.60613],[-2.771,47.61034],[-2.75474,47.60682],[-2.75329,47.6022]]],[[[-2.77709,47.58636],[-2.78618,47.58952],[-2.7753,47.5955],[-2.77709,47.58636]]],[[[-3.56484,48.18575],[-3.55554,48.17988],[-3.53612,48.17794],[-3.4788,48.18621],[-3.46997,48.17768],[-3.46318,48.18097],[-3.45289,48.1774],[-3.43805,48.18412],[-3.42109,48.17446],[-3.43844,48.16256],[-3.43652,48.15549],[-3.4176,48.14564],[-3.40232,48.15694],[-3.3936,48.15164],[-3.37558,48.16378],[-3.34974,48.16477],[-3.34387,48.17096],[-3.32356,48.16068],[-3.3254,48.15017],[-3.32053,48.14883],[-3.31614,48.15549],[-3.30744,48.15609],[-3.29088,48.15296],[-3.28291,48.14162],[-3.27511,48.14357],[-3.27224,48.14001],[-3.2679,48.14532],[-3.25946,48.14329],[-3.24109,48.1516],[-3.2134,48.14273],[-3.21438,48.15445],[-3.19155,48.16476],[-3.17537,48.1589],[-3.15812,48.16791],[-3.15525,48.15849],[-3.1395,48.16369],[-3.13022,48.17687],[-3.13707,48.18372],[-3.13004,48.20032],[-3.12027,48.20041],[-3.10906,48.20805],[-3.09048,48.20238],[-3.07801,48.21088],[-3.06945,48.20502],[-3.03732,48.20399],[-3.02851,48.19576],[-3.01493,48.19796],[-3.02044,48.19244],[-3.01263,48.18527],[-3.01177,48.17215],[-2.99564,48.17072],[-2.99975,48.16071],[-2.98207,48.16038],[-2.96128,48.16993],[-2.93969,48.17158],[-2.9027,48.16275],[-2.89145,48.16473],[-2.88224,48.1528],[-2.85292,48.14157],[-2.80753,48.14623],[-2.78204,48.12094],[-2.7731,48.08637],[-2.76001,48.09842],[-2.755,48.1154],[-2.72437,48.11736],[-2.72481,48.11419],[-2.70398,48.11243],[-2.70238,48.1188],[-2.67623,48.13181],[-2.66098,48.13062],[-2.65231,48.11878],[-2.65684,48.10687],[-2.65027,48.09792],[-2.67301,48.06266],[-2.66556,48.05641],[-2.67038,48.04841],[-2.65914,48.04478],[-2.65557,48.03259],[-2.64512,48.04209],[-2.64543,48.03546],[-2.63604,48.0378],[-2.62821,48.0338],[-2.59063,48.05571],[-2.57735,48.07088],[-2.56497,48.06733],[-2.56116,48.07407],[-2.54773,48.07715],[-2.5523,48.08146],[-2.54837,48.09415],[-2.5541,48.09809],[-2.53264,48.10882],[-2.51397,48.13242],[-2.51654,48.142],[-2.53171,48.15034],[-2.53217,48.15782],[-2.50907,48.16009],[-2.48781,48.1553],[-2.48783,48.16643],[-2.47916,48.16737],[-2.47181,48.15997],[-2.45331,48.1637],[-2.44924,48.17301],[-2.41845,48.17282],[-2.40641,48.16781],[-2.39901,48.15377],[-2.37445,48.14023],[-2.37541,48.12695],[-2.35753,48.11132],[-2.34919,48.12651],[-2.33773,48.12535],[-2.33652,48.11931],[-2.32107,48.12331],[-2.31575,48.1355],[-2.28418,48.13292],[-2.25507,48.10948],[-2.24807,48.08534],[-2.25794,48.07297],[-2.25612,48.06287],[-2.23431,48.06318],[-2.23595,48.07586],[-2.21958,48.08086],[-2.18094,48.08317],[-2.16848,48.07621],[-2.17043,48.06344],[-2.18821,48.05677],[-2.18878,48.05243],[-2.24187,48.05284],[-2.26132,48.04158],[-2.2796,48.02636],[-2.28287,48.01785],[-2.27553,48.00986],[-2.28951,48.00092],[-2.28754,47.9915],[-2.23913,47.99966],[-2.19113,47.99076],[-2.17782,47.97957],[-2.14439,47.98401],[-2.12532,47.9647],[-2.11083,47.95984],[-2.10997,47.9529],[-2.10013,47.94832],[-2.09773,47.93323],[-2.07878,47.91913],[-2.08653,47.90357],[-2.10609,47.90206],[-2.10096,47.89596],[-2.116,47.89011],[-2.11434,47.87743],[-2.09561,47.86166],[-2.10446,47.85948],[-2.10945,47.84883],[-2.09125,47.84345],[-2.06863,47.852],[-2.0547,47.86879],[-2.0516,47.84056],[-2.03604,47.83346],[-2.04705,47.81846],[-2.07046,47.8114],[-2.07408,47.78897],[-2.09493,47.77868],[-2.1101,47.77859],[-2.11036,47.77133],[-2.12823,47.76867],[-2.12598,47.76096],[-2.08472,47.76271],[-2.08432,47.74994],[-2.06232,47.75127],[-2.05808,47.74197],[-2.0587,47.73826],[-2.10879,47.73675],[-2.10704,47.73187],[-2.13147,47.72224],[-2.11858,47.7094],[-2.12266,47.68267],[-2.10385,47.67619],[-2.1138,47.6477],[-2.10209,47.64405],[-2.09637,47.64742],[-2.094,47.63963],[-2.10462,47.63836],[-2.10319,47.63486],[-2.08412,47.61789],[-2.08602,47.60403],[-2.10385,47.59087],[-2.09953,47.58077],[-2.10474,47.57525],[-2.10051,47.57726],[-2.09669,47.57052],[-2.10465,47.54715],[-2.09683,47.54033],[-2.09855,47.53396],[-2.11782,47.528],[-2.13199,47.53119],[-2.13252,47.52653],[-2.15602,47.52203],[-2.15418,47.49636],[-2.16462,47.48915],[-2.19216,47.49664],[-2.18376,47.50179],[-2.18452,47.51226],[-2.21556,47.50839],[-2.24428,47.4936],[-2.26564,47.50178],[-2.25494,47.51151],[-2.28083,47.50958],[-2.29642,47.51599],[-2.30123,47.49639],[-2.31314,47.4859],[-2.31187,47.46524],[-2.31697,47.46129],[-2.35253,47.45467],[-2.36826,47.46422],[-2.39994,47.45598],[-2.41721,47.46109],[-2.42303,47.47711],[-2.4377,47.46597],[-2.45343,47.46207],[-2.45849,47.44812],[-2.46813,47.44962],[-2.48052,47.44126],[-2.50059,47.45817],[-2.48841,47.47112],[-2.501,47.49272],[-2.48123,47.4953],[-2.46744,47.48263],[-2.44733,47.49464],[-2.42053,47.49528],[-2.44122,47.49624],[-2.46615,47.5117],[-2.49667,47.51754],[-2.50279,47.51464],[-2.50516,47.5231],[-2.52087,47.52695],[-2.53543,47.52381],[-2.53422,47.52806],[-2.55282,47.51258],[-2.59486,47.51769],[-2.60581,47.51524],[-2.60818,47.50852],[-2.63188,47.50457],[-2.62378,47.51393],[-2.61183,47.50918],[-2.60878,47.52724],[-2.5759,47.52197],[-2.58791,47.52957],[-2.58073,47.53393],[-2.5668,47.53294],[-2.58179,47.53605],[-2.57541,47.54551],[-2.55914,47.55183],[-2.56906,47.55596],[-2.57757,47.55011],[-2.58086,47.55406],[-2.57448,47.55903],[-2.58685,47.56352],[-2.58287,47.5433],[-2.58917,47.53961],[-2.59575,47.54294],[-2.59116,47.53732],[-2.60435,47.53103],[-2.61895,47.55166],[-2.61064,47.5676],[-2.6197,47.56149],[-2.61905,47.54767],[-2.62935,47.54947],[-2.61637,47.53719],[-2.62538,47.53545],[-2.6212,47.5327],[-2.62602,47.53069],[-2.63312,47.53625],[-2.65043,47.5378],[-2.65861,47.54984],[-2.67028,47.54303],[-2.66376,47.53948],[-2.67068,47.53748],[-2.66717,47.53325],[-2.65563,47.53654],[-2.65233,47.52889],[-2.63724,47.53048],[-2.62113,47.52541],[-2.62924,47.51681],[-2.62786,47.52417],[-2.63574,47.52311],[-2.63987,47.51604],[-2.66434,47.51864],[-2.66552,47.50871],[-2.68116,47.49682],[-2.67492,47.49186],[-2.72464,47.50642],[-2.7475,47.49866],[-2.77922,47.49587],[-2.79372,47.48419],[-2.807,47.48878],[-2.81531,47.48665],[-2.85027,47.49879],[-2.84757,47.51207],[-2.855,47.51801],[-2.84736,47.51938],[-2.85773,47.51869],[-2.87157,47.53218],[-2.88675,47.53776],[-2.90358,47.53435],[-2.90532,47.53837],[-2.8926,47.54435],[-2.91276,47.54222],[-2.91962,47.54772],[-2.90867,47.54953],[-2.91449,47.55741],[-2.90781,47.56309],[-2.90269,47.55967],[-2.89731,47.5633],[-2.8945,47.55499],[-2.89103,47.56173],[-2.8847,47.55746],[-2.87853,47.56382],[-2.87775,47.55462],[-2.86933,47.55694],[-2.87419,47.54743],[-2.85845,47.55066],[-2.86238,47.54175],[-2.85333,47.53701],[-2.8454,47.53953],[-2.85347,47.54182],[-2.85068,47.54664],[-2.83888,47.54374],[-2.82718,47.55007],[-2.83048,47.5456],[-2.82372,47.53635],[-2.82634,47.54345],[-2.81804,47.543],[-2.82428,47.55651],[-2.81362,47.55297],[-2.80672,47.55603],[-2.80771,47.5435],[-2.79999,47.53741],[-2.79969,47.54742],[-2.78767,47.55251],[-2.78262,47.54561],[-2.77741,47.54822],[-2.7792,47.53909],[-2.76468,47.53905],[-2.76696,47.54337],[-2.76762,47.53568],[-2.74321,47.5436],[-2.73464,47.54086],[-2.72861,47.54807],[-2.73472,47.55285],[-2.7138,47.5794],[-2.71851,47.58749],[-2.71192,47.58837],[-2.71587,47.58292],[-2.70843,47.58063],[-2.71083,47.57602],[-2.70394,47.58903],[-2.69868,47.58993],[-2.69558,47.5839],[-2.69499,47.5909],[-2.68931,47.59088],[-2.69067,47.6051],[-2.68369,47.60536],[-2.68863,47.62295],[-2.69538,47.62454],[-2.68669,47.63146],[-2.70262,47.63208],[-2.68985,47.63731],[-2.69993,47.63683],[-2.71245,47.64841],[-2.70677,47.63505],[-2.71602,47.6314],[-2.7028,47.62269],[-2.71318,47.62598],[-2.71726,47.61985],[-2.70126,47.61848],[-2.69564,47.6098],[-2.70209,47.60677],[-2.70873,47.61712],[-2.71733,47.61431],[-2.70968,47.61027],[-2.71252,47.60163],[-2.70275,47.60251],[-2.72121,47.58999],[-2.72106,47.60311],[-2.73752,47.60523],[-2.73202,47.59857],[-2.7584,47.61459],[-2.77821,47.61872],[-2.77515,47.62517],[-2.73364,47.61279],[-2.74203,47.62738],[-2.75071,47.62191],[-2.75728,47.62987],[-2.7549,47.63777],[-2.7618,47.63949],[-2.76455,47.63131],[-2.78042,47.63196],[-2.77815,47.62778],[-2.78933,47.63733],[-2.78468,47.64173],[-2.79408,47.64501],[-2.79252,47.63445],[-2.77988,47.62653],[-2.78328,47.62093],[-2.80159,47.61796],[-2.81194,47.62232],[-2.83433,47.61258],[-2.83275,47.62027],[-2.84006,47.61674],[-2.86278,47.62208],[-2.8673,47.61719],[-2.85872,47.61807],[-2.8564,47.61349],[-2.86838,47.60705],[-2.8587,47.60145],[-2.8645,47.59673],[-2.8898,47.60257],[-2.89097,47.58539],[-2.88526,47.5788],[-2.89046,47.57415],[-2.89582,47.58463],[-2.90924,47.58426],[-2.90419,47.58714],[-2.9081,47.59156],[-2.91472,47.59108],[-2.91778,47.58233],[-2.92552,47.5859],[-2.91725,47.59984],[-2.92706,47.59187],[-2.93104,47.60585],[-2.93676,47.58571],[-2.95108,47.60976],[-2.94944,47.62137],[-2.93637,47.62602],[-2.95885,47.62739],[-2.95816,47.6386],[-2.96858,47.63943],[-2.96414,47.64572],[-2.97829,47.65909],[-2.97158,47.63546],[-2.96125,47.63142],[-2.9536,47.61221],[-2.96071,47.61464],[-2.96306,47.60755],[-2.97227,47.60766],[-2.9543,47.59717],[-2.97015,47.58834],[-2.94786,47.57935],[-2.93675,47.56137],[-2.92658,47.55687],[-2.9518,47.55609],[-2.95774,47.56425],[-2.96292,47.55333],[-2.97607,47.55904],[-2.97739,47.56299],[-2.96925,47.55935],[-2.97217,47.57193],[-2.97659,47.57749],[-2.99179,47.5804],[-2.99443,47.59069],[-2.99802,47.58462],[-2.98899,47.567],[-2.9946,47.57175],[-2.99705,47.56627],[-3.00447,47.56598],[-3.02456,47.59205],[-3.01918,47.56724],[-3.04474,47.58738],[-3.04274,47.57886],[-3.05198,47.57794],[-3.05436,47.56927],[-3.06587,47.57242],[-3.09543,47.56374],[-3.10652,47.57525],[-3.09723,47.57812],[-3.09208,47.574],[-3.09232,47.57903],[-3.1047,47.58079],[-3.12703,47.59836],[-3.12948,47.57499],[-3.1156,47.57546],[-3.1332,47.547],[-3.12975,47.52191],[-3.12636,47.51293],[-3.11794,47.51003],[-3.11748,47.49644],[-3.08097,47.47038],[-3.10792,47.47191],[-3.1178,47.4788],[-3.13297,47.47496],[-3.14562,47.48352],[-3.14312,47.49207],[-3.15961,47.5256],[-3.15954,47.52934],[-3.14463,47.53127],[-3.13442,47.5459],[-3.13975,47.5796],[-3.15838,47.60698],[-3.19767,47.62392],[-3.21074,47.64182],[-3.20402,47.65156],[-3.20921,47.6698],[-3.20163,47.67075],[-3.1968,47.67882],[-3.18809,47.67788],[-3.19172,47.68136],[-3.18569,47.68498],[-3.16228,47.68014],[-3.15868,47.68978],[-3.15532,47.68642],[-3.14857,47.69589],[-3.13232,47.70153],[-3.15443,47.69958],[-3.15912,47.69728],[-3.15521,47.69369],[-3.16884,47.69687],[-3.14836,47.70361],[-3.14908,47.71642],[-3.14192,47.71559],[-3.144,47.70657],[-3.13149,47.70391],[-3.13179,47.71444],[-3.12016,47.72094],[-3.12527,47.7258],[-3.10311,47.71823],[-3.10947,47.72802],[-3.12786,47.7282],[-3.1318,47.72301],[-3.15262,47.71891],[-3.14375,47.73196],[-3.13926,47.73316],[-3.13827,47.72811],[-3.1346,47.73139],[-3.13654,47.73527],[-3.14781,47.73051],[-3.15092,47.73342],[-3.13484,47.74734],[-3.14828,47.74279],[-3.14712,47.75235],[-3.16021,47.73745],[-3.15479,47.73337],[-3.16008,47.72898],[-3.17135,47.73138],[-3.17212,47.73805],[-3.18645,47.73837],[-3.18601,47.74637],[-3.20083,47.74489],[-3.19171,47.74587],[-3.19234,47.73214],[-3.17856,47.73653],[-3.16974,47.72807],[-3.17574,47.71832],[-3.16569,47.70455],[-3.17506,47.69897],[-3.17436,47.70635],[-3.19463,47.70354],[-3.19917,47.69714],[-3.18885,47.69168],[-3.1973,47.6875],[-3.21051,47.69128],[-3.21072,47.69835],[-3.21626,47.69579],[-3.20659,47.68818],[-3.21171,47.68487],[-3.19944,47.68375],[-3.20902,47.6763],[-3.20632,47.67161],[-3.21538,47.67212],[-3.21855,47.66534],[-3.2119,47.66187],[-3.2146,47.64488],[-3.2709,47.67887],[-3.30046,47.68943],[-3.34449,47.69527],[-3.35761,47.6862],[-3.35246,47.70038],[-3.34331,47.69619],[-3.32505,47.70208],[-3.28576,47.68618],[-3.27765,47.69032],[-3.29222,47.70309],[-3.31618,47.70283],[-3.31087,47.70945],[-3.322,47.70476],[-3.32666,47.70962],[-3.34422,47.70836],[-3.35224,47.70287],[-3.36541,47.7103],[-3.35317,47.70828],[-3.35059,47.71603],[-3.3427,47.71592],[-3.35194,47.72417],[-3.34404,47.72659],[-3.34784,47.73456],[-3.33238,47.7294],[-3.33449,47.73544],[-3.32262,47.73498],[-3.31494,47.74572],[-3.30571,47.74811],[-3.29653,47.77119],[-3.28684,47.76809],[-3.282,47.77793],[-3.29324,47.78483],[-3.29071,47.79126],[-3.27773,47.79441],[-3.29024,47.79312],[-3.29569,47.78651],[-3.28681,47.77283],[-3.30005,47.77466],[-3.30375,47.76488],[-3.31813,47.75612],[-3.32621,47.76609],[-3.32291,47.74831],[-3.34425,47.74159],[-3.35353,47.76074],[-3.36301,47.76191],[-3.36004,47.77098],[-3.37653,47.78545],[-3.37872,47.79716],[-3.39181,47.8049],[-3.38851,47.82828],[-3.38822,47.81261],[-3.39942,47.80908],[-3.37999,47.79155],[-3.38552,47.78389],[-3.37401,47.78079],[-3.36569,47.76136],[-3.35241,47.7535],[-3.35126,47.7435],[-3.36054,47.74517],[-3.35172,47.74208],[-3.35583,47.73241],[-3.36569,47.7285],[-3.36852,47.73179],[-3.36715,47.71594],[-3.38739,47.70165],[-3.41523,47.70032],[-3.42778,47.7046],[-3.44586,47.69582],[-3.46069,47.69833],[-3.45896,47.70319],[-3.47679,47.71046],[-3.47513,47.7142],[-3.50049,47.73092],[-3.50669,47.74765],[-3.52865,47.76544],[-3.52878,47.78956],[-3.5179,47.80314],[-3.53504,47.81468],[-3.54082,47.82927],[-3.51951,47.84901],[-3.52177,47.83988],[-3.48744,47.8237],[-3.47521,47.83549],[-3.45766,47.83663],[-3.44906,47.84616],[-3.44831,47.8632],[-3.42476,47.86906],[-3.39905,47.86361],[-3.40401,47.86616],[-3.40539,47.90221],[-3.41924,47.90558],[-3.40606,47.90587],[-3.40882,47.91592],[-3.39327,47.91786],[-3.38703,47.92524],[-3.40173,47.94314],[-3.39305,47.95845],[-3.40273,47.96032],[-3.41486,47.97501],[-3.42123,47.96752],[-3.4447,47.95865],[-3.46136,47.9595],[-3.46757,47.94575],[-3.4814,47.95187],[-3.49154,47.9749],[-3.51974,47.97615],[-3.53108,47.98866],[-3.54628,47.98654],[-3.55869,47.99416],[-3.58415,47.98458],[-3.59702,47.99038],[-3.61997,47.98186],[-3.64023,47.98524],[-3.6483,48.00652],[-3.66252,48.01932],[-3.6641,48.0367],[-3.6711,48.03733],[-3.67354,48.05812],[-3.70871,48.06681],[-3.69878,48.06873],[-3.70432,48.08662],[-3.69502,48.09349],[-3.70319,48.09781],[-3.73319,48.0965],[-3.72913,48.10441],[-3.73445,48.11261],[-3.71819,48.11994],[-3.7219,48.12927],[-3.7085,48.13578],[-3.71551,48.14222],[-3.69769,48.14544],[-3.6933,48.1518],[-3.65186,48.15658],[-3.62611,48.16953],[-3.56484,48.18575]]]]}},{"type":"Feature","properties":{"code":"57","nom":"Moselle"},"geometry":{"type":"Polygon","coordinates":[[[7.63529,49.05416],[7.63785,49.04611],[7.60643,49.02003],[7.61157,49.01244],[7.58756,48.98969],[7.59233,48.98484],[7.57839,48.9574],[7.55168,48.94217],[7.55613,48.93583],[7.53628,48.93241],[7.52592,48.94451],[7.51972,48.94024],[7.50187,48.94425],[7.48516,48.95068],[7.47957,48.96139],[7.45531,48.96298],[7.45163,48.96796],[7.38589,48.95151],[7.35888,48.9576],[7.32685,48.94337],[7.30623,48.95663],[7.2902,48.95652],[7.29305,48.97342],[7.23919,48.9878],[7.20931,48.98009],[7.19429,48.99518],[7.18371,48.99478],[7.18384,49.00095],[7.17424,49.00637],[7.12559,49.00632],[7.12166,49.02983],[7.11337,49.03253],[7.11948,49.03722],[7.10836,49.04273],[7.10191,49.05913],[7.10169,49.06373],[7.11929,49.06835],[7.09934,49.07788],[7.08365,49.06867],[7.07431,49.07297],[7.06766,49.06497],[7.07866,49.05036],[7.05229,49.02829],[7.04743,49.01462],[7.05451,49.00992],[7.03057,48.98711],[7.0413,48.97731],[7.02702,48.96901],[7.03222,48.95605],[6.98922,48.95993],[6.97981,48.93481],[6.97111,48.92804],[6.96018,48.92519],[6.94436,48.93448],[6.94037,48.92393],[6.95555,48.92232],[6.9646,48.90453],[6.95467,48.89389],[6.98892,48.89119],[7.03315,48.87465],[7.04835,48.87366],[7.05054,48.85893],[7.08063,48.86417],[7.09573,48.86214],[7.09962,48.85513],[7.09177,48.84946],[7.07807,48.84527],[7.06707,48.84897],[7.05149,48.84655],[7.05455,48.83268],[7.04721,48.82014],[7.052,48.81521],[7.08807,48.81074],[7.08912,48.80677],[7.06719,48.79948],[7.07783,48.78558],[7.08608,48.79209],[7.1268,48.80114],[7.12445,48.81251],[7.1476,48.82186],[7.14111,48.83441],[7.14885,48.8446],[7.17452,48.84184],[7.17292,48.84642],[7.18591,48.84951],[7.19588,48.8404],[7.18714,48.83342],[7.2091,48.82757],[7.21657,48.82027],[7.22309,48.82216],[7.21775,48.82811],[7.22247,48.82962],[7.24546,48.81683],[7.26131,48.81996],[7.24524,48.81003],[7.26203,48.79845],[7.27049,48.80254],[7.2876,48.79774],[7.29069,48.78562],[7.31334,48.76724],[7.29299,48.75297],[7.28688,48.73134],[7.26663,48.71421],[7.26017,48.6943],[7.24249,48.69154],[7.2646,48.6627],[7.30435,48.6602],[7.28113,48.63657],[7.2619,48.63179],[7.27966,48.62818],[7.25561,48.59994],[7.26514,48.59172],[7.21832,48.55264],[7.19249,48.54879],[7.1871,48.53727],[7.16791,48.5276],[7.15108,48.53166],[7.14833,48.52698],[7.13506,48.52813],[7.11438,48.53739],[7.09214,48.52904],[7.07936,48.53642],[7.05975,48.53715],[7.08361,48.54129],[7.08387,48.54533],[7.05387,48.55186],[7.03424,48.58042],[7.0192,48.58001],[6.99329,48.59342],[7.0167,48.60399],[7.00975,48.61166],[6.99968,48.60802],[6.98581,48.61304],[6.9608,48.60829],[6.95092,48.6109],[6.93974,48.61506],[6.94504,48.61881],[6.93001,48.63555],[6.91971,48.63376],[6.91822,48.62476],[6.91018,48.62027],[6.89303,48.62506],[6.85403,48.62144],[6.84399,48.62607],[6.83663,48.64309],[6.8105,48.64743],[6.78249,48.64273],[6.77411,48.64792],[6.77798,48.65385],[6.76395,48.6521],[6.75988,48.66978],[6.72608,48.66441],[6.704,48.6747],[6.69228,48.67284],[6.69436,48.67956],[6.68577,48.68423],[6.6669,48.66795],[6.66981,48.68658],[6.6764,48.68886],[6.66462,48.70349],[6.65875,48.70803],[6.63855,48.70114],[6.62729,48.71255],[6.59897,48.71569],[6.59484,48.72922],[6.57425,48.7394],[6.5622,48.75634],[6.54019,48.75386],[6.53475,48.74892],[6.51438,48.75373],[6.50506,48.74732],[6.51191,48.75445],[6.48578,48.76693],[6.47229,48.76531],[6.46538,48.76975],[6.45359,48.76634],[6.45213,48.78004],[6.44431,48.77857],[6.43195,48.7883],[6.39596,48.77471],[6.3706,48.78462],[6.35789,48.77913],[6.35555,48.79474],[6.34559,48.80397],[6.35454,48.81275],[6.33798,48.81193],[6.33297,48.82269],[6.30112,48.82425],[6.31698,48.83068],[6.32794,48.82521],[6.33802,48.82679],[6.33895,48.83406],[6.3207,48.83784],[6.30635,48.83325],[6.30092,48.84047],[6.2842,48.8464],[6.29943,48.85169],[6.29798,48.86692],[6.31171,48.86383],[6.31,48.87802],[6.29795,48.88105],[6.30915,48.89223],[6.32836,48.90012],[6.32675,48.90733],[6.30964,48.91189],[6.31118,48.92107],[6.2884,48.91631],[6.28779,48.92768],[6.27501,48.9284],[6.27124,48.93331],[6.2417,48.9236],[6.23506,48.92946],[6.22409,48.92722],[6.22242,48.93912],[6.17664,48.93481],[6.16899,48.93853],[6.17149,48.94422],[6.1573,48.9437],[6.14959,48.93324],[6.13221,48.93472],[6.12489,48.9391],[6.12981,48.94619],[6.12321,48.94942],[6.12596,48.95672],[6.11342,48.96339],[6.11644,48.96817],[6.10475,48.96965],[6.08132,48.96305],[6.06942,48.97207],[6.07384,48.98081],[6.04577,48.97667],[6.03171,48.98429],[6.0295,48.99053],[6.04494,48.98306],[6.04511,49.01352],[6.02244,49.02178],[6.01468,49.03705],[6.00544,49.03442],[5.98731,49.04361],[5.97107,49.04097],[5.96736,49.04708],[5.95825,49.047],[5.95077,49.06479],[5.93551,49.0696],[5.93394,49.07532],[5.94334,49.07934],[5.94063,49.08627],[5.92479,49.0919],[5.9316,49.1091],[5.9974,49.10784],[6.00449,49.11197],[5.98712,49.12833],[5.99349,49.12817],[5.99733,49.13471],[5.98582,49.13602],[5.98138,49.14436],[5.99667,49.14883],[5.98909,49.15495],[6.00992,49.1529],[6.02237,49.16412],[6.03284,49.16549],[6.00735,49.17712],[6.00658,49.18362],[5.98142,49.1868],[5.97855,49.195],[5.98086,49.20151],[5.98827,49.20149],[5.98763,49.20962],[5.99563,49.2072],[6.00957,49.22179],[6.02304,49.22365],[6.01926,49.22652],[6.03014,49.2314],[6.02507,49.24264],[6.03205,49.25123],[6.01137,49.26072],[6.00519,49.25709],[6.01054,49.26642],[6.0001,49.27763],[6.00373,49.31192],[5.99712,49.31424],[5.98522,49.30517],[5.94138,49.33536],[5.94453,49.3416],[5.97838,49.34486],[5.96299,49.34648],[5.95612,49.36159],[5.94011,49.36038],[5.93525,49.36917],[5.92492,49.373],[5.93588,49.3787],[5.93308,49.39607],[5.92715,49.40449],[5.91192,49.40771],[5.92872,49.42709],[5.94228,49.43035],[5.93089,49.44628],[5.94273,49.45136],[5.9394,49.46631],[5.93171,49.47159],[5.94134,49.47566],[5.92961,49.48535],[5.91276,49.48182],[5.90649,49.48588],[5.89703,49.48113],[5.8917,49.4961],[5.91189,49.50202],[5.92758,49.49822],[5.93994,49.50097],[5.95193,49.49397],[5.97238,49.49112],[5.97417,49.46482],[5.98765,49.46241],[5.979,49.45292],[6.02783,49.45573],[6.02748,49.44823],[6.04215,49.4478],[6.05777,49.46621],[6.07969,49.46374],[6.08729,49.45495],[6.10081,49.45289],[6.09951,49.46752],[6.12347,49.47344],[6.12786,49.49374],[6.13275,49.48998],[6.14167,49.49184],[6.14098,49.48642],[6.16217,49.49323],[6.15525,49.50381],[6.17453,49.50979],[6.2147,49.50639],[6.21706,49.50986],[6.23564,49.50807],[6.24071,49.51451],[6.24637,49.50896],[6.2791,49.50336],[6.27978,49.49454],[6.28955,49.49322],[6.28445,49.49155],[6.28901,49.48469],[6.29824,49.4887],[6.29616,49.48016],[6.31276,49.48027],[6.33378,49.46689],[6.35294,49.46722],[6.36439,49.45949],[6.36768,49.46942],[6.37519,49.4646],[6.39326,49.46428],[6.42809,49.47692],[6.44043,49.46667],[6.45588,49.46301],[6.46474,49.46648],[6.48697,49.45163],[6.5419,49.43244],[6.55612,49.42102],[6.53789,49.41065],[6.54053,49.40115],[6.55185,49.39982],[6.56342,49.38815],[6.57673,49.38973],[6.58707,49.38494],[6.58389,49.36863],[6.59508,49.37144],[6.60183,49.36647],[6.58796,49.34973],[6.57424,49.35853],[6.56376,49.35589],[6.56584,49.34735],[6.57795,49.3352],[6.58584,49.33707],[6.59445,49.33144],[6.58888,49.32209],[6.61574,49.30168],[6.62525,49.30284],[6.6504,49.28837],[6.65323,49.28112],[6.67037,49.28029],[6.66153,49.25733],[6.67549,49.25726],[6.68976,49.24969],[6.68462,49.24232],[6.69593,49.21501],[6.72334,49.21905],[6.7315,49.20609],[6.71136,49.18854],[6.73851,49.16366],[6.78456,49.16809],[6.83454,49.15147],[6.84765,49.1573],[6.84387,49.17313],[6.85868,49.17488],[6.86177,49.17944],[6.83778,49.21332],[6.86313,49.22197],[6.89244,49.20883],[6.92545,49.22359],[6.9379,49.2222],[6.9597,49.20299],[6.97497,49.20976],[6.99881,49.19428],[7.00915,49.19392],[7.0107,49.18812],[7.02099,49.19324],[7.02336,49.18923],[7.03503,49.19064],[7.02765,49.17008],[7.04585,49.13912],[7.04521,49.11941],[7.0543,49.11263],[7.06609,49.11458],[7.07194,49.12475],[7.08888,49.13022],[7.08028,49.14877],[7.08332,49.1532],[7.10093,49.15562],[7.11327,49.15169],[7.10406,49.14608],[7.10391,49.13892],[7.12626,49.14187],[7.13602,49.12853],[7.1588,49.12078],[7.16645,49.12869],[7.18415,49.13151],[7.19799,49.11515],[7.20868,49.12466],[7.2453,49.12981],[7.26635,49.12259],[7.28172,49.1245],[7.2826,49.11693],[7.29374,49.1151],[7.32371,49.14269],[7.36326,49.14525],[7.36609,49.17247],[7.44478,49.18423],[7.43626,49.18],[7.44154,49.17292],[7.4333,49.16821],[7.43646,49.16423],[7.44729,49.16871],[7.45951,49.16257],[7.47313,49.16868],[7.494,49.16964],[7.49578,49.15508],[7.5064,49.15492],[7.48958,49.13653],[7.49674,49.1354],[7.50568,49.12251],[7.51725,49.11955],[7.52898,49.09721],[7.56319,49.08046],[7.59998,49.08333],[7.62935,49.07368],[7.63529,49.05416]]]}},{"type":"Feature","properties":{"code":"58","nom":"Ni\xE8vre"},"geometry":{"type":"Polygon","coordinates":[[[2.87463,47.52042],[2.84519,47.54493],[2.86023,47.554],[2.86267,47.54634],[2.87322,47.54512],[2.8739,47.55281],[2.90489,47.55621],[2.9143,47.56597],[2.95866,47.55738],[2.97775,47.56961],[3.02195,47.55626],[3.03462,47.56396],[3.06066,47.56951],[3.08056,47.58549],[3.10161,47.5881],[3.12403,47.57616],[3.11622,47.56925],[3.12303,47.53943],[3.13469,47.54263],[3.16519,47.5175],[3.18187,47.51832],[3.18556,47.5254],[3.19119,47.52041],[3.20347,47.52347],[3.23627,47.48823],[3.27546,47.4908],[3.28525,47.50394],[3.29652,47.4917],[3.30705,47.49472],[3.3403,47.48112],[3.33771,47.47044],[3.34646,47.46969],[3.34531,47.47856],[3.35538,47.4787],[3.37024,47.48841],[3.38015,47.48653],[3.39079,47.49746],[3.39042,47.50915],[3.42755,47.50637],[3.44618,47.51173],[3.4501,47.5],[3.45561,47.50256],[3.48828,47.49383],[3.49504,47.52097],[3.49013,47.5553],[3.49902,47.56083],[3.51103,47.55068],[3.5135,47.52767],[3.54,47.51566],[3.55245,47.50244],[3.58062,47.49786],[3.57517,47.48632],[3.58727,47.45619],[3.59532,47.457],[3.60028,47.46536],[3.61558,47.46672],[3.61568,47.4575],[3.62134,47.45563],[3.63416,47.45608],[3.667,47.4459],[3.67399,47.45023],[3.67936,47.44724],[3.67398,47.43349],[3.70225,47.42669],[3.71668,47.40321],[3.7263,47.39825],[3.74055,47.3965],[3.78418,47.40527],[3.78563,47.39032],[3.80218,47.38944],[3.81658,47.37863],[3.82834,47.38231],[3.8314,47.39266],[3.81995,47.40222],[3.83052,47.40824],[3.83746,47.40306],[3.84786,47.41238],[3.85242,47.43526],[3.86705,47.43462],[3.87991,47.42981],[3.89398,47.41433],[3.87678,47.39728],[3.86634,47.39805],[3.85943,47.3927],[3.8721,47.36576],[3.88677,47.36458],[3.90879,47.38206],[3.94424,47.38022],[3.94944,47.39432],[3.97271,47.37577],[3.96171,47.36652],[3.9677,47.36302],[3.97329,47.33145],[4.00208,47.31062],[4.0081,47.31489],[4.02141,47.31119],[4.02799,47.3142],[4.02833,47.32485],[4.0423,47.32951],[4.04409,47.33989],[4.0693,47.33748],[4.08181,47.34174],[4.09462,47.33687],[4.10609,47.33926],[4.11273,47.33416],[4.12995,47.35401],[4.14212,47.3558],[4.1249,47.33586],[4.12891,47.31745],[4.11411,47.30796],[4.12375,47.30317],[4.13389,47.3063],[4.11459,47.29261],[4.11643,47.27639],[4.1252,47.27364],[4.12027,47.26868],[4.12558,47.2475],[4.13595,47.23757],[4.17927,47.25457],[4.19244,47.2342],[4.22146,47.21969],[4.23195,47.19878],[4.21016,47.17997],[4.20983,47.15541],[4.19679,47.14825],[4.18506,47.15257],[4.13738,47.14271],[4.11507,47.14616],[4.11037,47.14287],[4.11935,47.13624],[4.10683,47.13],[4.11398,47.11913],[4.09495,47.12757],[4.08989,47.11618],[4.06001,47.12122],[4.04818,47.10997],[4.05376,47.09504],[4.03847,47.08046],[4.07343,47.05528],[4.05591,47.03661],[4.06167,47.02338],[4.05682,47.01374],[4.03227,46.99876],[3.99516,46.98531],[3.99505,46.97515],[4.00957,46.97098],[4.0394,46.98511],[4.04127,46.9737],[4.05572,46.95675],[4.03955,46.94813],[4.04836,46.93213],[4.03654,46.92779],[4.0393,46.90935],[4.04537,46.89986],[4.07014,46.89614],[4.09937,46.86691],[4.10089,46.85911],[4.04237,46.83412],[4.05828,46.82124],[4.06271,46.78936],[4.05528,46.77624],[4.03337,46.7876],[4.01899,46.77602],[3.99399,46.77886],[3.9734,46.76723],[3.96771,46.76911],[3.95337,46.75415],[3.92799,46.75055],[3.93336,46.7417],[3.92352,46.73847],[3.91276,46.74195],[3.91272,46.7342],[3.89881,46.7348],[3.88726,46.72717],[3.87636,46.73227],[3.87416,46.72672],[3.84454,46.72257],[3.84524,46.71716],[3.82906,46.70447],[3.80816,46.70572],[3.79733,46.7015],[3.78864,46.72118],[3.77688,46.72975],[3.78367,46.73605],[3.73894,46.75231],[3.65891,46.73765],[3.64863,46.74263],[3.63952,46.73944],[3.62337,46.7538],[3.60204,46.75124],[3.59268,46.76308],[3.57569,46.74952],[3.598,46.72398],[3.57731,46.71485],[3.57593,46.72288],[3.56882,46.71549],[3.54811,46.72232],[3.54821,46.70617],[3.56115,46.68862],[3.54648,46.67829],[3.53206,46.68879],[3.51442,46.68358],[3.51125,46.6756],[3.48635,46.66079],[3.48183,46.65067],[3.45729,46.65176],[3.44208,46.662],[3.45519,46.68251],[3.45305,46.69009],[3.43298,46.69334],[3.42842,46.70076],[3.43369,46.71223],[3.37855,46.71238],[3.36575,46.6896],[3.34671,46.68442],[3.31397,46.68875],[3.30092,46.7163],[3.26979,46.71674],[3.20443,46.67875],[3.16574,46.69173],[3.12978,46.7272],[3.06676,46.74548],[3.03722,46.77342],[3.03196,46.79743],[3.05887,46.82628],[3.05458,46.83877],[3.06953,46.85307],[3.06697,46.88178],[3.04999,46.90771],[3.07933,46.95512],[3.06258,46.9792],[3.07516,47.02932],[3.06382,47.04608],[3.02955,47.05839],[3.01934,47.06817],[3.03138,47.09248],[3.02809,47.12907],[3.01664,47.14087],[3.02063,47.15322],[3.00967,47.17905],[2.97888,47.22957],[2.98309,47.26081],[2.91231,47.30886],[2.87655,47.32193],[2.87162,47.34576],[2.91845,47.40553],[2.91989,47.42117],[2.93195,47.43946],[2.91406,47.4709],[2.89852,47.4816],[2.88845,47.50943],[2.87463,47.52042]]]}},{"type":"Feature","properties":{"code":"59","nom":"Nord"},"geometry":{"type":"MultiPolygon","coordinates":[[[[3.0404,50.15971],[3.06066,50.16695],[3.05965,50.1741],[3.09006,50.17176],[3.09491,50.16372],[3.06814,50.14734],[3.0735,50.13163],[3.03704,50.13031],[3.02518,50.11609],[3.01063,50.11281],[2.99932,50.11885],[3.00305,50.13007],[2.99349,50.137],[3.00437,50.15034],[3.00826,50.14739],[3.01315,50.15311],[3.04029,50.15174],[3.0404,50.15971]]],[[[2.06771,51.00651],[2.10296,51.00604],[2.12206,50.99048],[2.1081,51.00416],[2.14456,51.02104],[2.14851,51.03403],[2.15299,51.01992],[2.16792,51.02206],[2.17737,51.01519],[2.17089,51.01329],[2.17739,51.00679],[2.17892,51.01601],[2.19025,51.01804],[2.17511,51.02327],[2.19364,51.02779],[2.19518,51.03656],[2.17142,51.04434],[2.21401,51.03168],[2.34954,51.06059],[2.36944,51.0503],[2.39523,51.05033],[2.54554,51.089],[2.5629,51.06461],[2.57399,51.00352],[2.59253,50.99293],[2.6069,50.99091],[2.61072,50.97356],[2.63269,50.94601],[2.61766,50.94129],[2.61747,50.93432],[2.59001,50.9191],[2.5941,50.91437],[2.60406,50.9161],[2.60795,50.91008],[2.60482,50.88608],[2.61195,50.86341],[2.59906,50.84875],[2.61541,50.84827],[2.63498,50.81276],[2.65762,50.81365],[2.66932,50.82246],[2.67882,50.81332],[2.71274,50.81515],[2.7239,50.81012],[2.72582,50.79245],[2.73856,50.78059],[2.76215,50.77076],[2.75698,50.7631],[2.76419,50.76141],[2.76605,50.75452],[2.78336,50.75091],[2.78958,50.72626],[2.81949,50.7154],[2.84838,50.72292],[2.87017,50.70291],[2.88565,50.70661],[2.90607,50.69232],[2.90967,50.70272],[2.92233,50.70281],[2.92993,50.7104],[2.93165,50.7282],[2.94521,50.73159],[2.93741,50.74277],[2.95048,50.75129],[2.97335,50.75031],[3.0147,50.77404],[3.03386,50.76974],[3.05691,50.78063],[3.08871,50.77337],[3.10464,50.78181],[3.11092,50.79412],[3.12499,50.78644],[3.15079,50.79012],[3.154,50.77918],[3.18783,50.74012],[3.19913,50.73473],[3.19123,50.72441],[3.20841,50.71866],[3.20511,50.71245],[3.22063,50.70953],[3.24567,50.71317],[3.26117,50.70128],[3.26116,50.69139],[3.25371,50.68893],[3.26485,50.67612],[3.2413,50.66871],[3.24011,50.65856],[3.24937,50.64693],[3.24416,50.64054],[3.25902,50.63005],[3.2552,50.62258],[3.27947,50.59564],[3.27793,50.56432],[3.28537,50.56166],[3.27596,50.55854],[3.28277,50.55178],[3.27913,50.53797],[3.28874,50.52553],[3.32076,50.51871],[3.32886,50.50813],[3.36154,50.50384],[3.37622,50.49108],[3.43511,50.50966],[3.45008,50.50723],[3.45374,50.51924],[3.47439,50.53361],[3.51991,50.52332],[3.51556,50.51216],[3.49632,50.49868],[3.50098,50.487],[3.52232,50.49497],[3.56892,50.50096],[3.58534,50.49054],[3.60835,50.49673],[3.63241,50.47988],[3.64365,50.46321],[3.65444,50.46313],[3.66233,50.45617],[3.65934,50.44496],[3.66917,50.43865],[3.67484,50.40186],[3.67296,50.38789],[3.65715,50.36926],[3.66599,50.36379],[3.66464,50.34847],[3.67741,50.34028],[3.67481,50.33303],[3.69403,50.32148],[3.68541,50.3196],[3.71043,50.30317],[3.71966,50.30481],[3.70912,50.31897],[3.73056,50.31012],[3.73022,50.33004],[3.73923,50.34765],[3.7474,50.35093],[3.76355,50.34807],[3.76701,50.35316],[3.79878,50.35133],[3.80546,50.3557],[3.81367,50.35317],[3.81546,50.34479],[3.82411,50.34778],[3.82423,50.35344],[3.84741,50.3531],[3.85744,50.34825],[3.85741,50.34286],[3.87229,50.33794],[3.88762,50.34107],[3.88606,50.32706],[3.90005,50.32728],[3.9679,50.35037],[3.96583,50.34127],[3.97229,50.34766],[3.98595,50.34207],[3.99356,50.34866],[4.01713,50.35214],[4.02371,50.35889],[4.03953,50.34149],[4.05503,50.33856],[4.0558,50.3324],[4.07764,50.32101],[4.07889,50.30975],[4.09717,50.31321],[4.10974,50.30178],[4.11712,50.30405],[4.1252,50.28922],[4.12163,50.27768],[4.1247,50.27331],[4.13666,50.2743],[4.13538,50.25719],[4.16761,50.2597],[4.1639,50.2715],[4.14956,50.27466],[4.16268,50.28892],[4.17667,50.28443],[4.17683,50.2757],[4.20796,50.273],[4.2207,50.2522],[4.18174,50.23156],[4.17165,50.21692],[4.15164,50.21346],[4.16077,50.19781],[4.1481,50.1734],[4.15581,50.17198],[4.15567,50.16425],[4.13775,50.15162],[4.12693,50.13501],[4.15488,50.12842],[4.15751,50.13553],[4.19704,50.13531],[4.20342,50.12118],[4.19763,50.10702],[4.2064,50.10602],[4.20124,50.10076],[4.2249,50.08562],[4.23112,50.07127],[4.21783,50.06081],[4.19851,50.0564],[4.19398,50.04921],[4.17391,50.0456],[4.16222,50.04898],[4.14429,50.03073],[4.13578,50.01341],[4.14568,50.00391],[4.16208,50.00037],[4.15452,49.98479],[4.1338,49.97614],[4.08428,49.96932],[4.08366,49.979],[4.0567,49.98543],[4.03416,49.98578],[4.03112,49.98207],[4.01171,49.98549],[4.00537,49.99606],[3.9808,49.99358],[3.97945,50.00299],[3.9955,50.02768],[3.98231,50.04443],[3.95012,50.02705],[3.94428,50.0302],[3.9235,50.02643],[3.88743,50.00955],[3.88969,50.02264],[3.87832,50.02789],[3.88719,50.03043],[3.87503,50.03657],[3.84871,50.03907],[3.83553,50.04827],[3.81583,50.03904],[3.79921,50.0481],[3.77793,50.04599],[3.77443,50.05052],[3.74663,50.05279],[3.71518,50.06927],[3.66079,50.05196],[3.658,50.04448],[3.6486,50.04256],[3.66231,50.03911],[3.65976,50.02971],[3.64172,50.03873],[3.61412,50.02505],[3.59403,50.04415],[3.56719,50.05326],[3.54136,50.05521],[3.54321,50.04596],[3.53197,50.04576],[3.5252,50.03606],[3.50714,50.03578],[3.49066,50.01889],[3.42824,50.02207],[3.42103,50.02904],[3.41353,50.02568],[3.39891,50.03476],[3.38889,50.03067],[3.37736,50.03666],[3.35214,50.03575],[3.35079,50.02723],[3.34206,50.02654],[3.33711,50.0171],[3.31307,50.01995],[3.28591,50.0138],[3.27769,50.01434],[3.27102,50.02937],[3.2581,50.03201],[3.25824,50.02437],[3.22731,50.0325],[3.20898,50.01971],[3.17296,50.01131],[3.16699,50.02098],[3.14712,50.01806],[3.14994,50.02727],[3.11906,50.02617],[3.1164,50.03779],[3.09044,50.04731],[3.09303,50.05201],[3.08422,50.05571],[3.08754,50.06761],[3.09841,50.0682],[3.08767,50.07556],[3.08834,50.08307],[3.10336,50.07852],[3.11412,50.09216],[3.10493,50.11547],[3.09185,50.12063],[3.13657,50.14344],[3.11537,50.1478],[3.10096,50.16197],[3.11589,50.16781],[3.13758,50.16667],[3.14549,50.17898],[3.15638,50.18156],[3.14288,50.19105],[3.14716,50.19537],[3.1314,50.1994],[3.13905,50.21706],[3.17893,50.21988],[3.18786,50.23267],[3.17819,50.23253],[3.16907,50.24369],[3.14717,50.24622],[3.14909,50.26247],[3.14061,50.26502],[3.07891,50.27459],[3.06216,50.27182],[3.04858,50.27769],[3.0338,50.26592],[3.02677,50.26821],[3.02276,50.26342],[3.01072,50.26903],[3.0178,50.28459],[3.04099,50.28728],[3.04359,50.28253],[3.0551,50.28229],[3.0552,50.28976],[3.04775,50.29371],[3.05443,50.30207],[3.08431,50.31119],[3.06415,50.32413],[3.04997,50.34395],[3.03874,50.34402],[3.0291,50.35351],[3.00803,50.35859],[3.0089,50.3659],[2.99301,50.37998],[2.99486,50.38769],[2.98014,50.40314],[2.99239,50.39987],[3.01361,50.40298],[3.0298,50.41046],[3.03898,50.42318],[3.06852,50.42565],[3.08179,50.44373],[3.06551,50.4477],[3.06918,50.45769],[3.05465,50.45531],[3.03767,50.44164],[3.01635,50.44209],[3.01933,50.45215],[3.00695,50.45766],[3.01878,50.46691],[3.02081,50.48177],[3.0305,50.47973],[3.02818,50.48392],[2.96471,50.51278],[2.9299,50.50824],[2.91042,50.49988],[2.8867,50.50301],[2.89144,50.50442],[2.88208,50.50775],[2.87988,50.51589],[2.89055,50.52973],[2.88696,50.53766],[2.83091,50.52591],[2.80019,50.5276],[2.79447,50.54921],[2.81225,50.55007],[2.81663,50.5648],[2.80816,50.57917],[2.78943,50.58297],[2.80653,50.60676],[2.84343,50.62945],[2.84869,50.62552],[2.86974,50.6311],[2.8399,50.65725],[2.80919,50.66937],[2.79902,50.66312],[2.77444,50.66529],[2.76327,50.65907],[2.75918,50.65067],[2.79245,50.63367],[2.78582,50.62816],[2.75946,50.63513],[2.76064,50.62523],[2.75254,50.62788],[2.75754,50.61837],[2.74627,50.60471],[2.72472,50.61421],[2.71857,50.62232],[2.72377,50.6268],[2.71266,50.63214],[2.69672,50.62846],[2.69373,50.63368],[2.6741,50.63784],[2.67537,50.62547],[2.63052,50.61795],[2.62472,50.62573],[2.61418,50.62729],[2.6146,50.63483],[2.59548,50.63124],[2.58977,50.63752],[2.57712,50.63052],[2.5656,50.63261],[2.56388,50.62456],[2.55943,50.62943],[2.5451,50.62545],[2.53271,50.64345],[2.5165,50.63505],[2.48749,50.63213],[2.45039,50.65385],[2.42899,50.65702],[2.40321,50.68166],[2.38078,50.67103],[2.37413,50.6722],[2.36352,50.68464],[2.38739,50.7005],[2.35052,50.72006],[2.35222,50.72542],[2.33968,50.73067],[2.33898,50.74011],[2.37106,50.75592],[2.37696,50.75196],[2.41148,50.76673],[2.37188,50.78446],[2.36407,50.78001],[2.36938,50.77152],[2.34288,50.78109],[2.31433,50.78271],[2.31226,50.7872],[2.28858,50.77703],[2.28794,50.78701],[2.27015,50.78278],[2.2525,50.78812],[2.23473,50.8046],[2.21343,50.81055],[2.20354,50.84991],[2.15113,50.92951],[2.14973,50.94056],[2.1378,50.95137],[2.13534,50.96426],[2.09287,51.00278],[2.06771,51.00651]]]]}},{"type":"Feature","properties":{"code":"60","nom":"Oise"},"geometry":{"type":"MultiPolygon","coordinates":[[[[2.99023,49.21067],[2.98182,49.21643],[2.99775,49.22358],[3.00276,49.21884],[2.99023,49.21067]]],[[[1.78384,49.75831],[1.79096,49.75736],[1.79411,49.74986],[1.80898,49.75433],[1.82046,49.73905],[1.83945,49.73928],[1.83954,49.73091],[1.82056,49.72255],[1.82268,49.71766],[1.83759,49.71836],[1.83746,49.70995],[1.84899,49.70164],[1.8674,49.70405],[1.87473,49.69914],[1.89386,49.69899],[1.93265,49.71981],[1.94909,49.7008],[1.97126,49.71993],[1.97827,49.70971],[2.00148,49.71333],[2.00776,49.70826],[2.03472,49.71068],[2.03433,49.70501],[2.04614,49.70257],[2.04692,49.6969],[2.05939,49.69757],[2.06396,49.68774],[2.05016,49.68652],[2.06531,49.68315],[2.08133,49.69348],[2.08772,49.69012],[2.11382,49.69364],[2.12404,49.68803],[2.14025,49.69134],[2.1508,49.70206],[2.18206,49.70413],[2.20392,49.69809],[2.24717,49.70164],[2.24988,49.69715],[2.3018,49.68107],[2.31676,49.68765],[2.33526,49.67942],[2.33381,49.67075],[2.35134,49.66341],[2.36207,49.66674],[2.37086,49.65635],[2.38867,49.65584],[2.41271,49.66284],[2.44566,49.65298],[2.45365,49.63561],[2.46556,49.63799],[2.47226,49.63433],[2.46359,49.62831],[2.47812,49.62079],[2.50475,49.63947],[2.52113,49.62781],[2.54062,49.62461],[2.54093,49.61562],[2.56647,49.6188],[2.55881,49.60705],[2.57136,49.59695],[2.57785,49.59626],[2.58716,49.60379],[2.58386,49.60794],[2.59703,49.61168],[2.60512,49.608],[2.62595,49.61095],[2.62286,49.60569],[2.6328,49.59896],[2.62867,49.58194],[2.64963,49.57176],[2.67024,49.58111],[2.66856,49.6],[2.68787,49.61426],[2.68756,49.62475],[2.70798,49.62591],[2.7204,49.62106],[2.73914,49.62697],[2.78669,49.6121],[2.79949,49.62059],[2.78937,49.64018],[2.79725,49.66074],[2.84592,49.65942],[2.85019,49.66313],[2.84564,49.67071],[2.86235,49.67936],[2.85676,49.68275],[2.86116,49.6852],[2.87447,49.68582],[2.88879,49.67069],[2.88814,49.68719],[2.8662,49.70249],[2.88507,49.70955],[2.8817,49.71366],[2.89396,49.6989],[2.9054,49.69948],[2.91342,49.70951],[2.93021,49.68788],[2.92524,49.68332],[2.93784,49.68133],[2.93326,49.67623],[2.93962,49.6802],[2.9428,49.67469],[2.9487,49.67582],[2.95495,49.66531],[2.94844,49.69399],[2.97308,49.69719],[2.97743,49.70548],[2.99097,49.70417],[2.99058,49.70798],[3.00513,49.70272],[3.00596,49.69318],[3.01524,49.69286],[3.01631,49.68503],[3.02616,49.6803],[3.04053,49.69658],[3.05532,49.69401],[3.05925,49.70181],[3.05243,49.71377],[3.08346,49.71249],[3.07811,49.69319],[3.08377,49.69051],[3.09646,49.70548],[3.1184,49.70597],[3.12637,49.69665],[3.11435,49.68376],[3.12419,49.67688],[3.12771,49.66189],[3.12112,49.66022],[3.11727,49.66672],[3.1083,49.66466],[3.10799,49.65807],[3.09778,49.65668],[3.09645,49.65064],[3.10538,49.65025],[3.11286,49.6418],[3.10841,49.63692],[3.11277,49.63133],[3.09358,49.62255],[3.12201,49.60374],[3.13836,49.57597],[3.1261,49.57008],[3.13389,49.56],[3.13148,49.54338],[3.12592,49.5418],[3.12761,49.527],[3.12172,49.52075],[3.09633,49.5179],[3.09578,49.5134],[3.12386,49.48633],[3.12381,49.48012],[3.10553,49.47444],[3.10709,49.46823],[3.16619,49.44701],[3.16006,49.43927],[3.13188,49.43178],[3.12071,49.43158],[3.11074,49.43844],[3.09784,49.43723],[3.09313,49.43262],[3.0972,49.40507],[3.09042,49.39392],[3.0951,49.37654],[3.07903,49.37394],[3.07472,49.34897],[3.04223,49.33313],[3.04394,49.32875],[3.03633,49.32574],[3.02094,49.33653],[3.00151,49.34002],[2.99308,49.33292],[2.96844,49.32631],[2.96675,49.31756],[2.98015,49.31141],[2.97891,49.30579],[2.96786,49.30271],[2.9957,49.29626],[2.98712,49.28794],[2.99592,49.28673],[3.00506,49.29288],[3.02097,49.28967],[3.01707,49.28003],[3.02536,49.2879],[3.03763,49.28639],[3.03615,49.2788],[3.02689,49.27553],[3.02585,49.25993],[3.04191,49.23038],[3.03693,49.22223],[3.03178,49.22676],[3.03217,49.22163],[3.02167,49.21621],[3.01441,49.22241],[3.00382,49.22143],[3.01494,49.23],[3.00339,49.23502],[2.96476,49.23259],[2.95866,49.22696],[2.97065,49.21429],[2.96627,49.20532],[2.9738,49.19723],[2.96768,49.19178],[2.97351,49.18689],[2.98372,49.1842],[2.99166,49.19393],[2.99643,49.18663],[3.01627,49.18238],[3.02298,49.16994],[3.0379,49.16921],[3.02602,49.19297],[3.00669,49.1854],[2.99727,49.19895],[3.00296,49.20296],[2.99542,49.20907],[3.00049,49.21363],[3.01879,49.21662],[3.03558,49.20488],[3.04568,49.2099],[3.06495,49.2047],[3.05677,49.19665],[3.073,49.19646],[3.08504,49.19045],[3.08157,49.16479],[3.09259,49.15488],[3.09898,49.15488],[3.08403,49.17274],[3.10074,49.1975],[3.11673,49.18952],[3.11673,49.17647],[3.10827,49.16637],[3.116,49.16987],[3.12135,49.16157],[3.14808,49.16075],[3.12493,49.14845],[3.12706,49.14507],[3.1055,49.14688],[3.11531,49.13908],[3.11123,49.13191],[3.09343,49.14206],[3.09669,49.13156],[3.08398,49.12089],[3.06969,49.11752],[3.05659,49.10213],[3.06501,49.08515],[3.03279,49.08907],[3.03157,49.08561],[3.00852,49.09151],[3.00605,49.08645],[3.00088,49.08953],[2.99124,49.08401],[2.98284,49.07132],[2.97535,49.0742],[2.96873,49.09146],[2.95674,49.08541],[2.94583,49.08808],[2.94059,49.07713],[2.93307,49.08095],[2.92331,49.07758],[2.90151,49.08537],[2.89495,49.07706],[2.88761,49.07947],[2.87032,49.07019],[2.85465,49.07018],[2.84495,49.08488],[2.82954,49.08383],[2.80925,49.09754],[2.78399,49.08864],[2.78887,49.08287],[2.76834,49.08326],[2.78708,49.0755],[2.77793,49.07023],[2.75355,49.06074],[2.73501,49.06045],[2.72436,49.08046],[2.69781,49.0644],[2.68991,49.06757],[2.69502,49.07474],[2.67739,49.08829],[2.65021,49.10055],[2.64124,49.09909],[2.63327,49.10838],[2.623,49.09559],[2.61034,49.09494],[2.59787,49.08179],[2.58302,49.08065],[2.57868,49.09195],[2.55817,49.09839],[2.55329,49.1246],[2.54716,49.11621],[2.53976,49.11645],[2.5408,49.12225],[2.53299,49.11938],[2.53106,49.0996],[2.48993,49.10636],[2.50326,49.11758],[2.47547,49.12832],[2.47158,49.13543],[2.46151,49.13594],[2.45823,49.14114],[2.4354,49.13394],[2.4409,49.1458],[2.4131,49.15235],[2.39129,49.14935],[2.37637,49.15904],[2.3593,49.14735],[2.32178,49.18443],[2.31093,49.18641],[2.3012,49.18389],[2.29943,49.17584],[2.2888,49.17071],[2.28641,49.15992],[2.22958,49.15129],[2.21656,49.15469],[2.23541,49.16703],[2.21865,49.18068],[2.19552,49.17318],[2.1761,49.17603],[2.18225,49.17038],[2.16879,49.16395],[2.15775,49.1726],[2.16457,49.17967],[2.14705,49.1881],[2.13695,49.17905],[2.13521,49.19118],[2.1281,49.19341],[2.11334,49.18654],[2.10966,49.19073],[2.09771,49.18917],[2.08946,49.19366],[2.09117,49.20854],[2.08283,49.20569],[2.08089,49.21045],[2.04753,49.19859],[2.03356,49.18811],[2.02178,49.18868],[2.00184,49.17594],[1.97344,49.1839],[1.94982,49.17035],[1.92451,49.17352],[1.88257,49.16249],[1.87677,49.17531],[1.84449,49.17043],[1.83647,49.16454],[1.8343,49.17564],[1.82691,49.17961],[1.81169,49.17361],[1.81384,49.17802],[1.80355,49.17996],[1.80258,49.18493],[1.79099,49.17986],[1.78481,49.18583],[1.75551,49.17459],[1.74269,49.17979],[1.73744,49.1946],[1.72682,49.19489],[1.71477,49.20734],[1.73369,49.21096],[1.73411,49.22128],[1.74045,49.22344],[1.71211,49.23302],[1.71264,49.24119],[1.70436,49.2322],[1.69904,49.23487],[1.70694,49.2614],[1.73672,49.27023],[1.75316,49.26802],[1.75869,49.27236],[1.7669,49.25204],[1.79055,49.24657],[1.80266,49.27343],[1.79323,49.27433],[1.79754,49.28845],[1.78441,49.29323],[1.77249,49.29109],[1.77528,49.30572],[1.76748,49.32048],[1.77424,49.33715],[1.75818,49.35622],[1.76096,49.36621],[1.72047,49.39398],[1.74038,49.40568],[1.71897,49.40345],[1.71394,49.40922],[1.72864,49.43606],[1.72484,49.44139],[1.73353,49.44126],[1.73909,49.44934],[1.75146,49.45254],[1.74773,49.4586],[1.77586,49.47133],[1.77225,49.48493],[1.78863,49.49014],[1.79022,49.50347],[1.77186,49.51285],[1.75945,49.5114],[1.74523,49.48885],[1.73957,49.49965],[1.71639,49.50393],[1.74134,49.51899],[1.73561,49.52481],[1.7483,49.53845],[1.72348,49.5439],[1.72983,49.56129],[1.71401,49.57757],[1.70335,49.57769],[1.69769,49.57221],[1.69952,49.58041],[1.69067,49.58],[1.72004,49.5816],[1.72162,49.58881],[1.70941,49.58671],[1.70846,49.5949],[1.69373,49.60107],[1.72161,49.62199],[1.71725,49.63307],[1.69868,49.6439],[1.72157,49.65855],[1.72313,49.67254],[1.75218,49.68096],[1.75112,49.69439],[1.74009,49.70135],[1.71474,49.68238],[1.70451,49.68093],[1.68958,49.69479],[1.71547,49.7086],[1.71277,49.73389],[1.72323,49.73008],[1.74546,49.73856],[1.73915,49.74905],[1.75029,49.76373],[1.76265,49.75691],[1.78384,49.75831]]]]}},{"type":"Feature","properties":{"code":"61","nom":"Orne"},"geometry":{"type":"Polygon","coordinates":[[[-0.84094,48.75222],[-0.82238,48.7526],[-0.80823,48.76011],[-0.78063,48.78665],[-0.71256,48.80069],[-0.68217,48.82183],[-0.7057,48.83785],[-0.69272,48.8473],[-0.68072,48.84064],[-0.67225,48.8437],[-0.65604,48.83751],[-0.64344,48.84095],[-0.64542,48.82721],[-0.624,48.82701],[-0.58075,48.83801],[-0.57218,48.83014],[-0.55967,48.83428],[-0.54994,48.8474],[-0.52331,48.85027],[-0.5019,48.84649],[-0.49405,48.84857],[-0.49658,48.85831],[-0.47622,48.85878],[-0.46375,48.87137],[-0.43875,48.87293],[-0.43388,48.86886],[-0.43223,48.87484],[-0.42521,48.87226],[-0.42613,48.86567],[-0.40618,48.86984],[-0.40418,48.86081],[-0.38621,48.84526],[-0.38119,48.84947],[-0.37607,48.84559],[-0.35961,48.84747],[-0.36104,48.84234],[-0.37464,48.84049],[-0.36809,48.84024],[-0.37331,48.83486],[-0.36412,48.83512],[-0.34624,48.822],[-0.32739,48.83909],[-0.33594,48.84582],[-0.32852,48.8576],[-0.30545,48.85822],[-0.29855,48.84916],[-0.26218,48.85359],[-0.26053,48.84945],[-0.24245,48.84936],[-0.21287,48.84008],[-0.2044,48.84644],[-0.19526,48.83818],[-0.17842,48.83545],[-0.1792,48.82922],[-0.17012,48.82475],[-0.12751,48.81627],[-0.14634,48.83445],[-0.12335,48.83957],[-0.12707,48.84593],[-0.11409,48.83946],[-0.08293,48.84498],[-0.06745,48.84063],[-0.05901,48.85349],[-0.03493,48.86606],[-0.02669,48.87635],[-0.01257,48.87757],[-0.00693,48.87235],[-0.00706,48.88539],[0.05609,48.9016],[0.06665,48.92744],[0.08072,48.93798],[0.10068,48.93437],[0.12761,48.95222],[0.14342,48.94519],[0.1539,48.92438],[0.16489,48.92567],[0.17962,48.92964],[0.19506,48.94369],[0.21746,48.9464],[0.23258,48.93931],[0.24227,48.94435],[0.23921,48.95207],[0.24632,48.96003],[0.27752,48.96531],[0.27748,48.94998],[0.30948,48.95388],[0.33323,48.94278],[0.3565,48.94955],[0.37731,48.97255],[0.3843,48.96665],[0.40609,48.96346],[0.40015,48.95275],[0.41281,48.95063],[0.39148,48.92818],[0.38619,48.91041],[0.42157,48.89865],[0.42109,48.88676],[0.44146,48.88543],[0.4388,48.88867],[0.45004,48.89102],[0.44311,48.88128],[0.45736,48.87976],[0.46315,48.8885],[0.4949,48.87862],[0.52088,48.88079],[0.55145,48.87443],[0.57153,48.89072],[0.58465,48.89209],[0.59718,48.88499],[0.58659,48.8814],[0.58963,48.87259],[0.61503,48.87765],[0.6024,48.86249],[0.61212,48.85752],[0.60939,48.85333],[0.63621,48.85428],[0.62017,48.84688],[0.60787,48.83249],[0.6651,48.8099],[0.68934,48.7934],[0.73194,48.78546],[0.75843,48.76797],[0.74948,48.76065],[0.77496,48.73753],[0.76049,48.7282],[0.75912,48.72022],[0.74359,48.717],[0.72876,48.70685],[0.7318,48.7032],[0.7527,48.70411],[0.76605,48.6968],[0.76148,48.68009],[0.76913,48.67854],[0.76872,48.6699],[0.78221,48.66652],[0.79538,48.67521],[0.81482,48.67017],[0.80969,48.66244],[0.81878,48.65834],[0.82518,48.64862],[0.8219,48.63607],[0.82996,48.63227],[0.81717,48.61546],[0.8224,48.60888],[0.84705,48.60952],[0.85064,48.58263],[0.86909,48.57257],[0.89358,48.5718],[0.92571,48.55965],[0.93876,48.55056],[0.9251,48.53564],[0.96774,48.52388],[0.954,48.50384],[0.94155,48.49869],[0.9554,48.49265],[0.95629,48.48228],[0.93571,48.47555],[0.93898,48.46083],[0.95591,48.44441],[0.97339,48.44368],[0.97642,48.43877],[0.9445,48.41729],[0.95,48.39941],[0.92897,48.39043],[0.90903,48.37026],[0.90089,48.37384],[0.88371,48.35671],[0.87578,48.3553],[0.87161,48.35971],[0.85196,48.34866],[0.83993,48.35272],[0.84238,48.34669],[0.82854,48.34246],[0.81221,48.34948],[0.8069,48.34415],[0.79061,48.34271],[0.76887,48.32194],[0.76894,48.31322],[0.75567,48.29982],[0.77835,48.30327],[0.80707,48.28973],[0.79644,48.28711],[0.78588,48.27114],[0.83048,48.21071],[0.80562,48.20535],[0.80879,48.19761],[0.75774,48.17989],[0.73783,48.18907],[0.73015,48.20052],[0.72364,48.19814],[0.71579,48.21467],[0.70449,48.21892],[0.69992,48.23172],[0.68629,48.24067],[0.68295,48.25488],[0.65234,48.26396],[0.63977,48.26103],[0.6311,48.25258],[0.63848,48.23561],[0.63191,48.23462],[0.62361,48.24531],[0.613,48.24205],[0.53605,48.24967],[0.5329,48.26428],[0.51313,48.26688],[0.49459,48.28196],[0.5074,48.29494],[0.48995,48.30936],[0.4805,48.29859],[0.46628,48.30587],[0.43133,48.30664],[0.42046,48.32111],[0.40622,48.31462],[0.39554,48.32047],[0.3826,48.33383],[0.38063,48.34306],[0.38814,48.3497],[0.37386,48.38697],[0.37173,48.41045],[0.3809,48.41583],[0.38244,48.4249],[0.35675,48.45774],[0.33875,48.4616],[0.32678,48.47169],[0.30909,48.47254],[0.30072,48.48049],[0.27464,48.47921],[0.26475,48.4847],[0.2491,48.47397],[0.21332,48.47358],[0.19049,48.46186],[0.17316,48.46522],[0.17114,48.44943],[0.14557,48.45731],[0.15779,48.44081],[0.11718,48.43603],[0.10014,48.41013],[0.07055,48.40909],[0.05414,48.39195],[0.06078,48.37962],[0.01531,48.38167],[-0.00243,48.39736],[-0.01865,48.3945],[-0.02077,48.3865],[-0.0348,48.38634],[-0.03657,48.38063],[-0.0506,48.38016],[-0.05069,48.37521],[-0.05796,48.38747],[-0.0527,48.39298],[-0.05765,48.42054],[-0.05135,48.45293],[-0.07053,48.45801],[-0.07301,48.45053],[-0.10586,48.44726],[-0.14688,48.45644],[-0.15601,48.49584],[-0.17209,48.50214],[-0.1725,48.51054],[-0.16313,48.51767],[-0.14538,48.52055],[-0.1446,48.52775],[-0.17945,48.54084],[-0.20808,48.56414],[-0.21733,48.55808],[-0.24264,48.56799],[-0.24636,48.55842],[-0.26265,48.54864],[-0.24131,48.53667],[-0.25094,48.52673],[-0.26125,48.52685],[-0.27453,48.51781],[-0.26818,48.51688],[-0.27155,48.50745],[-0.2854,48.50677],[-0.28808,48.51934],[-0.29349,48.51504],[-0.32024,48.52292],[-0.33591,48.50933],[-0.33586,48.5019],[-0.34854,48.50129],[-0.35582,48.49567],[-0.34937,48.48885],[-0.35315,48.48377],[-0.36819,48.48786],[-0.3716,48.49579],[-0.39335,48.50107],[-0.39514,48.5103],[-0.4238,48.50677],[-0.44722,48.51538],[-0.47013,48.51194],[-0.4782,48.50157],[-0.49332,48.50177],[-0.5097,48.50901],[-0.51641,48.49813],[-0.53736,48.49049],[-0.55172,48.47312],[-0.55964,48.47211],[-0.56481,48.47725],[-0.57332,48.46879],[-0.59533,48.47263],[-0.65107,48.44395],[-0.65974,48.4691],[-0.65572,48.47407],[-0.66624,48.48589],[-0.67662,48.48405],[-0.68534,48.47715],[-0.68172,48.47095],[-0.69177,48.46811],[-0.70207,48.46721],[-0.705,48.47559],[-0.71496,48.46915],[-0.7311,48.47282],[-0.73586,48.46112],[-0.71489,48.45435],[-0.7151,48.44895],[-0.76492,48.43666],[-0.77979,48.44607],[-0.77787,48.46541],[-0.79661,48.46625],[-0.79918,48.45894],[-0.81274,48.45492],[-0.81476,48.47205],[-0.83255,48.47938],[-0.84636,48.49952],[-0.86048,48.50231],[-0.84702,48.52155],[-0.82713,48.53053],[-0.8059,48.55077],[-0.79016,48.5517],[-0.77417,48.56268],[-0.76962,48.58994],[-0.75174,48.60132],[-0.75349,48.62075],[-0.73874,48.62259],[-0.74221,48.62727],[-0.76208,48.63101],[-0.77336,48.65748],[-0.75999,48.66428],[-0.75492,48.67457],[-0.74329,48.68093],[-0.73627,48.6795],[-0.73474,48.68552],[-0.79035,48.70407],[-0.81775,48.73109],[-0.82846,48.73358],[-0.83492,48.72733],[-0.84922,48.73076],[-0.85209,48.74575],[-0.84094,48.75222]]]}},{"type":"Feature","properties":{"code":"62","nom":"Pas-de-Calais"},"geometry":{"type":"Polygon","coordinates":[[[2.06771,51.00651],[2.09287,51.00278],[2.13534,50.96426],[2.1378,50.95137],[2.14973,50.94056],[2.15113,50.92951],[2.20354,50.84991],[2.21343,50.81055],[2.23473,50.8046],[2.2525,50.78812],[2.27015,50.78278],[2.28794,50.78701],[2.28858,50.77703],[2.31226,50.7872],[2.31433,50.78271],[2.34288,50.78109],[2.36938,50.77152],[2.36407,50.78001],[2.37188,50.78446],[2.41148,50.76673],[2.37696,50.75196],[2.37106,50.75592],[2.33898,50.74011],[2.33968,50.73067],[2.35222,50.72542],[2.35052,50.72006],[2.38739,50.7005],[2.36352,50.68464],[2.37413,50.6722],[2.38078,50.67103],[2.40321,50.68166],[2.42899,50.65702],[2.45039,50.65385],[2.48749,50.63213],[2.5165,50.63505],[2.53271,50.64345],[2.5451,50.62545],[2.55943,50.62943],[2.56388,50.62456],[2.5656,50.63261],[2.57712,50.63052],[2.58977,50.63752],[2.59548,50.63124],[2.6146,50.63483],[2.61418,50.62729],[2.62472,50.62573],[2.63052,50.61795],[2.67537,50.62547],[2.6741,50.63784],[2.69373,50.63368],[2.69672,50.62846],[2.71266,50.63214],[2.72377,50.6268],[2.71857,50.62232],[2.72472,50.61421],[2.74627,50.60471],[2.75754,50.61837],[2.75254,50.62788],[2.76064,50.62523],[2.75946,50.63513],[2.78582,50.62816],[2.79245,50.63367],[2.75918,50.65067],[2.76327,50.65907],[2.77444,50.66529],[2.79902,50.66312],[2.80919,50.66937],[2.8399,50.65725],[2.86974,50.6311],[2.84869,50.62552],[2.84343,50.62945],[2.80653,50.60676],[2.78943,50.58297],[2.80816,50.57917],[2.81663,50.5648],[2.81225,50.55007],[2.79447,50.54921],[2.80019,50.5276],[2.83091,50.52591],[2.88696,50.53766],[2.89055,50.52973],[2.87988,50.51589],[2.88208,50.50775],[2.89144,50.50442],[2.8867,50.50301],[2.91042,50.49988],[2.9299,50.50824],[2.96471,50.51278],[3.02818,50.48392],[3.0305,50.47973],[3.02081,50.48177],[3.01878,50.46691],[3.00695,50.45766],[3.01933,50.45215],[3.01635,50.44209],[3.03767,50.44164],[3.05465,50.45531],[3.06918,50.45769],[3.06551,50.4477],[3.08179,50.44373],[3.06852,50.42565],[3.03898,50.42318],[3.0298,50.41046],[3.01361,50.40298],[2.99239,50.39987],[2.98014,50.40314],[2.99486,50.38769],[2.99301,50.37998],[3.0089,50.3659],[3.00803,50.35859],[3.0291,50.35351],[3.03874,50.34402],[3.04997,50.34395],[3.06415,50.32413],[3.08431,50.31119],[3.05443,50.30207],[3.04775,50.29371],[3.0552,50.28976],[3.0551,50.28229],[3.04359,50.28253],[3.04099,50.28728],[3.0178,50.28459],[3.01072,50.26903],[3.02276,50.26342],[3.02677,50.26821],[3.0338,50.26592],[3.04858,50.27769],[3.06216,50.27182],[3.07891,50.27459],[3.14061,50.26502],[3.14909,50.26247],[3.14717,50.24622],[3.16907,50.24369],[3.17819,50.23253],[3.18671,50.23493],[3.18828,50.2285],[3.17403,50.21866],[3.13905,50.21706],[3.1314,50.1994],[3.14716,50.19537],[3.14288,50.19105],[3.15638,50.18156],[3.14549,50.17898],[3.13758,50.16667],[3.11589,50.16781],[3.10096,50.16197],[3.11537,50.1478],[3.13657,50.14344],[3.09185,50.12063],[3.10493,50.11547],[3.11412,50.09216],[3.10336,50.07852],[3.08834,50.08307],[3.08767,50.07556],[3.09841,50.0682],[3.08605,50.06613],[3.08592,50.04819],[3.07449,50.0453],[3.03295,50.05509],[3.03432,50.05809],[3.0247,50.05419],[3.01444,50.05915],[2.97177,50.04156],[2.96883,50.04839],[2.94544,50.05417],[2.93289,50.04336],[2.92073,50.04891],[2.91624,50.0349],[2.89631,50.03702],[2.87533,50.02738],[2.87756,50.02079],[2.8638,50.0201],[2.84953,50.02932],[2.85838,50.03499],[2.86995,50.03494],[2.87759,50.04241],[2.86395,50.06067],[2.85533,50.06244],[2.85784,50.07739],[2.84809,50.07833],[2.83361,50.07152],[2.83355,50.06388],[2.82235,50.06752],[2.81162,50.05812],[2.80755,50.06242],[2.78896,50.04531],[2.78566,50.05116],[2.7749,50.04239],[2.75294,50.03897],[2.74255,50.04823],[2.76375,50.0606],[2.75888,50.0682],[2.78184,50.0911],[2.77694,50.11594],[2.76257,50.10956],[2.72958,50.12595],[2.70882,50.12849],[2.71391,50.10982],[2.69569,50.10224],[2.71871,50.08809],[2.70463,50.08122],[2.68222,50.09517],[2.67208,50.09363],[2.65492,50.09996],[2.64755,50.09441],[2.63869,50.09713],[2.62814,50.1093],[2.5929,50.10655],[2.59146,50.11244],[2.57567,50.11333],[2.56935,50.12063],[2.58663,50.13736],[2.57817,50.13989],[2.56837,50.13596],[2.55727,50.14299],[2.54557,50.13546],[2.54796,50.1235],[2.5331,50.11404],[2.51495,50.14081],[2.4554,50.13109],[2.42966,50.08818],[2.41862,50.08766],[2.41451,50.10064],[2.40018,50.10196],[2.40333,50.10573],[2.39202,50.11176],[2.39012,50.10601],[2.37546,50.10925],[2.38687,50.13469],[2.38245,50.13936],[2.39346,50.14692],[2.38898,50.15469],[2.39908,50.15639],[2.40327,50.1648],[2.41335,50.16236],[2.42016,50.17585],[2.43717,50.18101],[2.45082,50.17852],[2.49569,50.19456],[2.4852,50.20779],[2.47414,50.20844],[2.46114,50.21672],[2.45073,50.23089],[2.41702,50.22813],[2.4096,50.23541],[2.40343,50.23385],[2.39222,50.22455],[2.38232,50.22607],[2.3709,50.20887],[2.35886,50.20613],[2.36005,50.21463],[2.33267,50.23805],[2.31471,50.23476],[2.3316,50.22209],[2.32755,50.21328],[2.32039,50.22021],[2.29875,50.21197],[2.2698,50.22876],[2.24629,50.21096],[2.24326,50.21436],[2.22178,50.20895],[2.2263,50.21408],[2.21307,50.21834],[2.19193,50.20905],[2.17415,50.2089],[2.14976,50.19043],[2.14603,50.19923],[2.12874,50.2099],[2.12069,50.21102],[2.11456,50.20286],[2.09464,50.20831],[2.08767,50.20043],[2.08451,50.21652],[2.06382,50.23445],[2.07557,50.25192],[2.04756,50.25675],[2.02645,50.26955],[2.01117,50.26745],[1.96877,50.28179],[1.96071,50.29026],[1.94972,50.28591],[1.93145,50.29906],[1.96174,50.3123],[1.96427,50.32174],[1.95443,50.32863],[1.93813,50.3301],[1.91927,50.31161],[1.90795,50.31156],[1.89811,50.31392],[1.89793,50.31836],[1.88138,50.31803],[1.87203,50.32546],[1.87258,50.33395],[1.85843,50.3361],[1.8517,50.34291],[1.83231,50.34471],[1.8051,50.35956],[1.77878,50.36187],[1.76171,50.36161],[1.73526,50.35343],[1.74027,50.35121],[1.72811,50.34588],[1.69484,50.33888],[1.68972,50.34365],[1.69132,50.33863],[1.66538,50.32999],[1.66255,50.33798],[1.64517,50.33922],[1.64623,50.34835],[1.63138,50.36062],[1.62962,50.36942],[1.61171,50.36999],[1.6009,50.37797],[1.58315,50.3762],[1.5676,50.39453],[1.5566,50.39625],[1.58541,50.53735],[1.59381,50.53746],[1.59897,50.52692],[1.60941,50.52686],[1.63729,50.50967],[1.65917,50.50778],[1.63576,50.51312],[1.6265,50.52004],[1.62066,50.5337],[1.61181,50.53931],[1.60863,50.5362],[1.57661,50.57223],[1.57623,50.64099],[1.56071,50.69968],[1.57325,50.71648],[1.5625,50.7244],[1.57476,50.7278],[1.57436,50.71728],[1.58632,50.7313],[1.59082,50.72863],[1.58205,50.72354],[1.59686,50.7275],[1.60254,50.7216],[1.59129,50.73049],[1.5941,50.75023],[1.6056,50.7676],[1.60333,50.80435],[1.57787,50.85304],[1.58185,50.87104],[1.6421,50.87887],[1.66734,50.89227],[1.71226,50.92941],[1.78072,50.95487],[1.84435,50.96759],[1.84838,50.96091],[1.85476,50.96324],[1.84889,50.96721],[1.86624,50.96962],[1.8527,50.97095],[1.87116,50.97493],[1.88969,50.97231],[1.91578,50.98408],[2.04256,50.99709],[2.04871,51.00372],[2.06771,51.00651]],[[3.0404,50.15971],[3.04029,50.15174],[3.01315,50.15311],[3.00826,50.14739],[3.00437,50.15034],[2.99349,50.137],[3.00305,50.13007],[2.99932,50.11885],[3.01063,50.11281],[3.02518,50.11609],[3.03704,50.13031],[3.0735,50.13163],[3.06814,50.14734],[3.09491,50.16372],[3.09006,50.17176],[3.05965,50.1741],[3.06066,50.16695],[3.0404,50.15971]]]}},{"type":"Feature","properties":{"code":"63","nom":"Puy-de-D\xF4me"},"geometry":{"type":"Polygon","coordinates":[[[2.56538,46.14303],[2.59138,46.12678],[2.60693,46.13035],[2.64069,46.11848],[2.65496,46.12438],[2.66135,46.14258],[2.66854,46.14431],[2.66816,46.15477],[2.67638,46.15706],[2.67492,46.17204],[2.70172,46.18069],[2.7231,46.18152],[2.72192,46.18768],[2.7322,46.19426],[2.72072,46.21176],[2.73305,46.22332],[2.74922,46.21935],[2.75894,46.20973],[2.76971,46.21176],[2.78678,46.19865],[2.80876,46.19469],[2.82331,46.21995],[2.81916,46.24179],[2.83791,46.2512],[2.84497,46.2487],[2.85976,46.25659],[2.86481,46.24951],[2.89092,46.25361],[2.90437,46.24855],[2.92143,46.25031],[2.94539,46.24082],[2.93162,46.23289],[2.93516,46.22401],[2.94112,46.22496],[2.9147,46.21404],[2.90959,46.20349],[2.92074,46.19089],[2.91327,46.17666],[2.94328,46.16814],[2.95199,46.17133],[2.9624,46.13024],[2.97163,46.12183],[2.98499,46.12512],[3.00104,46.12031],[3.01428,46.10291],[3.03846,46.1074],[3.04808,46.10031],[3.06738,46.10281],[3.09062,46.11453],[3.10112,46.09309],[3.09828,46.08361],[3.11557,46.08071],[3.13091,46.0694],[3.17533,46.06593],[3.184,46.075],[3.21451,46.07494],[3.22136,46.06675],[3.22905,46.07051],[3.23365,46.06355],[3.24483,46.06213],[3.30239,46.06577],[3.30127,46.06097],[3.31623,46.06201],[3.31562,46.05711],[3.33535,46.05478],[3.33205,46.0441],[3.37237,46.05476],[3.38143,46.06556],[3.40199,46.06609],[3.41856,46.07367],[3.43369,46.06079],[3.45935,46.06103],[3.46024,46.05072],[3.47188,46.03918],[3.46183,46.03995],[3.46803,46.02465],[3.46414,46.00817],[3.50642,46.01696],[3.52531,46.01208],[3.52338,46.02165],[3.5374,46.02194],[3.54354,46.01315],[3.59209,46.024],[3.6256,45.98539],[3.63199,45.96107],[3.64161,45.96658],[3.67676,45.95806],[3.68278,45.94049],[3.69402,45.93073],[3.72345,45.92187],[3.75257,45.89113],[3.75437,45.88603],[3.74524,45.8843],[3.73888,45.87232],[3.71637,45.87125],[3.72012,45.86112],[3.72852,45.86251],[3.71877,45.84831],[3.72844,45.83151],[3.71732,45.81927],[3.72175,45.81364],[3.71162,45.79955],[3.68858,45.79114],[3.70082,45.78141],[3.71083,45.78318],[3.73182,45.7745],[3.7389,45.76681],[3.72763,45.75594],[3.73226,45.75102],[3.74591,45.74225],[3.75861,45.74632],[3.76816,45.72825],[3.78085,45.72435],[3.77695,45.69084],[3.81794,45.64653],[3.82345,45.63242],[3.85877,45.62471],[3.86092,45.61552],[3.88172,45.60354],[3.90667,45.5978],[3.93502,45.57838],[3.95435,45.55596],[3.94572,45.54516],[3.96147,45.5061],[3.96578,45.50036],[3.98469,45.49523],[3.98296,45.48208],[3.96667,45.47205],[3.9734,45.4599],[3.96876,45.45196],[3.97411,45.44927],[3.96019,45.44318],[3.96258,45.43518],[3.91959,45.42464],[3.90833,45.41765],[3.90958,45.41187],[3.89854,45.40982],[3.88923,45.39452],[3.89662,45.35628],[3.87347,45.35513],[3.85397,45.35997],[3.85083,45.36828],[3.83756,45.3658],[3.83585,45.38301],[3.82236,45.37987],[3.80494,45.3921],[3.79141,45.38477],[3.7854,45.37018],[3.79,45.35388],[3.77949,45.35477],[3.77582,45.3487],[3.7574,45.35739],[3.74077,45.35276],[3.73011,45.36144],[3.6999,45.35946],[3.69709,45.36549],[3.70744,45.37387],[3.6905,45.37335],[3.6907,45.38005],[3.68341,45.37798],[3.68011,45.38419],[3.67395,45.38034],[3.67021,45.38376],[3.66374,45.36167],[3.64482,45.35934],[3.64494,45.35101],[3.61863,45.33771],[3.5869,45.36129],[3.58805,45.37523],[3.57058,45.4021],[3.55617,45.39163],[3.55406,45.39724],[3.53059,45.40149],[3.52994,45.39822],[3.52437,45.40633],[3.52091,45.40241],[3.50647,45.41125],[3.50156,45.42699],[3.47978,45.4211],[3.46096,45.40649],[3.46361,45.40188],[3.43029,45.40208],[3.41966,45.39741],[3.40611,45.40339],[3.40228,45.39992],[3.39021,45.40363],[3.37828,45.40077],[3.35595,45.4227],[3.34085,45.42136],[3.33412,45.39825],[3.32758,45.39682],[3.32011,45.41317],[3.29817,45.4203],[3.29003,45.40066],[3.25407,45.38868],[3.23794,45.39363],[3.22173,45.38179],[3.21865,45.36949],[3.2019,45.3711],[3.19226,45.36682],[3.1945,45.36257],[3.18139,45.36469],[3.1746,45.35533],[3.18041,45.35146],[3.14658,45.35022],[3.13969,45.35516],[3.13078,45.35145],[3.09646,45.35204],[3.08736,45.33864],[3.06526,45.33253],[3.06562,45.31553],[3.05233,45.30279],[3.02179,45.29537],[3.01671,45.28712],[2.99903,45.29068],[2.96863,45.3074],[2.94862,45.30913],[2.92576,45.34264],[2.92247,45.36811],[2.90067,45.37078],[2.89978,45.37691],[2.8832,45.3841],[2.86773,45.37608],[2.85238,45.39234],[2.83058,45.38965],[2.81389,45.4015],[2.80085,45.39225],[2.7857,45.38961],[2.78483,45.38467],[2.76122,45.38602],[2.7422,45.39334],[2.71434,45.38183],[2.70126,45.39127],[2.70392,45.39886],[2.69529,45.3979],[2.69318,45.40588],[2.68073,45.40717],[2.67994,45.42269],[2.6897,45.43003],[2.68846,45.43769],[2.67819,45.44011],[2.66262,45.43413],[2.65035,45.44329],[2.62453,45.4439],[2.62231,45.46851],[2.61636,45.4691],[2.60365,45.45002],[2.58482,45.45015],[2.56386,45.46558],[2.53653,45.45655],[2.54396,45.47898],[2.51968,45.48325],[2.50841,45.4785],[2.50752,45.48166],[2.51389,45.49235],[2.50778,45.50311],[2.52039,45.52045],[2.51176,45.5251],[2.5194,45.53224],[2.51684,45.55302],[2.50096,45.55354],[2.49093,45.56039],[2.49146,45.56795],[2.47112,45.57922],[2.47524,45.58236],[2.46117,45.59646],[2.47843,45.60791],[2.4875,45.6424],[2.49198,45.63776],[2.52014,45.64069],[2.52828,45.65854],[2.51904,45.65923],[2.51259,45.66976],[2.5175,45.67817],[2.52868,45.6822],[2.51891,45.69764],[2.52301,45.71145],[2.48484,45.74848],[2.47442,45.74566],[2.46866,45.75632],[2.45475,45.76115],[2.4445,45.75819],[2.43546,45.76697],[2.42727,45.79464],[2.38802,45.82738],[2.40367,45.83843],[2.43094,45.83382],[2.43418,45.84525],[2.44951,45.84821],[2.44336,45.86661],[2.45714,45.86565],[2.47062,45.87233],[2.47898,45.87035],[2.47974,45.86454],[2.49223,45.86403],[2.50329,45.87823],[2.50221,45.88849],[2.51419,45.88568],[2.52884,45.89965],[2.54143,45.90097],[2.55501,45.91251],[2.5415,45.92153],[2.54425,45.93241],[2.55362,45.93582],[2.55164,45.94127],[2.56991,45.94721],[2.56357,45.95559],[2.60902,45.96665],[2.61087,45.97415],[2.59322,45.99299],[2.60251,46.03346],[2.57073,46.0473],[2.55039,46.08607],[2.54728,46.11297],[2.56538,46.14303]]]}},{"type":"Feature","properties":{"code":"64","nom":"Pyr\xE9n\xE9es-Atlantiques"},"geometry":{"type":"Polygon","coordinates":[[[-0.24284,43.58498],[-0.23503,43.58335],[-0.23307,43.58863],[-0.21061,43.59324],[-0.20474,43.5836],[-0.17656,43.59683],[-0.16045,43.58057],[-0.1481,43.58579],[-0.13819,43.57989],[-0.12891,43.58122],[-0.12163,43.58678],[-0.09678,43.58241],[-0.08894,43.5572],[-0.09411,43.54393],[-0.06599,43.54813],[-0.04013,43.51261],[-0.04957,43.49192],[-0.03491,43.48854],[-0.03472,43.47494],[-0.01782,43.47215],[-0.01909,43.46505],[-0.06575,43.46348],[-0.06167,43.45245],[-0.07074,43.43528],[-0.05078,43.41959],[-0.06231,43.4178],[-0.06727,43.41042],[-0.04298,43.4102],[-0.0337,43.43269],[-0.02481,43.43003],[-0.01653,43.44395],[-0.00248,43.44508],[-0.00479,43.43162],[0.00966,43.4222],[-0.00381,43.39805],[-0.00429,43.39337],[0.00495,43.39378],[-0.00578,43.37302],[0.00154,43.36894],[0.00494,43.37176],[0.00564,43.36358],[0.0295,43.34615],[0.01032,43.32532],[-0.00325,43.33211],[-0.02537,43.32962],[-0.0292,43.31585],[-0.04612,43.30086],[-0.04439,43.28528],[-0.02397,43.28021],[-0.02708,43.27591],[-0.01701,43.27045],[-0.0243,43.25396],[-0.04582,43.23261],[-0.04946,43.21718],[-0.07397,43.22238],[-0.06787,43.17712],[-0.09549,43.17719],[-0.09753,43.16662],[-0.10595,43.16653],[-0.11133,43.17934],[-0.1177,43.18033],[-0.12625,43.15766],[-0.14288,43.1432],[-0.14613,43.12824],[-0.16635,43.12188],[-0.17501,43.11012],[-0.19384,43.11502],[-0.19768,43.09817],[-0.18672,43.09187],[-0.18644,43.08427],[-0.19915,43.06441],[-0.18156,43.05254],[-0.22395,43.03369],[-0.23942,43.03968],[-0.25818,43.03816],[-0.25967,43.01368],[-0.28724,43.00592],[-0.29324,42.99273],[-0.29073,42.9605],[-0.28191,42.95094],[-0.28159,42.93356],[-0.308,42.92646],[-0.31075,42.919],[-0.32717,42.9165],[-0.30707,42.86997],[-0.31086,42.85314],[-0.32402,42.83498],[-0.34714,42.83773],[-0.36473,42.8164],[-0.38297,42.80718],[-0.38337,42.801],[-0.39494,42.79892],[-0.40924,42.80775],[-0.44348,42.79592],[-0.45178,42.80359],[-0.49227,42.81681],[-0.5011,42.82784],[-0.52429,42.81216],[-0.52288,42.79905],[-0.52973,42.79153],[-0.54381,42.79316],[-0.5512,42.77752],[-0.56693,42.78053],[-0.56602,42.80379],[-0.57682,42.80815],[-0.59055,42.80266],[-0.60076,42.80631],[-0.60363,42.83262],[-0.61956,42.83801],[-0.63616,42.85324],[-0.65506,42.8581],[-0.67841,42.8844],[-0.69888,42.87876],[-0.73185,42.89605],[-0.73644,42.913],[-0.72405,42.92234],[-0.73251,42.92841],[-0.73057,42.94549],[-0.74356,42.9518],[-0.75296,42.96771],[-0.79018,42.96384],[-0.81477,42.95104],[-0.83745,42.95426],[-0.86503,42.95078],[-0.89743,42.95571],[-0.90757,42.96428],[-0.92559,42.9539],[-0.94383,42.95319],[-0.9975,42.97569],[-1.01659,42.99468],[-1.02588,42.99196],[-1.07418,42.99861],[-1.08523,43.00341],[-1.08357,43.01088],[-1.10296,43.01539],[-1.11471,43.02386],[-1.13415,43.00856],[-1.14221,43.00798],[-1.1444,43.02353],[-1.1641,43.03486],[-1.17366,43.03758],[-1.18072,43.03253],[-1.21241,43.05126],[-1.23016,43.05538],[-1.24719,43.04242],[-1.26298,43.04339],[-1.27054,43.05472],[-1.30928,43.06865],[-1.29712,43.09531],[-1.27019,43.11857],[-1.32061,43.11275],[-1.34511,43.09402],[-1.34289,43.05449],[-1.3537,43.02824],[-1.44122,43.04631],[-1.47321,43.08676],[-1.46423,43.09753],[-1.44071,43.10769],[-1.44315,43.11153],[-1.41478,43.12789],[-1.40962,43.14275],[-1.41614,43.14874],[-1.40224,43.15566],[-1.40202,43.17787],[-1.38174,43.18963],[-1.38652,43.19402],[-1.38045,43.2144],[-1.38433,43.22121],[-1.37779,43.23013],[-1.38854,43.25856],[-1.41321,43.27342],[-1.43885,43.26652],[-1.4659,43.27228],[-1.48261,43.28284],[-1.49189,43.28042],[-1.50586,43.29328],[-1.53532,43.29464],[-1.56472,43.28791],[-1.55815,43.27693],[-1.57661,43.24988],[-1.59788,43.25463],[-1.60867,43.25191],[-1.62241,43.26395],[-1.63037,43.28445],[-1.62407,43.30607],[-1.64529,43.30677],[-1.66853,43.31486],[-1.68573,43.30907],[-1.69471,43.31221],[-1.72975,43.29568],[-1.74135,43.31675],[-1.73771,43.3304],[-1.7492,43.33139],[-1.75387,43.34203],[-1.77549,43.34395],[-1.78923,43.35462],[-1.78291,43.36204],[-1.79235,43.3706],[-1.78875,43.37838],[-1.78897,43.37406],[-1.77464,43.37299],[-1.75548,43.37915],[-1.75225,43.3871],[-1.73984,43.38089],[-1.68209,43.39755],[-1.68146,43.39004],[-1.66553,43.38932],[-1.66173,43.40383],[-1.63911,43.40836],[-1.63885,43.41283],[-1.62882,43.41351],[-1.62584,43.42262],[-1.60145,43.43329],[-1.57007,43.47471],[-1.57128,43.48169],[-1.54807,43.49597],[-1.52487,43.5297],[-1.49405,43.5285],[-1.47821,43.53968],[-1.46115,43.53168],[-1.46501,43.51655],[-1.43112,43.51461],[-1.41766,43.49691],[-1.36791,43.4949],[-1.32447,43.50511],[-1.28887,43.49873],[-1.21732,43.53074],[-1.19562,43.5461],[-1.17082,43.54561],[-1.15348,43.52875],[-1.1308,43.51873],[-1.13332,43.50969],[-1.14732,43.51111],[-1.17189,43.50485],[-1.16869,43.4922],[-1.15318,43.49696],[-1.14435,43.48764],[-1.13798,43.49959],[-1.11798,43.50146],[-1.10925,43.51413],[-1.08766,43.51118],[-1.08155,43.52217],[-1.07254,43.51857],[-1.069,43.50845],[-1.05815,43.5126],[-1.05169,43.50893],[-1.04636,43.51426],[-1.04419,43.50879],[-1.03139,43.51003],[-1.02368,43.5017],[-1.01999,43.50631],[-0.99238,43.50402],[-0.98909,43.53052],[-1.0011,43.53823],[-0.98846,43.54143],[-0.98556,43.53714],[-0.97864,43.53987],[-0.95091,43.53212],[-0.94037,43.53855],[-0.92658,43.53202],[-0.92252,43.54272],[-0.90536,43.55051],[-0.84572,43.54221],[-0.84267,43.55356],[-0.8183,43.56144],[-0.80404,43.5563],[-0.79417,43.56396],[-0.78178,43.56417],[-0.78245,43.57671],[-0.76828,43.57948],[-0.7174,43.54061],[-0.70932,43.54129],[-0.70749,43.56002],[-0.68802,43.55676],[-0.64105,43.5748],[-0.65782,43.55611],[-0.63375,43.5541],[-0.61569,43.54439],[-0.61437,43.53772],[-0.59632,43.53824],[-0.56707,43.55822],[-0.55279,43.54318],[-0.51119,43.56265],[-0.50453,43.57259],[-0.46787,43.58967],[-0.4611,43.58692],[-0.44921,43.5963],[-0.4316,43.58369],[-0.43264,43.57802],[-0.44097,43.57871],[-0.44733,43.57321],[-0.44789,43.56657],[-0.45902,43.5622],[-0.4557,43.5693],[-0.46344,43.56659],[-0.44971,43.54987],[-0.40604,43.56823],[-0.40068,43.56322],[-0.39445,43.56926],[-0.35669,43.56296],[-0.33596,43.55085],[-0.30369,43.56028],[-0.3012,43.5713],[-0.29085,43.56812],[-0.28302,43.58569],[-0.25923,43.58889],[-0.25345,43.58825],[-0.25413,43.58275],[-0.24284,43.58498]],[[-0.10333,43.35858],[-0.09023,43.35935],[-0.08657,43.33616],[-0.09353,43.33312],[-0.10928,43.33792],[-0.11552,43.33238],[-0.1102,43.31218],[-0.09757,43.31386],[-0.07504,43.30714],[-0.0686,43.3125],[-0.06493,43.355],[-0.0931,43.37388],[-0.10728,43.37073],[-0.10333,43.35858]],[[-0.10308,43.24282],[-0.10383,43.2496],[-0.09211,43.25206],[-0.07967,43.26264],[-0.07929,43.27166],[-0.09618,43.28548],[-0.08934,43.30084],[-0.11149,43.3104],[-0.13735,43.28574],[-0.14062,43.27194],[-0.12134,43.2409],[-0.10308,43.24282]]]}},{"type":"Feature","properties":{"code":"65","nom":"Hautes-Pyr\xE9n\xE9es"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-0.10308,43.24282],[-0.12134,43.2409],[-0.14062,43.27194],[-0.13735,43.28574],[-0.11149,43.3104],[-0.08934,43.30084],[-0.09618,43.28548],[-0.07929,43.27166],[-0.07967,43.26264],[-0.09211,43.25206],[-0.10383,43.2496],[-0.10308,43.24282]]],[[[-0.10333,43.35858],[-0.10728,43.37073],[-0.0931,43.37388],[-0.06493,43.355],[-0.0686,43.3125],[-0.07504,43.30714],[-0.09757,43.31386],[-0.1102,43.31218],[-0.11552,43.33238],[-0.10928,43.33792],[-0.09353,43.33312],[-0.08657,43.33616],[-0.09023,43.35935],[-0.10333,43.35858]]],[[[-0.09678,43.58241],[-0.09751,43.58942],[-0.07567,43.59159],[-0.07397,43.60631],[-0.05476,43.60622],[-0.04467,43.61316],[-0.03337,43.60402],[-0.01544,43.60551],[-0.00363,43.58539],[-0.00288,43.56624],[0.00892,43.56055],[0.01677,43.54314],[0.02958,43.5449],[0.04304,43.53445],[0.05144,43.51855],[0.08027,43.5239],[0.08975,43.51017],[0.11212,43.51737],[0.11661,43.51493],[0.13047,43.4949],[0.135,43.46572],[0.15003,43.46472],[0.16588,43.44435],[0.13746,43.43399],[0.13231,43.4242],[0.15305,43.39948],[0.1738,43.40277],[0.18203,43.37118],[0.19948,43.37525],[0.20634,43.36778],[0.23258,43.36777],[0.27841,43.38622],[0.29804,43.38811],[0.30662,43.36809],[0.32714,43.3727],[0.33184,43.34316],[0.39181,43.3556],[0.39107,43.34996],[0.39926,43.35019],[0.39573,43.3336],[0.41439,43.32883],[0.44297,43.32793],[0.44498,43.34074],[0.49399,43.32512],[0.5079,43.33413],[0.54105,43.32706],[0.5507,43.32959],[0.56315,43.32087],[0.57558,43.32256],[0.63563,43.30124],[0.63474,43.29353],[0.61571,43.28878],[0.61388,43.2771],[0.59666,43.27377],[0.57682,43.25906],[0.57844,43.25375],[0.5668,43.25232],[0.55337,43.23771],[0.57284,43.23311],[0.57383,43.22033],[0.55187,43.20915],[0.54487,43.21332],[0.53562,43.20767],[0.51739,43.21237],[0.50586,43.19823],[0.51909,43.19453],[0.52605,43.19833],[0.52193,43.19209],[0.47082,43.15786],[0.442,43.13127],[0.4643,43.11805],[0.45321,43.11125],[0.48904,43.11517],[0.49121,43.10867],[0.50257,43.10684],[0.50082,43.09574],[0.5324,43.09332],[0.53167,43.08295],[0.56385,43.07425],[0.55287,43.06538],[0.5612,43.06034],[0.56672,43.03737],[0.54717,43.04485],[0.53793,43.04164],[0.52823,43.00471],[0.53208,43.00769],[0.53098,43.00328],[0.54018,43.0013],[0.56563,43.02034],[0.59183,43.02237],[0.59322,43.03545],[0.60656,43.03462],[0.61571,43.01108],[0.62742,43.0001],[0.62383,42.9904],[0.61224,42.98861],[0.61883,42.97242],[0.63579,42.9689],[0.64612,42.96094],[0.64199,42.95287],[0.59952,42.92724],[0.57594,42.87083],[0.56234,42.86076],[0.5498,42.8647],[0.53418,42.86126],[0.52555,42.86755],[0.5025,42.86839],[0.49651,42.87631],[0.47736,42.87824],[0.47268,42.85917],[0.46024,42.85175],[0.4675,42.84675],[0.45582,42.81689],[0.46355,42.8045],[0.45471,42.77202],[0.46339,42.75962],[0.4627,42.73922],[0.44904,42.73385],[0.48459,42.71027],[0.48248,42.7029],[0.46797,42.69501],[0.43627,42.69002],[0.40299,42.69606],[0.39532,42.69957],[0.39263,42.71312],[0.37575,42.71422],[0.3601,42.72429],[0.34544,42.71098],[0.32507,42.70517],[0.32149,42.68408],[0.29514,42.67316],[0.26346,42.69324],[0.26812,42.69985],[0.25988,42.71581],[0.22649,42.71726],[0.20599,42.7293],[0.17573,42.737],[0.16201,42.723],[0.13657,42.72233],[0.13325,42.71614],[0.11605,42.71084],[0.09042,42.71713],[0.07836,42.7149],[0.05855,42.69766],[0.01445,42.70165],[0.01367,42.69336],[0.00189,42.68582],[-0.05672,42.69215],[-0.06334,42.69623],[-0.06884,42.7179],[-0.1068,42.7205],[-0.10799,42.73204],[-0.12291,42.75162],[-0.13843,42.76694],[-0.14994,42.76921],[-0.1471,42.77562],[-0.16087,42.79832],[-0.17566,42.78646],[-0.18942,42.7866],[-0.1976,42.7952],[-0.2139,42.79604],[-0.23915,42.80888],[-0.24336,42.82314],[-0.25597,42.81907],[-0.27474,42.82849],[-0.27668,42.83547],[-0.30636,42.84121],[-0.31344,42.84938],[-0.30707,42.86997],[-0.32717,42.9165],[-0.31075,42.919],[-0.308,42.92646],[-0.28159,42.93356],[-0.28191,42.95094],[-0.29073,42.9605],[-0.29324,42.99273],[-0.28724,43.00592],[-0.25967,43.01368],[-0.25818,43.03816],[-0.23942,43.03968],[-0.22395,43.03369],[-0.18156,43.05254],[-0.19915,43.06441],[-0.18644,43.08427],[-0.18672,43.09187],[-0.19768,43.09817],[-0.19384,43.11502],[-0.17501,43.11012],[-0.16635,43.12188],[-0.14613,43.12824],[-0.14288,43.1432],[-0.12625,43.15766],[-0.1177,43.18033],[-0.11133,43.17934],[-0.10595,43.16653],[-0.09753,43.16662],[-0.09549,43.17719],[-0.06787,43.17712],[-0.07397,43.22238],[-0.04946,43.21718],[-0.04582,43.23261],[-0.0243,43.25396],[-0.01701,43.27045],[-0.02708,43.27591],[-0.02397,43.28021],[-0.04439,43.28528],[-0.04612,43.30086],[-0.0292,43.31585],[-0.02537,43.32962],[-0.00325,43.33211],[0.01032,43.32532],[0.0295,43.34615],[0.00564,43.36358],[0.00494,43.37176],[0.00154,43.36894],[-0.00578,43.37302],[0.00495,43.39378],[-0.00429,43.39337],[-0.00381,43.39805],[0.00966,43.4222],[-0.00479,43.43162],[-0.00248,43.44508],[-0.01653,43.44395],[-0.02481,43.43003],[-0.0337,43.43269],[-0.04298,43.4102],[-0.06727,43.41042],[-0.06231,43.4178],[-0.05078,43.41959],[-0.07074,43.43528],[-0.06167,43.45245],[-0.06575,43.46348],[-0.01909,43.46505],[-0.01782,43.47215],[-0.03472,43.47494],[-0.03491,43.48854],[-0.04957,43.49192],[-0.04013,43.51261],[-0.06599,43.54813],[-0.09411,43.54393],[-0.08894,43.5572],[-0.09678,43.58241]]]]}},{"type":"Feature","properties":{"code":"66","nom":"Pyr\xE9n\xE9es-Orientales"},"geometry":{"type":"Polygon","coordinates":[[[2.16605,42.66392],[2.17695,42.64918],[2.19125,42.65207],[2.19217,42.65906],[2.20629,42.66708],[2.24652,42.6812],[2.25515,42.698],[2.26454,42.70156],[2.26471,42.70926],[2.2768,42.70247],[2.29706,42.701],[2.31969,42.70649],[2.35539,42.72701],[2.35253,42.7627],[2.34295,42.77535],[2.34392,42.80122],[2.33338,42.80193],[2.33213,42.82043],[2.31929,42.82399],[2.32765,42.82907],[2.32712,42.83744],[2.38217,42.84847],[2.45247,42.83693],[2.50516,42.85123],[2.51658,42.84241],[2.55152,42.84669],[2.6043,42.83587],[2.66513,42.83664],[2.68046,42.83067],[2.73706,42.83557],[2.75441,42.85193],[2.76215,42.87368],[2.78905,42.89599],[2.81773,42.90028],[2.83473,42.91226],[2.86527,42.91834],[2.88261,42.89976],[2.90687,42.89581],[2.91711,42.88486],[2.98499,42.86703],[3.04351,42.83815],[3.04075,42.71666],[3.03843,42.70459],[3.02447,42.70388],[3.03895,42.70121],[3.03544,42.64225],[3.04961,42.55014],[3.05796,42.53626],[3.08315,42.5316],[3.08544,42.52438],[3.10615,42.52594],[3.1156,42.51891],[3.1176,42.52322],[3.1411,42.51521],[3.12334,42.50594],[3.13561,42.49969],[3.12754,42.48732],[3.1319,42.48122],[3.15514,42.47745],[3.16244,42.46498],[3.15733,42.46047],[3.16737,42.45622],[3.15989,42.4519],[3.16912,42.44643],[3.16631,42.44055],[3.17783,42.43948],[3.17145,42.43498],[3.14476,42.43306],[3.12083,42.43801],[3.10166,42.42608],[3.0861,42.42519],[3.04725,42.45708],[3.04046,42.47439],[3.01325,42.46621],[2.98889,42.47383],[2.96735,42.46536],[2.94709,42.4818],[2.93022,42.47208],[2.91845,42.45608],[2.88549,42.45993],[2.87031,42.46734],[2.8615,42.45483],[2.83954,42.45929],[2.82753,42.43955],[2.81526,42.43974],[2.80366,42.43196],[2.79924,42.41857],[2.78412,42.41751],[2.77697,42.41195],[2.77018,42.4118],[2.75544,42.42568],[2.73345,42.42445],[2.71668,42.42122],[2.69204,42.40622],[2.67394,42.4047],[2.67142,42.38753],[2.65149,42.38641],[2.66074,42.37816],[2.66111,42.36596],[2.6749,42.35705],[2.67548,42.34238],[2.6163,42.34565],[2.58687,42.3572],[2.57086,42.35795],[2.55397,42.35403],[2.5487,42.33955],[2.53272,42.33305],[2.50031,42.34291],[2.48121,42.34064],[2.45462,42.36974],[2.44668,42.36912],[2.43346,42.37709],[2.43246,42.39326],[2.41254,42.39129],[2.38754,42.40007],[2.36077,42.40283],[2.34644,42.40868],[2.34352,42.41696],[2.3261,42.41718],[2.31414,42.42785],[2.2913,42.42294],[2.25672,42.43844],[2.24616,42.42876],[2.20161,42.41638],[2.18016,42.4182],[2.16757,42.42458],[2.15088,42.42113],[2.1256,42.40965],[2.1149,42.39451],[2.11676,42.38321],[2.08955,42.37372],[2.08463,42.36177],[2.07236,42.36458],[2.05911,42.3578],[2.03258,42.35831],[2.01541,42.34678],[2.01199,42.3529],[1.98591,42.36205],[1.96474,42.38164],[1.95539,42.41032],[1.95829,42.42396],[1.94099,42.4302],[1.94302,42.44412],[1.93688,42.45359],[1.92065,42.44682],[1.89136,42.44779],[1.88143,42.45971],[1.86429,42.46658],[1.85422,42.46414],[1.84336,42.47714],[1.82352,42.48624],[1.8168,42.48306],[1.80459,42.4901],[1.79167,42.48578],[1.76326,42.48684],[1.74653,42.49561],[1.73067,42.49275],[1.72181,42.51704],[1.73352,42.52786],[1.73453,42.54908],[1.75048,42.564],[1.7696,42.56451],[1.78613,42.57362],[1.801,42.5724],[1.83706,42.58454],[1.86038,42.58401],[1.86432,42.57899],[1.87449,42.58141],[1.87423,42.59],[1.89127,42.59331],[1.90018,42.6149],[1.90729,42.60863],[1.92666,42.60943],[1.93339,42.60482],[1.95012,42.61774],[1.97176,42.61692],[1.99856,42.66133],[2.02763,42.65251],[2.04327,42.6575],[2.04702,42.66359],[2.06088,42.66168],[2.0853,42.66678],[2.10897,42.66386],[2.12784,42.67227],[2.15129,42.66196],[2.16605,42.66392]],[[1.96006,42.47045],[1.95618,42.4577],[1.96101,42.4529],[1.98433,42.44655],[2.01269,42.44834],[2.01059,42.45581],[1.99164,42.46268],[1.98662,42.47135],[1.99832,42.48516],[1.98953,42.49354],[1.97876,42.49477],[1.97831,42.48604],[1.96299,42.47847],[1.96006,42.47045]]]}},{"type":"Feature","properties":{"code":"67","nom":"Bas-Rhin"},"geometry":{"type":"Polygon","coordinates":[[[7.63529,49.05416],[7.67449,49.04504],[7.69708,49.04975],[7.69611,49.05782],[7.72275,49.0513],[7.73182,49.05561],[7.73223,49.04436],[7.75818,49.04534],[7.76943,49.04774],[7.78069,49.05857],[7.78826,49.05812],[7.79459,49.06579],[7.8663,49.0334],[7.88823,49.04862],[7.9167,49.04097],[7.93376,49.05803],[7.96685,49.04144],[7.9747,49.02697],[8.0005,49.02823],[8.01258,49.02117],[8.04922,49.01418],[8.07067,48.99593],[8.08691,48.99054],[8.12339,48.9855],[8.13945,48.9783],[8.19441,48.97743],[8.19857,48.96748],[8.22274,48.97597],[8.23334,48.96668],[8.1958,48.95621],[8.14794,48.90381],[8.12259,48.86714],[8.10387,48.81965],[8.08912,48.80363],[8.06513,48.78977],[8.03956,48.79056],[8.02913,48.78648],[8.01471,48.76118],[7.97176,48.75763],[7.96314,48.72135],[7.89089,48.6631],[7.83982,48.64137],[7.83088,48.6207],[7.8004,48.58454],[7.8052,48.51357],[7.7947,48.50209],[7.7682,48.48966],[7.76303,48.45141],[7.73355,48.39869],[7.73146,48.37806],[7.74466,48.32784],[7.7358,48.31906],[7.69338,48.30153],[7.66602,48.22088],[7.64346,48.20649],[7.62947,48.18337],[7.60115,48.15838],[7.59916,48.13576],[7.57731,48.12037],[7.51937,48.12611],[7.51499,48.13964],[7.52033,48.1495],[7.47014,48.16017],[7.47694,48.20354],[7.44983,48.21165],[7.44363,48.21796],[7.40422,48.2266],[7.40249,48.23168],[7.35358,48.24852],[7.32649,48.24405],[7.31059,48.25371],[7.31492,48.26335],[7.32016,48.26119],[7.33292,48.27269],[7.30411,48.26806],[7.29251,48.27078],[7.30095,48.28258],[7.27508,48.30561],[7.24173,48.30243],[7.23505,48.30934],[7.19828,48.31047],[7.18977,48.31877],[7.19177,48.32485],[7.17721,48.32531],[7.18365,48.33935],[7.16954,48.3423],[7.15347,48.33339],[7.12049,48.33335],[7.10767,48.34425],[7.07596,48.35258],[7.10934,48.37874],[7.1041,48.38833],[7.08498,48.39789],[7.09743,48.40564],[7.09231,48.41024],[7.09569,48.42653],[7.10994,48.43968],[7.10191,48.45142],[7.11874,48.47449],[7.11688,48.48489],[7.09366,48.48928],[7.09062,48.50366],[7.1358,48.49756],[7.12079,48.50513],[7.12773,48.50952],[7.1178,48.51566],[7.1102,48.51395],[7.10222,48.5187],[7.08072,48.51255],[7.06449,48.5234],[7.07936,48.53642],[7.09214,48.52904],[7.11438,48.53739],[7.13506,48.52813],[7.14833,48.52698],[7.15108,48.53166],[7.16791,48.5276],[7.1871,48.53727],[7.19249,48.54879],[7.21832,48.55264],[7.26514,48.59172],[7.25561,48.59994],[7.27966,48.62818],[7.2619,48.63179],[7.28113,48.63657],[7.30435,48.6602],[7.2646,48.6627],[7.24249,48.69154],[7.26017,48.6943],[7.26663,48.71421],[7.28688,48.73134],[7.29299,48.75297],[7.31334,48.76724],[7.29069,48.78562],[7.2876,48.79774],[7.27049,48.80254],[7.26203,48.79845],[7.24524,48.81003],[7.26131,48.81996],[7.24546,48.81683],[7.22247,48.82962],[7.21775,48.82811],[7.22309,48.82216],[7.21657,48.82027],[7.2091,48.82757],[7.18714,48.83342],[7.19588,48.8404],[7.18591,48.84951],[7.17292,48.84642],[7.17452,48.84184],[7.14885,48.8446],[7.14111,48.83441],[7.1476,48.82186],[7.12445,48.81251],[7.1268,48.80114],[7.08608,48.79209],[7.07783,48.78558],[7.06719,48.79948],[7.08912,48.80677],[7.08807,48.81074],[7.052,48.81521],[7.04721,48.82014],[7.05455,48.83268],[7.05149,48.84655],[7.06707,48.84897],[7.07807,48.84527],[7.09177,48.84946],[7.09962,48.85513],[7.09573,48.86214],[7.08063,48.86417],[7.05054,48.85893],[7.04835,48.87366],[7.03315,48.87465],[6.98892,48.89119],[6.95467,48.89389],[6.9646,48.90453],[6.96198,48.91113],[6.95555,48.92232],[6.94037,48.92393],[6.9462,48.93513],[6.96018,48.92519],[6.97111,48.92804],[6.97981,48.93481],[6.98922,48.95993],[7.03222,48.95605],[7.02702,48.96901],[7.0413,48.97731],[7.03057,48.98711],[7.05451,49.00992],[7.04743,49.01462],[7.05229,49.02829],[7.07866,49.05036],[7.06766,49.06497],[7.07593,49.07399],[7.08365,49.06867],[7.09934,49.07788],[7.11929,49.06835],[7.10169,49.06373],[7.10191,49.05913],[7.10836,49.04273],[7.11948,49.03722],[7.11337,49.03253],[7.12166,49.02983],[7.12559,49.00632],[7.17424,49.00637],[7.18384,49.00095],[7.18371,48.99478],[7.19429,48.99518],[7.20931,48.98009],[7.23919,48.9878],[7.29305,48.97342],[7.2902,48.95652],[7.30623,48.95663],[7.32685,48.94337],[7.35888,48.9576],[7.38589,48.95151],[7.45163,48.96796],[7.45531,48.96298],[7.47957,48.96139],[7.48516,48.95068],[7.50187,48.94425],[7.51972,48.94024],[7.52592,48.94451],[7.53628,48.93241],[7.55613,48.93583],[7.55168,48.94217],[7.57839,48.9574],[7.59233,48.98484],[7.58756,48.98969],[7.61157,49.01244],[7.60643,49.02003],[7.63785,49.04611],[7.63529,49.05416]]]}},{"type":"Feature","properties":{"code":"68","nom":"Haut-Rhin"},"geometry":{"type":"Polygon","coordinates":[[[7.19828,48.31047],[7.23505,48.30934],[7.24173,48.30243],[7.27508,48.30561],[7.30095,48.28258],[7.29251,48.27078],[7.30411,48.26806],[7.33292,48.27269],[7.32016,48.26119],[7.31492,48.26335],[7.31059,48.25371],[7.32649,48.24405],[7.35358,48.24852],[7.40249,48.23168],[7.40422,48.2266],[7.44363,48.21796],[7.44983,48.21165],[7.47694,48.20354],[7.47014,48.16017],[7.52033,48.1495],[7.51499,48.13964],[7.51937,48.12611],[7.57731,48.12037],[7.56869,48.03411],[7.60878,48.00027],[7.62196,47.9757],[7.60883,47.95318],[7.58329,47.93112],[7.58187,47.89649],[7.5567,47.87994],[7.56311,47.84379],[7.52963,47.77891],[7.54767,47.72992],[7.51185,47.69704],[7.52114,47.66373],[7.56328,47.63566],[7.57361,47.61667],[7.59103,47.60474],[7.58489,47.57563],[7.56709,47.57761],[7.55671,47.57231],[7.5572,47.56503],[7.5,47.53979],[7.5014,47.52872],[7.51926,47.53455],[7.5312,47.52663],[7.52294,47.51424],[7.50348,47.51461],[7.4978,47.52123],[7.50974,47.50843],[7.51098,47.49666],[7.48686,47.48173],[7.47091,47.48042],[7.46211,47.4891],[7.43185,47.49607],[7.42111,47.48045],[7.43609,47.4806],[7.45566,47.4705],[7.44538,47.46171],[7.43007,47.45928],[7.42103,47.44611],[7.40341,47.43552],[7.38558,47.43162],[7.35569,47.43378],[7.33071,47.44157],[7.28346,47.43481],[7.24618,47.42022],[7.23281,47.43881],[7.19972,47.43503],[7.17077,47.44305],[7.18723,47.483],[7.20231,47.49169],[7.16175,47.49005],[7.13035,47.50303],[7.14346,47.52461],[7.13363,47.53896],[7.10687,47.55054],[7.10766,47.5648],[7.09417,47.57364],[7.08627,47.59256],[7.07403,47.59887],[7.07016,47.59633],[7.07041,47.60071],[7.03978,47.60115],[7.01956,47.58854],[7.01932,47.5961],[7.00594,47.60236],[7.0105,47.60502],[7.00593,47.62892],[7.01693,47.62719],[7.01207,47.63932],[7.01917,47.64125],[7.0176,47.64986],[7.03919,47.65057],[7.03418,47.66109],[7.04506,47.66935],[7.03791,47.6745],[7.04803,47.6841],[7.04011,47.68572],[7.03367,47.69963],[7.02649,47.701],[7.03742,47.72164],[7.01596,47.74323],[6.97227,47.75147],[6.94043,47.77157],[6.92678,47.7695],[6.91398,47.77719],[6.86699,47.78331],[6.84845,47.80187],[6.84102,47.819],[6.86761,47.82946],[6.89609,47.83297],[6.90288,47.84298],[6.92005,47.85029],[6.90653,47.86514],[6.90471,47.87963],[6.9097,47.88164],[6.89782,47.88426],[6.8969,47.89083],[6.91846,47.8984],[6.92877,47.90989],[6.92593,47.9173],[6.91317,47.91938],[6.92574,47.92983],[6.91943,47.94434],[6.93068,47.97193],[6.94374,47.98092],[6.94382,47.99952],[6.95291,48.00294],[6.96085,48.00015],[7.0013,48.02179],[7.01215,48.03174],[7.01563,48.03801],[7.00975,48.04289],[7.0298,48.0719],[7.05165,48.08261],[7.07671,48.10849],[7.08416,48.12921],[7.06985,48.12948],[7.05802,48.1377],[7.06051,48.14458],[7.07902,48.16393],[7.08582,48.18405],[7.09982,48.18912],[7.11772,48.20821],[7.13403,48.23768],[7.13305,48.24754],[7.1767,48.28901],[7.17244,48.29748],[7.19361,48.30203],[7.19828,48.31047]]]}},{"type":"Feature","properties":{"code":"69","nom":"Rh\xF4ne"},"geometry":{"type":"Polygon","coordinates":[[[4.38808,46.21979],[4.3867,46.2316],[4.39241,46.23542],[4.38545,46.24684],[4.39239,46.25157],[4.39754,46.28334],[4.40581,46.29606],[4.42187,46.29495],[4.42704,46.30282],[4.43876,46.29338],[4.45863,46.29693],[4.47591,46.28405],[4.48846,46.28799],[4.504,46.26713],[4.54645,46.27392],[4.5478,46.28501],[4.56025,46.29524],[4.56883,46.29385],[4.57294,46.27592],[4.58377,46.26949],[4.61856,46.26479],[4.61643,46.28216],[4.63624,46.29014],[4.63682,46.30066],[4.65273,46.30402],[4.66404,46.29501],[4.67785,46.30054],[4.6792,46.30626],[4.69341,46.30142],[4.69472,46.29205],[4.71039,46.27857],[4.70769,46.26965],[4.7007,46.26748],[4.69341,46.27172],[4.68788,46.26531],[4.68158,46.26675],[4.67905,46.25987],[4.68823,46.24933],[4.70505,46.25123],[4.73577,46.23424],[4.73238,46.22662],[4.71953,46.22788],[4.72042,46.22156],[4.73568,46.2117],[4.72068,46.20072],[4.72726,46.17912],[4.75164,46.17234],[4.78021,46.17668],[4.80295,46.15508],[4.79745,46.1407],[4.74681,46.08779],[4.76168,46.06884],[4.73953,46.04721],[4.75451,45.97227],[4.7287,45.94433],[4.75421,45.93483],[4.77707,45.93843],[4.7898,45.92281],[4.80856,45.92015],[4.80518,45.89633],[4.84804,45.91298],[4.85316,45.90678],[4.87208,45.90346],[4.87201,45.89458],[4.8807,45.89717],[4.88383,45.87999],[4.90902,45.8741],[4.90057,45.8576],[4.91713,45.8453],[4.91834,45.80703],[4.9238,45.804],[4.96308,45.81097],[4.98161,45.80545],[5.00313,45.81003],[5.01345,45.80506],[5.04479,45.81174],[5.10107,45.81338],[5.08931,45.78428],[5.05933,45.79198],[5.06752,45.76527],[5.09544,45.76918],[5.08938,45.74966],[5.09453,45.73945],[5.12601,45.73791],[5.13897,45.73102],[5.14393,45.72004],[5.15924,45.71524],[5.154,45.69972],[5.15017,45.70581],[5.14306,45.70003],[5.13106,45.70771],[5.11909,45.69971],[5.10489,45.70038],[5.10813,45.68802],[5.06083,45.66642],[5.05402,45.66006],[5.05806,45.65324],[5.03834,45.64495],[5.03508,45.62847],[5.04364,45.62133],[5.03673,45.6129],[5.00475,45.62311],[4.98945,45.61853],[5.00199,45.61395],[4.99796,45.60341],[4.97093,45.6132],[4.92753,45.60571],[4.90101,45.60619],[4.85978,45.59083],[4.85759,45.57652],[4.82959,45.58804],[4.77713,45.5874],[4.78208,45.58058],[4.81108,45.57113],[4.8351,45.54538],[4.87281,45.5313],[4.84192,45.50099],[4.78062,45.4709],[4.77948,45.45504],[4.75694,45.45571],[4.73854,45.47277],[4.74433,45.47911],[4.73955,45.48704],[4.72183,45.4944],[4.69838,45.47725],[4.67642,45.48196],[4.67097,45.47342],[4.66625,45.47811],[4.67076,45.48346],[4.65526,45.48607],[4.6508,45.53086],[4.67564,45.55176],[4.68302,45.55089],[4.6875,45.55821],[4.68034,45.56777],[4.67231,45.57028],[4.66456,45.56419],[4.64972,45.56486],[4.64624,45.55507],[4.6594,45.5434],[4.6447,45.54052],[4.61486,45.57547],[4.58845,45.57056],[4.56726,45.58357],[4.51996,45.57294],[4.50477,45.57655],[4.50476,45.58625],[4.48962,45.58425],[4.48056,45.58843],[4.46908,45.58501],[4.47331,45.59676],[4.44943,45.6058],[4.44149,45.62305],[4.41017,45.6325],[4.39384,45.65039],[4.39932,45.65655],[4.39255,45.66248],[4.36592,45.67124],[4.3643,45.68446],[4.37345,45.69078],[4.36552,45.69852],[4.37292,45.70257],[4.39175,45.73913],[4.40292,45.74392],[4.39125,45.75493],[4.37098,45.749],[4.35999,45.751],[4.34807,45.76953],[4.35906,45.77639],[4.35842,45.78329],[4.36026,45.77759],[4.37966,45.78399],[4.37369,45.80506],[4.38156,45.80717],[4.38784,45.80301],[4.38893,45.80636],[4.37732,45.8248],[4.3906,45.83747],[4.38253,45.84563],[4.39621,45.86005],[4.39157,45.865],[4.377,45.86305],[4.36855,45.86789],[4.3632,45.86438],[4.34215,45.87718],[4.32322,45.90393],[4.34479,45.91539],[4.33476,45.91646],[4.34602,45.92994],[4.31943,45.9435],[4.31454,45.94004],[4.30072,45.94707],[4.29487,45.95289],[4.30116,45.95755],[4.2981,45.96566],[4.27517,45.97978],[4.25113,45.98456],[4.24399,45.99586],[4.25814,45.99479],[4.26285,46.00191],[4.26987,45.99971],[4.26544,45.99673],[4.27126,45.98803],[4.27531,45.99467],[4.2851,45.99387],[4.289,45.99844],[4.3001,45.98888],[4.31251,46.00559],[4.30585,46.02159],[4.28767,46.01732],[4.27644,46.023],[4.25026,46.05004],[4.25784,46.05437],[4.28574,46.05353],[4.30012,46.0652],[4.30143,46.07845],[4.31107,46.08032],[4.30702,46.1063],[4.31977,46.11683],[4.32305,46.13077],[4.36159,46.13846],[4.37703,46.14984],[4.41736,46.13591],[4.42212,46.15054],[4.43437,46.15927],[4.43859,46.16788],[4.43271,46.17334],[4.39587,46.18945],[4.39623,46.19557],[4.42261,46.20256],[4.42181,46.2086],[4.40716,46.22062],[4.38808,46.21979]]]}},{"type":"Feature","properties":{"code":"70","nom":"Haute-Sa\xF4ne"},"geometry":{"type":"Polygon","coordinates":[[[5.88473,47.92605],[5.89718,47.93098],[5.8929,47.93714],[5.90011,47.94475],[5.91804,47.94736],[5.91738,47.96623],[5.93249,47.97729],[5.94749,47.97922],[5.96013,47.96803],[5.92839,47.93781],[5.94939,47.93545],[5.9689,47.94741],[5.97078,47.95721],[6.00527,47.95784],[6.01214,47.97185],[6.01896,47.9697],[6.02609,47.98145],[6.019,47.98748],[6.03216,47.99062],[6.03251,47.99862],[6.04118,48.00442],[6.07277,48.0158],[6.10923,48.01247],[6.1314,48.02408],[6.15606,48.00694],[6.15265,47.99414],[6.15956,47.99229],[6.16455,47.97311],[6.15094,47.97056],[6.14981,47.96592],[6.15706,47.96793],[6.16798,47.95235],[6.18202,47.9563],[6.20806,47.94676],[6.20522,47.93205],[6.21442,47.93038],[6.21917,47.93576],[6.23799,47.93284],[6.24324,47.93964],[6.28908,47.95584],[6.32327,47.94883],[6.36155,47.96134],[6.38893,47.96079],[6.40536,47.95311],[6.40842,47.94319],[6.43473,47.94285],[6.44916,47.92173],[6.46274,47.91733],[6.45596,47.90677],[6.47798,47.89304],[6.47826,47.88544],[6.50321,47.89622],[6.54401,47.90309],[6.56342,47.93139],[6.58977,47.94245],[6.60737,47.94379],[6.64191,47.91776],[6.63929,47.91029],[6.64642,47.90323],[6.70284,47.88172],[6.73784,47.86167],[6.78261,47.85128],[6.79223,47.84222],[6.79268,47.82946],[6.82354,47.81305],[6.81132,47.79429],[6.7847,47.78144],[6.7644,47.75852],[6.75625,47.72554],[6.76825,47.71743],[6.77053,47.70163],[6.77941,47.69534],[6.77979,47.65681],[6.79732,47.64488],[6.80103,47.63604],[6.78944,47.62563],[6.7804,47.62526],[6.7776,47.61564],[6.80227,47.5905],[6.80198,47.58385],[6.82172,47.57331],[6.80124,47.56236],[6.79705,47.54904],[6.77299,47.53501],[6.75512,47.54231],[6.73971,47.557],[6.72227,47.55946],[6.71951,47.55253],[6.68856,47.56063],[6.68887,47.57081],[6.65828,47.57195],[6.66381,47.57688],[6.66006,47.5799],[6.65199,47.57241],[6.67018,47.5579],[6.64937,47.53693],[6.62459,47.52892],[6.60944,47.53079],[6.59672,47.54207],[6.58137,47.54398],[6.56766,47.53133],[6.57257,47.52696],[6.5814,47.52929],[6.58364,47.50999],[6.57351,47.49549],[6.5582,47.49682],[6.55597,47.49041],[6.53454,47.50605],[6.51579,47.49659],[6.49881,47.51067],[6.47591,47.49654],[6.47106,47.48717],[6.46349,47.51212],[6.41129,47.52229],[6.39344,47.51661],[6.39004,47.50593],[6.36808,47.51349],[6.34759,47.50524],[6.33572,47.5065],[6.31946,47.48554],[6.30251,47.49153],[6.30202,47.4698],[6.28643,47.46051],[6.28717,47.44616],[6.26449,47.44725],[6.25583,47.4244],[6.239,47.43185],[6.2334,47.42975],[6.24157,47.41074],[6.20353,47.43044],[6.19284,47.41309],[6.1758,47.41681],[6.17111,47.40873],[6.19045,47.40216],[6.17771,47.4018],[6.16918,47.3893],[6.16164,47.39239],[6.16811,47.3883],[6.13558,47.38676],[6.12063,47.39562],[6.10438,47.3844],[6.10511,47.3778],[6.11135,47.37972],[6.10671,47.37707],[6.1197,47.36846],[6.11646,47.36496],[6.11275,47.36774],[6.11296,47.36134],[6.10249,47.36132],[6.10061,47.37156],[6.08629,47.37311],[6.07494,47.35123],[6.05209,47.35219],[6.01832,47.33139],[5.99821,47.34049],[5.9931,47.32872],[5.98643,47.33098],[5.97957,47.32599],[5.9608,47.34063],[5.9267,47.34476],[5.93152,47.32877],[5.92092,47.32756],[5.90292,47.33392],[5.89609,47.3277],[5.90243,47.31548],[5.89772,47.31045],[5.88389,47.32159],[5.87392,47.31397],[5.86053,47.3155],[5.84402,47.30003],[5.78128,47.2894],[5.77112,47.27705],[5.75114,47.27382],[5.7444,47.26456],[5.7323,47.26357],[5.73366,47.26727],[5.71384,47.27072],[5.69873,47.265],[5.69197,47.27231],[5.67665,47.27572],[5.64231,47.25619],[5.62273,47.25301],[5.60242,47.26151],[5.57767,47.25253],[5.5692,47.26312],[5.5721,47.26844],[5.55598,47.26871],[5.55893,47.27817],[5.53114,47.2848],[5.53393,47.28944],[5.52231,47.30584],[5.50632,47.30794],[5.49811,47.31563],[5.4701,47.31654],[5.47691,47.3312],[5.48716,47.32652],[5.49531,47.3389],[5.488,47.36201],[5.49714,47.38984],[5.47738,47.39529],[5.45181,47.3832],[5.43383,47.39313],[5.43578,47.4028],[5.44454,47.4041],[5.43043,47.42136],[5.43882,47.45043],[5.41823,47.44891],[5.41591,47.45824],[5.40676,47.46182],[5.37984,47.45069],[5.38616,47.45903],[5.3673,47.46447],[5.40764,47.47724],[5.38762,47.48212],[5.39922,47.49901],[5.43162,47.49802],[5.42904,47.49246],[5.43888,47.49243],[5.47194,47.52727],[5.4864,47.52697],[5.49706,47.55418],[5.49129,47.56338],[5.48049,47.56395],[5.48824,47.57701],[5.47755,47.60872],[5.47081,47.60841],[5.44158,47.62999],[5.42559,47.63207],[5.39945,47.59667],[5.39046,47.59417],[5.37408,47.60454],[5.3726,47.61839],[5.38582,47.63511],[5.40575,47.64687],[5.39905,47.65325],[5.40634,47.6734],[5.42018,47.67767],[5.4475,47.67083],[5.47027,47.67503],[5.48277,47.68463],[5.51203,47.67358],[5.52978,47.67283],[5.56739,47.70712],[5.58509,47.70015],[5.59668,47.67169],[5.60123,47.67525],[5.64796,47.67533],[5.66348,47.68493],[5.69106,47.68463],[5.69353,47.70481],[5.68342,47.71671],[5.69522,47.726],[5.69039,47.73515],[5.70958,47.7453],[5.70921,47.76372],[5.70167,47.76993],[5.67997,47.76997],[5.68153,47.80911],[5.6992,47.82356],[5.74076,47.8192],[5.75108,47.82903],[5.74563,47.8295],[5.7442,47.84885],[5.76119,47.85933],[5.76732,47.85565],[5.79888,47.8557],[5.79608,47.84675],[5.82798,47.85187],[5.82967,47.85623],[5.81785,47.85325],[5.82806,47.85803],[5.82182,47.87087],[5.85132,47.90599],[5.86997,47.90071],[5.8873,47.90364],[5.89086,47.91083],[5.88473,47.92605]]]}},{"type":"Feature","properties":{"code":"71","nom":"Sa\xF4ne-et-Loire"},"geometry":{"type":"Polygon","coordinates":[[[4.11597,47.12334],[4.12682,47.13063],[4.14743,47.11398],[4.1608,47.12187],[4.17753,47.11342],[4.16869,47.12328],[4.17996,47.12503],[4.18797,47.13372],[4.18506,47.15257],[4.19445,47.14751],[4.20276,47.15504],[4.21508,47.15438],[4.2132,47.14438],[4.22616,47.14723],[4.2324,47.14249],[4.2419,47.14823],[4.23664,47.14323],[4.24402,47.14108],[4.24267,47.13291],[4.25165,47.13151],[4.25693,47.1258],[4.25379,47.11743],[4.26491,47.11144],[4.2747,47.10714],[4.29714,47.11315],[4.30653,47.10327],[4.34678,47.1014],[4.34425,47.07243],[4.35341,47.06403],[4.3588,47.06191],[4.36529,47.06621],[4.37053,47.07957],[4.39953,47.08324],[4.41626,47.07659],[4.40492,47.06956],[4.40815,47.0645],[4.40093,47.05293],[4.42203,47.04702],[4.42765,47.03737],[4.45528,47.04209],[4.4716,47.03049],[4.48975,47.03344],[4.51224,47.01178],[4.52862,47.0116],[4.55481,47.02005],[4.55788,47.00816],[4.54787,46.99206],[4.56704,46.99273],[4.57366,46.97339],[4.59224,46.96812],[4.58956,46.95571],[4.61677,46.94805],[4.61643,46.94149],[4.65012,46.94127],[4.67909,46.93024],[4.66452,46.91416],[4.6871,46.90011],[4.71746,46.90795],[4.72174,46.92185],[4.72813,46.91937],[4.74451,46.92443],[4.75468,46.91668],[4.77459,46.91687],[4.79194,46.92604],[4.78847,46.93187],[4.80871,46.93063],[4.85343,46.94567],[4.89364,46.95086],[4.89469,46.96632],[4.94906,46.96618],[5.00231,46.95806],[4.99523,46.96142],[5.00341,46.97214],[5.01689,46.96849],[5.03048,46.98114],[5.0493,46.98159],[5.06593,46.96701],[5.07342,46.96702],[5.07397,46.95967],[5.09128,46.96049],[5.09496,46.9548],[5.10259,46.95753],[5.09753,46.94487],[5.10725,46.95868],[5.12017,46.96319],[5.14049,46.96188],[5.1539,46.96704],[5.16623,46.96387],[5.18166,46.97483],[5.19578,46.97047],[5.19402,46.97713],[5.2051,46.98527],[5.2122,46.98015],[5.22201,46.98886],[5.2397,46.98156],[5.25477,46.98168],[5.25438,46.97071],[5.26457,46.9587],[5.26108,46.94655],[5.25207,46.94397],[5.26406,46.93742],[5.26201,46.92739],[5.26966,46.92778],[5.2834,46.94003],[5.3079,46.93837],[5.3125,46.91002],[5.32898,46.89572],[5.32882,46.88759],[5.33552,46.88467],[5.35163,46.89329],[5.36208,46.88275],[5.39076,46.89437],[5.39946,46.89264],[5.40183,46.86832],[5.4445,46.85155],[5.45004,46.85631],[5.43955,46.85556],[5.43609,46.8615],[5.46106,46.85412],[5.45708,46.84531],[5.46508,46.84082],[5.45677,46.83097],[5.46281,46.82737],[5.45764,46.83034],[5.44795,46.82549],[5.44421,46.82904],[5.42899,46.82591],[5.41226,46.82803],[5.40841,46.83308],[5.3681,46.82533],[5.35157,46.81357],[5.33915,46.8261],[5.34201,46.81962],[5.33811,46.8227],[5.32739,46.8151],[5.3328,46.79561],[5.34001,46.79091],[5.35406,46.79253],[5.36481,46.78314],[5.36926,46.78649],[5.37172,46.77657],[5.39025,46.77058],[5.37329,46.75105],[5.36676,46.7524],[5.3611,46.73098],[5.39364,46.72863],[5.39433,46.7084],[5.40835,46.69844],[5.39536,46.68505],[5.42209,46.67303],[5.41865,46.66777],[5.4271,46.66016],[5.4131,46.65428],[5.44111,46.63754],[5.41711,46.61546],[5.39596,46.61112],[5.41423,46.60036],[5.40569,46.58167],[5.36768,46.57987],[5.36223,46.57704],[5.36788,46.56694],[5.35616,46.5618],[5.36253,46.55196],[5.3583,46.51969],[5.38494,46.51562],[5.4099,46.49991],[5.42199,46.50044],[5.41574,46.47314],[5.3981,46.4666],[5.38402,46.47117],[5.37331,46.4601],[5.35908,46.46422],[5.32335,46.46251],[5.31056,46.44677],[5.29067,46.44985],[5.28373,46.44558],[5.25765,46.44985],[5.248,46.45937],[5.23522,46.45785],[5.22554,46.46827],[5.21506,46.46836],[5.20186,46.50826],[5.17749,46.51112],[5.16728,46.51907],[5.16625,46.50312],[5.13507,46.50898],[5.13436,46.50148],[5.11455,46.49265],[5.09725,46.49996],[5.07668,46.48623],[5.05643,46.48393],[5.01297,46.50129],[5.01059,46.51107],[4.98355,46.51539],[4.96266,46.51234],[4.97035,46.50553],[4.95977,46.50767],[4.95006,46.50081],[4.9442,46.51063],[4.95454,46.51269],[4.94125,46.51965],[4.94237,46.51302],[4.93359,46.51244],[4.91556,46.48894],[4.91354,46.46074],[4.89354,46.44404],[4.88821,46.40298],[4.85146,46.35627],[4.85342,46.3299],[4.83321,46.30014],[4.82497,46.27315],[4.81099,46.25992],[4.80776,46.23697],[4.79495,46.21938],[4.7932,46.20192],[4.78024,46.18905],[4.78021,46.17668],[4.76081,46.17597],[4.75849,46.17206],[4.72726,46.17912],[4.72006,46.19398],[4.72627,46.2083],[4.73428,46.20642],[4.73568,46.2117],[4.72042,46.22156],[4.71953,46.22788],[4.73238,46.22662],[4.73577,46.23424],[4.70505,46.25123],[4.68823,46.24933],[4.67905,46.25987],[4.68158,46.26675],[4.68788,46.26531],[4.69341,46.27172],[4.7007,46.26748],[4.70769,46.26965],[4.71039,46.27857],[4.69472,46.29205],[4.69341,46.30142],[4.6792,46.30626],[4.67785,46.30054],[4.66404,46.29501],[4.65273,46.30402],[4.63682,46.30066],[4.63624,46.29014],[4.61643,46.28216],[4.61856,46.26479],[4.58377,46.26949],[4.57294,46.27592],[4.56883,46.29385],[4.56025,46.29524],[4.5478,46.28501],[4.54645,46.27392],[4.504,46.26713],[4.48846,46.28799],[4.47591,46.28405],[4.45863,46.29693],[4.43876,46.29338],[4.42704,46.30282],[4.42187,46.29495],[4.40581,46.29606],[4.38966,46.2585],[4.39239,46.25157],[4.38545,46.24684],[4.39241,46.23542],[4.38592,46.22604],[4.38938,46.21329],[4.37511,46.21111],[4.3735,46.20462],[4.36283,46.20004],[4.37394,46.18684],[4.36333,46.18203],[4.34567,46.18784],[4.33661,46.18102],[4.32709,46.18479],[4.31531,46.17064],[4.30696,46.17461],[4.29231,46.17248],[4.28123,46.15594],[4.24991,46.15818],[4.24866,46.16711],[4.26352,46.17536],[4.25491,46.18801],[4.24236,46.18883],[4.22469,46.178],[4.20791,46.19484],[4.18524,46.1894],[4.18701,46.17457],[4.13339,46.17732],[4.10383,46.19844],[4.06845,46.18639],[4.05886,46.18806],[4.0305,46.16977],[3.99348,46.17288],[3.99012,46.16911],[3.97097,46.18915],[3.97255,46.20271],[3.93352,46.20642],[3.91837,46.20285],[3.8983,46.21024],[3.89013,46.21449],[3.89809,46.22518],[3.89661,46.23712],[3.89885,46.2406],[3.90487,46.23786],[3.90969,46.24778],[3.90473,46.27354],[3.89124,46.28525],[3.89722,46.29246],[3.94543,46.30046],[3.94578,46.32124],[3.97143,46.32151],[3.98981,46.31508],[3.98941,46.32296],[4.00457,46.32748],[3.98474,46.32973],[3.99161,46.36963],[3.97722,46.39922],[3.9887,46.40877],[3.98408,46.41963],[3.9961,46.42738],[3.98945,46.43782],[4.00554,46.44246],[3.99745,46.45026],[4.00081,46.46245],[3.97683,46.47895],[3.95233,46.47849],[3.95572,46.49168],[3.91016,46.49538],[3.89521,46.48069],[3.86491,46.48974],[3.8638,46.51274],[3.84187,46.51421],[3.84647,46.52436],[3.83916,46.53129],[3.80513,46.51932],[3.79324,46.52779],[3.78067,46.52836],[3.77253,46.5385],[3.75467,46.53602],[3.74185,46.53951],[3.73154,46.54958],[3.7431,46.5655],[3.73389,46.59512],[3.73732,46.60157],[3.71286,46.61023],[3.72399,46.62633],[3.70919,46.63533],[3.69695,46.66058],[3.66898,46.67351],[3.67315,46.68184],[3.65783,46.68516],[3.65066,46.70517],[3.63764,46.70748],[3.63759,46.72453],[3.6226,46.74013],[3.63172,46.74997],[3.63952,46.73944],[3.64863,46.74263],[3.66042,46.73754],[3.73894,46.75231],[3.78367,46.73605],[3.77688,46.72975],[3.78864,46.72118],[3.79733,46.7015],[3.80816,46.70572],[3.82906,46.70447],[3.84524,46.71716],[3.84454,46.72257],[3.87416,46.72672],[3.87636,46.73227],[3.88726,46.72717],[3.89881,46.7348],[3.91272,46.7342],[3.91276,46.74195],[3.92352,46.73847],[3.93336,46.7417],[3.92799,46.75055],[3.95337,46.75415],[3.96771,46.76911],[3.9734,46.76723],[3.99399,46.77886],[4.01899,46.77602],[4.03337,46.7876],[4.05528,46.77624],[4.06271,46.78936],[4.05828,46.82124],[4.04237,46.83412],[4.10089,46.85911],[4.09937,46.86691],[4.07014,46.89614],[4.04537,46.89986],[4.0393,46.90935],[4.03654,46.92779],[4.04836,46.93213],[4.03955,46.94813],[4.05572,46.95675],[4.04127,46.9737],[4.0394,46.98511],[4.00957,46.97098],[3.99366,46.97899],[3.996,46.98674],[4.03227,46.99876],[4.05547,47.01268],[4.06167,47.02338],[4.05591,47.03661],[4.07343,47.05528],[4.03847,47.08046],[4.05376,47.09504],[4.04818,47.10997],[4.06001,47.12122],[4.08989,47.11618],[4.09495,47.12757],[4.10993,47.11821],[4.11597,47.12334]],[[5.45608,46.85084],[5.45803,46.85397],[5.45231,46.85364],[5.45608,46.85084]]]}},{"type":"Feature","properties":{"code":"72","nom":"Sarthe"},"geometry":{"type":"Polygon","coordinates":[[[-0.05453,48.382],[-0.05069,48.37521],[-0.0506,48.38016],[-0.03657,48.38063],[-0.0348,48.38634],[-0.02077,48.3865],[-0.01865,48.3945],[-0.00135,48.39738],[0.01531,48.38167],[0.06078,48.37962],[0.05414,48.39195],[0.07055,48.40909],[0.10014,48.41013],[0.11718,48.43603],[0.15779,48.44081],[0.14557,48.45731],[0.17114,48.44943],[0.17316,48.46522],[0.19049,48.46186],[0.21332,48.47358],[0.2491,48.47397],[0.26475,48.4847],[0.27464,48.47921],[0.30072,48.48049],[0.30909,48.47254],[0.32678,48.47169],[0.33875,48.4616],[0.35675,48.45774],[0.38244,48.4249],[0.3809,48.41583],[0.37173,48.41045],[0.38814,48.3497],[0.38048,48.3418],[0.3836,48.3325],[0.40417,48.31531],[0.42046,48.32111],[0.43133,48.30664],[0.46628,48.30587],[0.4805,48.29859],[0.48995,48.30936],[0.5074,48.29494],[0.49459,48.28196],[0.51313,48.26688],[0.5329,48.26428],[0.53605,48.24967],[0.613,48.24205],[0.62361,48.24531],[0.63191,48.23462],[0.63848,48.23561],[0.63355,48.25757],[0.64992,48.26374],[0.66496,48.26082],[0.67122,48.25515],[0.68295,48.25488],[0.68629,48.24067],[0.69992,48.23172],[0.70449,48.21892],[0.71579,48.21467],[0.72364,48.19814],[0.73015,48.20052],[0.74536,48.1849],[0.7607,48.18021],[0.79766,48.19445],[0.79562,48.18804],[0.81109,48.18568],[0.83951,48.16567],[0.85988,48.1676],[0.88625,48.16195],[0.91162,48.14886],[0.91367,48.13504],[0.85037,48.13308],[0.85537,48.12262],[0.84122,48.10306],[0.83268,48.09845],[0.81435,48.0988],[0.81517,48.09373],[0.82864,48.08986],[0.83793,48.08876],[0.83872,48.09417],[0.84817,48.0946],[0.84302,48.07264],[0.79398,48.06971],[0.79755,48.03724],[0.80598,48.03834],[0.80837,48.03167],[0.82673,48.02975],[0.83498,48.03444],[0.84188,48.03018],[0.83237,47.99659],[0.81866,47.98925],[0.84952,47.9472],[0.84771,47.94158],[0.81635,47.93428],[0.81175,47.92883],[0.80842,47.91659],[0.81609,47.91292],[0.80754,47.9079],[0.81522,47.90386],[0.81767,47.89297],[0.81211,47.88853],[0.79507,47.89991],[0.79002,47.91221],[0.76018,47.89886],[0.75709,47.88578],[0.76469,47.86658],[0.75916,47.85922],[0.77387,47.85033],[0.77485,47.84381],[0.76841,47.8311],[0.75886,47.83354],[0.74587,47.82756],[0.74021,47.8116],[0.71949,47.79275],[0.71453,47.79376],[0.71213,47.78715],[0.69838,47.78925],[0.69122,47.78339],[0.70254,47.76682],[0.69143,47.76383],[0.67697,47.76953],[0.64535,47.75283],[0.62756,47.75194],[0.60902,47.7253],[0.59409,47.72311],[0.58114,47.71356],[0.59297,47.70359],[0.59557,47.68832],[0.60419,47.68561],[0.61885,47.69348],[0.61481,47.68275],[0.59688,47.67285],[0.57912,47.66782],[0.55879,47.6708],[0.55171,47.65917],[0.52296,47.6531],[0.51612,47.65664],[0.49842,47.64476],[0.46401,47.64561],[0.44993,47.61933],[0.42391,47.61783],[0.39625,47.64085],[0.38279,47.64309],[0.36426,47.62051],[0.38346,47.61019],[0.40238,47.57842],[0.37848,47.56853],[0.33972,47.57938],[0.3221,47.59523],[0.27562,47.59838],[0.25925,47.61225],[0.23,47.6084],[0.21129,47.61228],[0.20625,47.60342],[0.20183,47.61409],[0.19218,47.61742],[0.18583,47.61654],[0.18311,47.59683],[0.16193,47.59414],[0.14571,47.58128],[0.13231,47.59655],[0.11858,47.59692],[0.11569,47.60573],[0.05322,47.60573],[0.03583,47.61866],[0.00978,47.62395],[0.0103,47.63489],[-0.00167,47.64648],[-0.02002,47.63712],[-0.02458,47.64669],[-0.05468,47.64842],[-0.07211,47.65991],[-0.08972,47.65039],[-0.0946,47.66226],[-0.10184,47.66188],[-0.11425,47.64813],[-0.11133,47.63536],[-0.11771,47.63343],[-0.12548,47.63745],[-0.1345,47.63249],[-0.14778,47.63599],[-0.15868,47.64695],[-0.19652,47.64892],[-0.19506,47.66138],[-0.22019,47.68962],[-0.2155,47.69589],[-0.20031,47.69469],[-0.17455,47.71644],[-0.18461,47.71478],[-0.20237,47.72524],[-0.23465,47.70326],[-0.28585,47.71952],[-0.30571,47.71674],[-0.33336,47.72173],[-0.34808,47.71477],[-0.36583,47.71612],[-0.35694,47.73046],[-0.37492,47.73895],[-0.37264,47.74386],[-0.3807,47.75029],[-0.37471,47.75965],[-0.3817,47.76056],[-0.37543,47.76724],[-0.38543,47.80197],[-0.3882,47.80532],[-0.41678,47.80253],[-0.42872,47.80617],[-0.44786,47.83222],[-0.43004,47.84159],[-0.42829,47.85037],[-0.41099,47.84663],[-0.41236,47.85753],[-0.38963,47.86027],[-0.37806,47.85491],[-0.37143,47.85867],[-0.38039,47.86773],[-0.36922,47.87028],[-0.3733,47.88463],[-0.39443,47.89373],[-0.41021,47.8947],[-0.40365,47.90232],[-0.41285,47.91583],[-0.40475,47.92088],[-0.40518,47.91502],[-0.39681,47.91644],[-0.39704,47.92593],[-0.37745,47.93281],[-0.33877,47.93064],[-0.33132,47.93815],[-0.31987,47.93544],[-0.29532,47.944],[-0.27657,47.95747],[-0.30168,47.96546],[-0.29871,47.97965],[-0.31337,47.99407],[-0.30853,48.00565],[-0.34147,48.01179],[-0.33365,48.02798],[-0.34166,48.0431],[-0.33036,48.05037],[-0.31721,48.04509],[-0.27987,48.05534],[-0.28427,48.06],[-0.27145,48.06524],[-0.23094,48.05899],[-0.22232,48.07779],[-0.23741,48.08286],[-0.2368,48.0979],[-0.21933,48.10453],[-0.21642,48.11373],[-0.22296,48.12272],[-0.24679,48.12764],[-0.23906,48.13586],[-0.25381,48.13653],[-0.24871,48.14483],[-0.23742,48.14742],[-0.23774,48.15298],[-0.24568,48.15155],[-0.25256,48.15752],[-0.19003,48.18124],[-0.16448,48.19977],[-0.14684,48.20501],[-0.15314,48.21473],[-0.14484,48.22399],[-0.16096,48.23881],[-0.16734,48.26351],[-0.1557,48.26529],[-0.14981,48.28531],[-0.13794,48.29317],[-0.14197,48.30918],[-0.15462,48.31399],[-0.15795,48.32152],[-0.1571,48.34088],[-0.14781,48.3441],[-0.12222,48.33831],[-0.13191,48.34315],[-0.13672,48.36432],[-0.11923,48.36721],[-0.11216,48.37425],[-0.09053,48.37517],[-0.07782,48.36901],[-0.07086,48.37905],[-0.06253,48.37567],[-0.05453,48.382]]]}},{"type":"Feature","properties":{"code":"73","nom":"Savoie"},"geometry":{"type":"Polygon","coordinates":[[[6.80252,45.77837],[6.80562,45.74846],[6.81725,45.7403],[6.80842,45.72515],[6.82911,45.70283],[6.84139,45.7004],[6.84634,45.6902],[6.89334,45.6755],[6.90253,45.68094],[6.907,45.6759],[6.90214,45.66374],[6.91452,45.66116],[6.91483,45.65173],[6.93083,45.64567],[6.96058,45.65485],[7.00069,45.6399],[6.98514,45.6209],[6.97801,45.58718],[6.997,45.5689],[6.98975,45.55676],[6.99596,45.54516],[6.99119,45.53044],[7.00531,45.5171],[7.00033,45.50442],[7.02122,45.49678],[7.05457,45.49497],[7.04799,45.47344],[7.10303,45.46845],[7.09918,45.45879],[7.11461,45.44172],[7.11435,45.43349],[7.15224,45.4232],[7.16342,45.41339],[7.18427,45.40748],[7.17944,45.39035],[7.16504,45.38358],[7.15846,45.37039],[7.16451,45.36066],[7.13393,45.34723],[7.13175,45.32924],[7.11117,45.32694],[7.1218,45.29622],[7.13643,45.2808],[7.12815,45.27176],[7.13759,45.25569],[7.12521,45.24394],[7.1106,45.24635],[7.1063,45.23728],[7.08075,45.22445],[7.08309,45.21782],[7.07185,45.20995],[7.04721,45.22581],[7.02634,45.21544],[7.00356,45.21991],[6.99306,45.20997],[6.96575,45.20795],[6.96058,45.20298],[6.96738,45.19639],[6.95232,45.18969],[6.95419,45.17961],[6.94291,45.17619],[6.94713,45.17076],[6.89161,45.16704],[6.88411,45.15674],[6.89756,45.14301],[6.89235,45.13682],[6.87363,45.13593],[6.84789,45.1272],[6.84725,45.13556],[6.83602,45.13523],[6.82139,45.14526],[6.76795,45.15974],[6.74002,45.13674],[6.71211,45.14465],[6.68007,45.14012],[6.67246,45.12441],[6.6482,45.11477],[6.63563,45.11588],[6.62999,45.10933],[6.61555,45.12148],[6.59271,45.11894],[6.57653,45.1231],[6.5613,45.10531],[6.53916,45.09909],[6.52971,45.09857],[6.51042,45.109],[6.48049,45.09417],[6.4896,45.06767],[6.48623,45.05607],[6.4518,45.05172],[6.43427,45.06359],[6.42278,45.06008],[6.40378,45.06476],[6.39635,45.06105],[6.36488,45.07017],[6.37467,45.08317],[6.36278,45.10506],[6.33448,45.12284],[6.31733,45.11199],[6.28628,45.11016],[6.26057,45.12685],[6.26537,45.13961],[6.24997,45.15084],[6.22405,45.14114],[6.2119,45.15483],[6.18099,45.16485],[6.16132,45.15101],[6.14379,45.15455],[6.16192,45.18841],[6.15948,45.20245],[6.13782,45.21334],[6.14178,45.22225],[6.12709,45.23243],[6.1257,45.24427],[6.14102,45.26132],[6.13071,45.28486],[6.14124,45.29879],[6.15412,45.30432],[6.15394,45.31135],[6.18679,45.31986],[6.19476,45.35224],[6.17107,45.35712],[6.19184,45.36933],[6.17745,45.39316],[6.14466,45.4136],[6.12877,45.43626],[6.1161,45.43817],[6.09538,45.43167],[6.09297,45.44418],[6.06316,45.44423],[6.04911,45.4379],[6.00852,45.45385],[6.01091,45.4732],[5.99119,45.47515],[5.98236,45.48671],[5.96617,45.49231],[5.95336,45.48481],[5.91537,45.47645],[5.92526,45.46406],[5.92124,45.44366],[5.90447,45.43258],[5.9036,45.40802],[5.92826,45.41673],[5.90962,45.3904],[5.89161,45.39066],[5.88993,45.40134],[5.86072,45.40925],[5.85427,45.41657],[5.80806,45.42584],[5.7981,45.43818],[5.7828,45.4423],[5.75766,45.43492],[5.74019,45.4368],[5.73197,45.45282],[5.73646,45.47168],[5.71915,45.48377],[5.70984,45.50233],[5.71349,45.50637],[5.70117,45.50818],[5.70367,45.51337],[5.69125,45.52181],[5.69198,45.52764],[5.67603,45.53072],[5.66974,45.53807],[5.67334,45.54345],[5.68114,45.54205],[5.67226,45.54664],[5.67447,45.55905],[5.65344,45.5707],[5.62303,45.60428],[5.62217,45.61156],[5.63402,45.61251],[5.65153,45.63591],[5.6872,45.64312],[5.68488,45.66616],[5.70976,45.68648],[5.7006,45.70995],[5.73821,45.71035],[5.74876,45.7053],[5.77624,45.72638],[5.76984,45.74131],[5.7835,45.74431],[5.77904,45.75989],[5.78407,45.81651],[5.79722,45.83105],[5.82854,45.9093],[5.82187,45.92931],[5.83123,45.93846],[5.83789,45.93199],[5.8621,45.9324],[5.87931,45.86047],[5.8731,45.83409],[5.88159,45.82671],[5.90479,45.82607],[5.90489,45.8109],[5.91322,45.80414],[5.93061,45.80711],[5.93369,45.81403],[5.94318,45.81039],[5.96279,45.81274],[5.95807,45.79492],[5.98055,45.79617],[5.98175,45.78118],[5.97283,45.76995],[5.9967,45.76115],[5.99381,45.74769],[6.00948,45.75114],[6.04295,45.7391],[6.05515,45.75108],[6.07561,45.74089],[6.09613,45.74282],[6.10086,45.73208],[6.10374,45.7618],[6.1257,45.74989],[6.13761,45.76133],[6.16623,45.75572],[6.16614,45.7487],[6.17838,45.74715],[6.18224,45.73346],[6.19555,45.73233],[6.19065,45.69647],[6.19618,45.69277],[6.2015,45.70002],[6.21235,45.70058],[6.21429,45.70899],[6.23165,45.70275],[6.2276,45.68177],[6.25812,45.68359],[6.26052,45.68753],[6.27989,45.68431],[6.30483,45.6933],[6.32863,45.69281],[6.35329,45.73292],[6.34768,45.73717],[6.37163,45.75406],[6.37467,45.7657],[6.36252,45.76857],[6.42491,45.80352],[6.43086,45.8203],[6.44992,45.8373],[6.44488,45.84487],[6.45425,45.85475],[6.45076,45.86132],[6.46202,45.86789],[6.47057,45.88469],[6.49467,45.88953],[6.51119,45.90901],[6.53205,45.89661],[6.55868,45.89309],[6.55887,45.88628],[6.57291,45.87755],[6.56606,45.87078],[6.56819,45.86242],[6.53533,45.86198],[6.55925,45.82013],[6.56556,45.81571],[6.57721,45.81657],[6.58425,45.8009],[6.59918,45.79236],[6.63903,45.80061],[6.65883,45.80004],[6.69054,45.77097],[6.68615,45.75533],[6.69901,45.74478],[6.689,45.72805],[6.71195,45.72292],[6.73984,45.74512],[6.75551,45.76635],[6.80252,45.77837]]]}},{"type":"Feature","properties":{"code":"74","nom":"Haute-Savoie"},"geometry":{"type":"Polygon","coordinates":[[[6.80252,45.77837],[6.75551,45.76635],[6.73984,45.74512],[6.71195,45.72292],[6.689,45.72805],[6.69901,45.74478],[6.68615,45.75533],[6.69054,45.77097],[6.65883,45.80004],[6.63903,45.80061],[6.59918,45.79236],[6.58425,45.8009],[6.57721,45.81657],[6.56556,45.81571],[6.55925,45.82013],[6.53533,45.86198],[6.56819,45.86242],[6.56606,45.87078],[6.57291,45.87755],[6.55887,45.88628],[6.55868,45.89309],[6.53205,45.89661],[6.51119,45.90901],[6.49467,45.88953],[6.47057,45.88469],[6.46202,45.86789],[6.45076,45.86132],[6.45425,45.85475],[6.44488,45.84487],[6.44992,45.8373],[6.43086,45.8203],[6.42491,45.80352],[6.36252,45.76857],[6.37467,45.7657],[6.37163,45.75406],[6.34768,45.73717],[6.35329,45.73292],[6.32863,45.69281],[6.30483,45.6933],[6.27989,45.68431],[6.26052,45.68753],[6.25812,45.68359],[6.2276,45.68177],[6.23217,45.70192],[6.21429,45.70899],[6.21235,45.70058],[6.2015,45.70002],[6.19618,45.69277],[6.18971,45.70416],[6.19555,45.73233],[6.18224,45.73346],[6.17838,45.74715],[6.16614,45.7487],[6.16623,45.75572],[6.1429,45.76151],[6.1257,45.74989],[6.10374,45.7618],[6.10086,45.73208],[6.09613,45.74282],[6.07561,45.74089],[6.05515,45.75108],[6.04295,45.7391],[6.00948,45.75114],[5.99381,45.74769],[5.9967,45.76115],[5.97283,45.76995],[5.98175,45.78118],[5.98055,45.79617],[5.95807,45.79492],[5.96279,45.81274],[5.94318,45.81039],[5.93369,45.81403],[5.93061,45.80711],[5.91322,45.80414],[5.90489,45.8109],[5.90479,45.82607],[5.88159,45.82671],[5.8731,45.83409],[5.87931,45.86047],[5.8621,45.9324],[5.83789,45.93199],[5.8252,45.9389],[5.83502,45.95111],[5.83403,45.97203],[5.80964,45.9898],[5.81092,46.00993],[5.80564,46.01429],[5.8124,46.02398],[5.807,46.04383],[5.81424,46.05716],[5.80762,46.06393],[5.82269,46.09225],[5.81956,46.10311],[5.83155,46.10625],[5.85567,46.08677],[5.88318,46.08492],[5.89352,46.09562],[5.88532,46.1079],[5.89171,46.11752],[5.92027,46.13121],[5.94621,46.12795],[5.95606,46.13209],[5.95729,46.12794],[5.97718,46.13305],[5.98224,46.14174],[5.99278,46.14442],[6.03671,46.13646],[6.04865,46.14131],[6.05204,46.1514],[6.09247,46.15176],[6.09902,46.14391],[6.13121,46.1404],[6.1771,46.15908],[6.18889,46.16633],[6.18736,46.18034],[6.23422,46.20639],[6.24755,46.20516],[6.27737,46.21561],[6.29447,46.22492],[6.31025,46.24383],[6.30953,46.25625],[6.29541,46.25583],[6.29488,46.26459],[6.26662,46.24747],[6.23758,46.27775],[6.2529,46.29051],[6.24351,46.30353],[6.25767,46.32551],[6.27674,46.34971],[6.30521,46.36676],[6.32669,46.37157],[6.34468,46.37001],[6.35953,46.34945],[6.38911,46.34012],[6.41313,46.35964],[6.43144,46.36004],[6.4749,46.37482],[6.48447,46.39349],[6.51307,46.40479],[6.54388,46.39482],[6.6354,46.40603],[6.72387,46.40796],[6.7898,46.39292],[6.80531,46.39414],[6.80617,46.37983],[6.79186,46.36715],[6.77142,46.36092],[6.77199,46.35031],[6.78432,46.33316],[6.79647,46.33295],[6.79993,46.32047],[6.82504,46.31187],[6.82998,46.30004],[6.84778,46.28978],[6.85891,46.2906],[6.86449,46.27961],[6.85558,46.25514],[6.82098,46.23187],[6.8217,46.22314],[6.80366,46.20435],[6.8127,46.18164],[6.79198,46.16223],[6.79654,46.13862],[6.81473,46.1297],[6.83805,46.13264],[6.85178,46.12642],[6.89993,46.1239],[6.88281,46.09512],[6.89182,46.08511],[6.89147,46.07386],[6.88041,46.06935],[6.87558,46.04774],[6.89131,46.04237],[6.92451,46.06519],[6.93791,46.06328],[6.9358,46.05512],[6.95022,46.05166],[6.9629,46.03053],[6.98147,46.01981],[6.9851,46.00465],[7.01048,45.99738],[7.01218,45.98709],[7.02321,45.97847],[7.00901,45.96897],[7.01798,45.96035],[7.03761,45.9543],[7.03588,45.93793],[7.04507,45.92245],[7.01831,45.91437],[7.00315,45.89783],[7.00675,45.88709],[6.99145,45.86798],[6.95134,45.86122],[6.94137,45.84693],[6.92182,45.84759],[6.91327,45.84082],[6.87914,45.84915],[6.86738,45.82409],[6.84436,45.84046],[6.81889,45.8362],[6.80484,45.81559],[6.81307,45.80747],[6.81312,45.79548],[6.80563,45.79289],[6.80252,45.77837]]]}},{"type":"Feature","properties":{"code":"75","nom":"Paris"},"geometry":{"type":"Polygon","coordinates":[[[2.3319,48.81701],[2.27906,48.83249],[2.26754,48.82779],[2.27005,48.83301],[2.25514,48.83481],[2.25248,48.84548],[2.22422,48.85352],[2.23174,48.86907],[2.24569,48.87643],[2.25541,48.87426],[2.25847,48.88039],[2.27995,48.87857],[2.28567,48.88657],[2.32063,48.9008],[2.38515,48.90201],[2.3949,48.89844],[2.4002,48.88383],[2.41239,48.876],[2.41224,48.83454],[2.42214,48.83579],[2.42184,48.84444],[2.43718,48.84089],[2.44075,48.84596],[2.46226,48.84254],[2.46971,48.83658],[2.45723,48.81698],[2.43746,48.81818],[2.40247,48.82954],[2.36293,48.81608],[2.3319,48.81701]]]}},{"type":"Feature","properties":{"code":"76","nom":"Seine-Maritime"},"geometry":{"type":"Polygon","coordinates":[[[1.38155,50.06577],[1.40926,50.05707],[1.4236,50.07085],[1.44906,50.06889],[1.45915,50.0625],[1.45558,50.04434],[1.44917,50.04687],[1.45479,50.03778],[1.47081,50.03511],[1.49135,50.01831],[1.51635,50.01208],[1.52747,49.9951],[1.57277,49.97486],[1.5776,49.96378],[1.60337,49.94308],[1.67817,49.91827],[1.69196,49.89685],[1.71284,49.88586],[1.71174,49.87372],[1.72055,49.86027],[1.71729,49.84884],[1.72567,49.84529],[1.73577,49.81031],[1.74662,49.80323],[1.75794,49.7808],[1.77332,49.77696],[1.78464,49.76357],[1.78476,49.75848],[1.76745,49.75666],[1.75029,49.76373],[1.73915,49.74905],[1.74546,49.73856],[1.72323,49.73008],[1.71277,49.73389],[1.71547,49.7086],[1.68958,49.69479],[1.70451,49.68093],[1.71474,49.68238],[1.74009,49.70135],[1.75112,49.69439],[1.75218,49.68096],[1.72313,49.67254],[1.72157,49.65855],[1.69868,49.6439],[1.71725,49.63307],[1.72161,49.62199],[1.69373,49.60107],[1.70846,49.5949],[1.70941,49.58671],[1.72162,49.58881],[1.72004,49.5816],[1.69067,49.58],[1.69952,49.58041],[1.69769,49.57221],[1.70335,49.57769],[1.71401,49.57757],[1.72983,49.56129],[1.72348,49.5439],[1.7483,49.53845],[1.73561,49.52481],[1.74134,49.51899],[1.71639,49.50393],[1.73957,49.49965],[1.74523,49.48885],[1.75767,49.51067],[1.77186,49.51285],[1.78907,49.50543],[1.79053,49.49793],[1.78863,49.49014],[1.77225,49.48493],[1.77586,49.47133],[1.74773,49.4586],[1.75146,49.45254],[1.73909,49.44934],[1.73353,49.44126],[1.72484,49.44139],[1.72883,49.4371],[1.7226,49.43279],[1.72242,49.41984],[1.71122,49.4077],[1.70455,49.41071],[1.69428,49.39486],[1.68062,49.40607],[1.66801,49.40695],[1.6593,49.39899],[1.62793,49.41066],[1.6282,49.4151],[1.61435,49.40995],[1.60445,49.41172],[1.5762,49.44005],[1.54714,49.4409],[1.53719,49.43008],[1.52962,49.4423],[1.50417,49.43804],[1.49582,49.44629],[1.47719,49.45133],[1.44865,49.45002],[1.43573,49.45515],[1.40032,49.4568],[1.39268,49.44904],[1.38406,49.44853],[1.38743,49.46304],[1.37582,49.45308],[1.34523,49.44806],[1.34122,49.44264],[1.35075,49.43817],[1.34724,49.43464],[1.33749,49.43887],[1.33674,49.42769],[1.32731,49.43154],[1.30963,49.42873],[1.31433,49.41537],[1.30807,49.39536],[1.29319,49.39499],[1.29154,49.38827],[1.28548,49.38818],[1.28992,49.37571],[1.28175,49.3568],[1.27217,49.35708],[1.27214,49.34629],[1.20957,49.35239],[1.19946,49.35114],[1.20312,49.33654],[1.18485,49.33807],[1.18272,49.34384],[1.16859,49.33597],[1.16684,49.34143],[1.16012,49.34182],[1.13467,49.32464],[1.13399,49.30984],[1.08069,49.30878],[1.04815,49.29788],[1.06876,49.27627],[1.05201,49.27313],[1.06509,49.26292],[1.06269,49.25895],[1.04945,49.26343],[1.00182,49.25092],[0.99201,49.258],[1.00687,49.26487],[0.98512,49.26089],[0.98725,49.26797],[0.97555,49.27202],[0.97331,49.27988],[0.95577,49.27137],[0.94922,49.27921],[0.96553,49.28638],[0.95774,49.28934],[0.96343,49.29453],[0.94986,49.29692],[0.94022,49.32286],[0.92891,49.31392],[0.90729,49.30775],[0.91045,49.29853],[0.90175,49.29788],[0.89256,49.30315],[0.89829,49.31668],[0.8919,49.31421],[0.8619,49.32598],[0.84509,49.32419],[0.84171,49.32936],[0.85266,49.33148],[0.84776,49.336],[0.85916,49.33956],[0.86012,49.34632],[0.87079,49.34187],[0.88197,49.34773],[0.9208,49.33823],[0.93055,49.34343],[0.92134,49.3524],[0.91812,49.38546],[0.8957,49.3797],[0.89289,49.37219],[0.87934,49.3735],[0.88574,49.38797],[0.87387,49.39093],[0.87846,49.39625],[0.84531,49.39201],[0.82105,49.39704],[0.81075,49.4046],[0.80284,49.42732],[0.80497,49.41158],[0.79787,49.41755],[0.78307,49.41075],[0.76487,49.41958],[0.73829,49.40807],[0.70802,49.41103],[0.70491,49.40216],[0.69046,49.4065],[0.6644,49.40167],[0.64948,49.40919],[0.65978,49.41618],[0.65221,49.42182],[0.64425,49.415],[0.63976,49.4192],[0.64502,49.42608],[0.62951,49.42229],[0.63353,49.43387],[0.64613,49.43961],[0.64254,49.44425],[0.61163,49.42922],[0.58817,49.43121],[0.52494,49.47787],[0.50916,49.48423],[0.49008,49.48361],[0.40431,49.45104],[0.33898,49.44093],[0.33932,49.44987],[0.27314,49.45341],[0.27204,49.44245],[0.26344,49.449],[0.2583,49.44613],[0.2177,49.45296],[0.17273,49.45305],[0.1739,49.4565],[0.12125,49.46319],[0.0907,49.48211],[0.09178,49.4977],[0.06655,49.51007],[0.06883,49.52492],[0.14989,49.63946],[0.16423,49.68646],[0.20599,49.71419],[0.23735,49.71903],[0.28573,49.73797],[0.33666,49.74677],[0.37011,49.76911],[0.42422,49.78427],[0.58353,49.85262],[0.69189,49.87129],[0.78218,49.87419],[0.83257,49.88961],[0.92426,49.90523],[0.9593,49.91951],[1.02324,49.91623],[1.07273,49.92771],[1.0897,49.9371],[1.10726,49.93712],[1.20182,49.9713],[1.20561,49.98098],[1.22792,49.98554],[1.33242,50.04712],[1.36958,50.06484],[1.38155,50.06577]]]}},{"type":"Feature","properties":{"code":"77","nom":"Seine-et-Marne"},"geometry":{"type":"Polygon","coordinates":[[[2.57166,48.69201],[2.58186,48.69744],[2.56814,48.70897],[2.59468,48.73181],[2.58541,48.74171],[2.60234,48.75373],[2.59754,48.76057],[2.61557,48.76237],[2.607,48.7744],[2.5868,48.77355],[2.59977,48.79498],[2.59211,48.7996],[2.5946,48.82129],[2.57384,48.85338],[2.58306,48.85543],[2.58793,48.86361],[2.56763,48.86588],[2.57137,48.8797],[2.55941,48.88647],[2.58703,48.89395],[2.5842,48.90335],[2.59237,48.9077],[2.58877,48.92094],[2.6026,48.92936],[2.60319,48.93754],[2.59593,48.93861],[2.58981,48.95344],[2.56248,48.97886],[2.57868,48.97914],[2.58144,48.98593],[2.57584,49.00029],[2.56466,49.00565],[2.56878,49.01113],[2.55306,49.00982],[2.54905,49.01472],[2.54077,49.01163],[2.5345,49.01858],[2.53501,49.02381],[2.56607,49.02859],[2.57703,49.0461],[2.59447,49.04714],[2.58472,49.0526],[2.58577,49.05781],[2.57419,49.05415],[2.57096,49.06056],[2.59052,49.07965],[2.61034,49.09494],[2.623,49.09559],[2.63327,49.10838],[2.64124,49.09909],[2.65021,49.10055],[2.67739,49.08829],[2.69502,49.07474],[2.68991,49.06757],[2.69781,49.0644],[2.72436,49.08046],[2.73501,49.06045],[2.75355,49.06074],[2.77793,49.07023],[2.78708,49.0755],[2.76834,49.08326],[2.78887,49.08287],[2.78399,49.08864],[2.80925,49.09754],[2.82954,49.08383],[2.84495,49.08488],[2.85465,49.07018],[2.87032,49.07019],[2.88761,49.07947],[2.89495,49.07706],[2.90151,49.08537],[2.92331,49.07758],[2.93307,49.08095],[2.94059,49.07713],[2.94583,49.08808],[2.95674,49.08541],[2.96873,49.09146],[2.97535,49.0742],[2.98689,49.07107],[2.99124,49.08401],[3.00088,49.08953],[3.00605,49.08645],[3.00852,49.09151],[3.03157,49.08561],[3.03279,49.08907],[3.06501,49.08515],[3.05602,49.10048],[3.07188,49.11755],[3.08098,49.11183],[3.13817,49.10713],[3.14397,49.10192],[3.16523,49.09965],[3.15358,49.08328],[3.17663,49.06958],[3.18217,49.05236],[3.18996,49.05257],[3.1909,49.04762],[3.18046,49.04449],[3.17692,49.03075],[3.16103,49.02423],[3.1674,49.0124],[3.19754,49.00849],[3.20932,48.99379],[3.22918,48.98842],[3.23122,48.97675],[3.24935,48.97436],[3.26487,48.93915],[3.28453,48.94053],[3.30475,48.94876],[3.31308,48.92122],[3.3303,48.90871],[3.36053,48.9184],[3.36831,48.92766],[3.3765,48.90968],[3.36897,48.89368],[3.38369,48.88891],[3.38143,48.87157],[3.40586,48.87588],[3.40421,48.86398],[3.42399,48.86738],[3.43035,48.86074],[3.44563,48.86035],[3.45223,48.85629],[3.44536,48.84323],[3.46071,48.83944],[3.47046,48.851],[3.48519,48.85191],[3.49131,48.83467],[3.4872,48.81519],[3.48092,48.81218],[3.47038,48.82089],[3.44815,48.81115],[3.41661,48.81783],[3.40417,48.80927],[3.42304,48.80075],[3.44212,48.80358],[3.44395,48.79139],[3.44186,48.78241],[3.43817,48.78511],[3.42945,48.77943],[3.4241,48.78412],[3.40892,48.7839],[3.39583,48.75925],[3.4091,48.7523],[3.42852,48.75839],[3.44407,48.73663],[3.46973,48.73787],[3.4643,48.70738],[3.47778,48.69792],[3.47256,48.69786],[3.47168,48.68567],[3.44755,48.67725],[3.44061,48.66365],[3.46043,48.65301],[3.45109,48.63465],[3.47657,48.63733],[3.49288,48.64762],[3.5175,48.64337],[3.53324,48.64651],[3.51738,48.63719],[3.51907,48.63347],[3.53798,48.63162],[3.55851,48.61696],[3.50321,48.60456],[3.51586,48.58978],[3.49318,48.59025],[3.46552,48.57049],[3.47423,48.56449],[3.47638,48.55208],[3.48589,48.54727],[3.47909,48.54552],[3.48175,48.54145],[3.45695,48.52963],[3.41424,48.53347],[3.4054,48.52801],[3.42355,48.51481],[3.4351,48.49602],[3.43464,48.49025],[3.42044,48.49174],[3.40966,48.48569],[3.40507,48.48855],[3.38336,48.47944],[3.39964,48.46768],[3.39438,48.46274],[3.40648,48.45245],[3.40494,48.43941],[3.39515,48.43682],[3.39167,48.42325],[3.41183,48.42131],[3.4025,48.41517],[3.4221,48.41619],[3.41479,48.39027],[3.40204,48.38971],[3.37791,48.39911],[3.37348,48.3935],[3.36722,48.39432],[3.36516,48.37228],[3.35642,48.37121],[3.35656,48.37845],[3.35097,48.37863],[3.34842,48.37326],[3.33547,48.37018],[3.31207,48.37723],[3.30515,48.37287],[3.30019,48.37837],[3.28963,48.37584],[3.29126,48.38005],[3.28282,48.38157],[3.2824,48.37752],[3.26802,48.37797],[3.25438,48.36502],[3.22372,48.3704],[3.20034,48.36368],[3.17181,48.37768],[3.16677,48.37065],[3.15242,48.37144],[3.14657,48.36565],[3.13987,48.3726],[3.11721,48.36662],[3.10342,48.34951],[3.09888,48.35782],[3.04952,48.36012],[3.03714,48.34257],[3.04358,48.33044],[3.01478,48.30622],[3.02744,48.30286],[3.01874,48.29476],[3.02977,48.28584],[3.02496,48.27601],[3.04547,48.27073],[3.04757,48.2497],[3.03146,48.24888],[3.00462,48.20677],[2.97305,48.20555],[2.97131,48.19477],[2.93695,48.18303],[2.93631,48.16339],[2.86803,48.15643],[2.84988,48.1411],[2.82088,48.12966],[2.80122,48.13145],[2.79791,48.15116],[2.81142,48.16376],[2.79526,48.16908],[2.79207,48.16455],[2.77916,48.1675],[2.77172,48.16169],[2.76724,48.1649],[2.75517,48.16009],[2.73641,48.16631],[2.75358,48.15321],[2.7552,48.14565],[2.72046,48.13691],[2.70532,48.12303],[2.67743,48.12593],[2.66475,48.12054],[2.63967,48.13895],[2.60268,48.13149],[2.57482,48.13127],[2.57056,48.14082],[2.55827,48.14161],[2.53751,48.14034],[2.52187,48.12512],[2.47601,48.12964],[2.45438,48.12237],[2.44276,48.1254],[2.44426,48.13147],[2.47465,48.14883],[2.48324,48.16452],[2.50633,48.15644],[2.51653,48.16624],[2.50728,48.17968],[2.51814,48.18991],[2.51297,48.19298],[2.52313,48.19489],[2.51412,48.21438],[2.51833,48.22759],[2.50689,48.22599],[2.50619,48.23854],[2.48411,48.23905],[2.46909,48.25527],[2.45016,48.25004],[2.4464,48.25518],[2.44014,48.2532],[2.42352,48.26037],[2.4177,48.27885],[2.42332,48.29476],[2.39357,48.32684],[2.39318,48.33627],[2.43383,48.33454],[2.42981,48.34803],[2.44399,48.35732],[2.42983,48.36202],[2.443,48.36947],[2.45064,48.36716],[2.45146,48.37494],[2.48481,48.38345],[2.47383,48.39039],[2.4835,48.39734],[2.50288,48.39292],[2.52161,48.40493],[2.54692,48.40165],[2.51738,48.42746],[2.50503,48.42986],[2.50736,48.43803],[2.5002,48.44053],[2.50732,48.45095],[2.49794,48.45727],[2.50594,48.46116],[2.50189,48.46692],[2.50718,48.46969],[2.50189,48.48477],[2.51013,48.48838],[2.51536,48.50615],[2.50902,48.50814],[2.5087,48.51678],[2.49761,48.51723],[2.49736,48.52542],[2.51082,48.54312],[2.49932,48.54538],[2.51984,48.56252],[2.51918,48.57013],[2.5316,48.57366],[2.52177,48.57322],[2.51821,48.58433],[2.54089,48.5942],[2.54378,48.60385],[2.5407,48.6114],[2.52584,48.61311],[2.52684,48.62141],[2.51573,48.62894],[2.54219,48.63332],[2.54741,48.65165],[2.53362,48.65733],[2.54482,48.67118],[2.54941,48.66913],[2.55732,48.67576],[2.56847,48.66675],[2.57104,48.67489],[2.58578,48.67895],[2.58196,48.68961],[2.57166,48.69201]]]}},{"type":"Feature","properties":{"code":"78","nom":"Yvelines"},"geometry":{"type":"Polygon","coordinates":[[[1.6088,49.07789],[1.61416,49.07145],[1.64292,49.08125],[1.67265,49.0786],[1.69662,49.0665],[1.69464,49.05606],[1.72346,49.04498],[1.73207,49.05042],[1.75118,49.04823],[1.75317,49.05983],[1.7601,49.06342],[1.77386,49.05701],[1.7943,49.05819],[1.79984,49.06456],[1.79655,49.07223],[1.82859,49.07624],[1.8451,49.06197],[1.86547,49.05747],[1.85133,49.03336],[1.859,49.03245],[1.86527,49.02163],[1.86178,49.01425],[1.8819,49.01954],[1.88321,49.03375],[1.90852,49.04802],[1.9378,49.02178],[1.94841,49.02654],[1.95708,49.0218],[1.96423,49.02555],[1.97406,49.01943],[1.99188,49.02101],[2.02361,48.9979],[2.06443,49.00821],[2.07546,49.00226],[2.08491,49.01468],[2.11024,49.00873],[2.12126,49.01833],[2.12712,49.00968],[2.12071,48.9933],[2.16559,48.98201],[2.17925,48.9658],[2.17314,48.9533],[2.20586,48.94974],[2.19893,48.93525],[2.2037,48.91439],[2.20059,48.90868],[2.16838,48.89508],[2.1493,48.87005],[2.15714,48.86963],[2.15032,48.85801],[2.15987,48.84754],[2.15095,48.84799],[2.14587,48.83602],[2.15158,48.81702],[2.16271,48.8124],[2.17482,48.81511],[2.18196,48.8006],[2.18696,48.8007],[2.18294,48.79723],[2.20264,48.7984],[2.21162,48.79126],[2.20895,48.78761],[2.22332,48.78595],[2.22898,48.77035],[2.20529,48.76972],[2.20112,48.77573],[2.19107,48.77512],[2.18598,48.77251],[2.19314,48.76467],[2.18812,48.75393],[2.18065,48.75856],[2.16801,48.75684],[2.16096,48.74994],[2.15122,48.75452],[2.13691,48.74546],[2.13498,48.73714],[2.11949,48.74231],[2.10255,48.73761],[2.09895,48.73387],[2.11247,48.72289],[2.09694,48.70275],[2.09785,48.69403],[2.08875,48.69814],[2.08208,48.68545],[2.06846,48.69022],[2.06496,48.6864],[2.04566,48.68757],[2.04244,48.68001],[2.03388,48.67939],[2.02819,48.65726],[2.01135,48.65991],[2.01628,48.64104],[2.03814,48.64083],[2.03453,48.63183],[2.06086,48.61566],[2.05482,48.60796],[2.03429,48.6053],[2.03574,48.58886],[2.01587,48.56887],[2.01757,48.5576],[1.98464,48.55836],[1.97878,48.55365],[1.96723,48.56027],[1.93789,48.56293],[1.93437,48.54733],[1.96919,48.53222],[1.96728,48.53625],[1.97342,48.53739],[1.97851,48.52582],[1.96306,48.52843],[1.94579,48.51784],[1.93258,48.4803],[1.92514,48.48117],[1.91519,48.47404],[1.91619,48.46317],[1.92273,48.46003],[1.92074,48.44775],[1.90709,48.44536],[1.90426,48.43861],[1.84492,48.4461],[1.83659,48.46709],[1.80145,48.46604],[1.80321,48.47257],[1.79156,48.48124],[1.79634,48.48419],[1.78564,48.49008],[1.78905,48.50016],[1.78303,48.50022],[1.77684,48.50931],[1.77575,48.52771],[1.78725,48.55374],[1.77818,48.55263],[1.76796,48.55896],[1.7574,48.57496],[1.72742,48.5726],[1.70925,48.57802],[1.70199,48.585],[1.71877,48.60574],[1.71466,48.61468],[1.6871,48.61117],[1.68232,48.6156],[1.69063,48.61741],[1.68491,48.61983],[1.66622,48.61371],[1.65517,48.62272],[1.65824,48.62764],[1.64957,48.63227],[1.65042,48.63744],[1.63832,48.6451],[1.6432,48.65129],[1.62122,48.64958],[1.60312,48.66242],[1.61177,48.68947],[1.5912,48.69251],[1.57685,48.70258],[1.59171,48.70772],[1.5876,48.71062],[1.62026,48.73601],[1.62654,48.74805],[1.60834,48.76075],[1.58146,48.76552],[1.58759,48.7736],[1.57663,48.78302],[1.57725,48.8052],[1.5912,48.81487],[1.57898,48.82944],[1.59785,48.83906],[1.57727,48.84436],[1.58404,48.86051],[1.56049,48.86781],[1.55522,48.86507],[1.54623,48.87243],[1.56374,48.89063],[1.53917,48.90489],[1.54525,48.91299],[1.5384,48.92251],[1.51864,48.92535],[1.51419,48.92195],[1.50734,48.9276],[1.51201,48.93447],[1.50152,48.94105],[1.511,48.95357],[1.50107,48.95268],[1.4919,48.96441],[1.51839,48.97835],[1.5079,48.98376],[1.49836,48.97916],[1.47858,48.98055],[1.47089,48.97482],[1.46093,48.98644],[1.47153,48.9897],[1.48003,49.00753],[1.47412,49.0096],[1.47493,49.01775],[1.45776,49.02629],[1.45796,49.03484],[1.44645,49.04635],[1.4528,49.05054],[1.44728,49.05351],[1.46173,49.06414],[1.48029,49.05201],[1.5033,49.0591],[1.51431,49.07937],[1.50792,49.08539],[1.52135,49.06835],[1.5413,49.07371],[1.55814,49.06916],[1.57341,49.07848],[1.60508,49.08517],[1.6088,49.07789]]]}},{"type":"Feature","properties":{"code":"79","nom":"Deux-S\xE8vres"},"geometry":{"type":"Polygon","coordinates":[[[-0.89196,46.97582],[-0.8584,46.96901],[-0.84916,46.97378],[-0.85682,46.97878],[-0.84428,46.98931],[-0.83625,46.98579],[-0.8115,46.99435],[-0.80845,46.98758],[-0.80948,46.99274],[-0.79625,46.99598],[-0.78758,47.00514],[-0.76934,47.00293],[-0.76195,46.99214],[-0.74286,46.9919],[-0.74337,47.0007],[-0.71588,46.98388],[-0.69847,46.99456],[-0.68019,46.98766],[-0.67619,47.00188],[-0.67058,47.0029],[-0.6455,46.99212],[-0.63303,46.99749],[-0.61881,46.99236],[-0.59549,46.99795],[-0.58396,47.01211],[-0.56547,47.01943],[-0.56226,47.03066],[-0.54253,47.03234],[-0.55573,47.04258],[-0.5573,47.06437],[-0.49445,47.08309],[-0.45956,47.08241],[-0.4643,47.07435],[-0.48554,47.06521],[-0.48038,47.05363],[-0.45799,47.06877],[-0.44082,47.06783],[-0.42585,47.07273],[-0.40685,47.06702],[-0.39592,47.09159],[-0.38693,47.09235],[-0.38614,47.08737],[-0.35347,47.09533],[-0.33569,47.08792],[-0.26288,47.10548],[-0.2627,47.09913],[-0.24074,47.1057],[-0.20627,47.09319],[-0.18707,47.10113],[-0.18524,47.10842],[-0.15212,47.10085],[-0.14126,47.10374],[-0.14556,47.09136],[-0.17902,47.07017],[-0.16598,47.0646],[-0.14732,47.06968],[-0.1289,47.05424],[-0.10212,47.0648],[-0.07703,47.00912],[-0.09405,47.01326],[-0.08628,46.9853],[-0.05841,46.99457],[-0.03883,46.99044],[-0.03371,46.98324],[-0.04549,46.95947],[-0.02222,46.93848],[-0.00903,46.90748],[-0.03559,46.87507],[-0.00466,46.87049],[0.01016,46.85823],[0.03376,46.85408],[0.01661,46.83496],[0.00592,46.84443],[-0.01156,46.84798],[-0.03448,46.83207],[-0.04569,46.83211],[-0.04957,46.82064],[-0.03127,46.82025],[-0.02032,46.81265],[-0.00702,46.82213],[0.00799,46.81431],[-0.02628,46.78858],[-0.01741,46.78072],[-0.02314,46.76912],[-0.01266,46.75435],[-0.00132,46.76165],[0.03827,46.73158],[-0.00203,46.71586],[0.00277,46.70026],[-0.02119,46.69329],[-0.00695,46.68291],[-0.04043,46.66372],[-0.03183,46.66142],[-0.03187,46.65175],[-0.05448,46.64264],[-0.06767,46.62953],[-0.06581,46.62282],[-0.04671,46.6238],[-0.0248,46.62912],[-0.01882,46.63879],[-0.00516,46.6447],[0.00079,46.64306],[-0.01314,46.61487],[0.00368,46.61076],[0.02285,46.61453],[0.0229,46.59527],[0.04272,46.59117],[0.02006,46.58513],[-0.00728,46.5685],[-0.01051,46.55277],[0.0079,46.54797],[0.00634,46.54151],[-0.00716,46.52328],[-0.03135,46.52498],[-0.03004,46.50989],[-0.04091,46.49328],[-0.02989,46.48563],[-0.04698,46.48302],[-0.03824,46.48141],[-0.0431,46.48054],[-0.0423,46.47003],[-0.01597,46.47548],[-0.00977,46.46783],[-0.01924,46.45327],[-0.00972,46.45005],[-0.01519,46.43625],[-0.01104,46.4232],[-0.01954,46.41951],[-0.02327,46.4008],[-0.00847,46.40422],[-0.008,46.38905],[0.01543,46.39161],[0.02273,46.37749],[0.03422,46.3735],[0.01385,46.35706],[0.03656,46.34573],[0.02082,46.34158],[0.0151,46.32626],[0.03108,46.3295],[0.07822,46.30493],[0.09755,46.32121],[0.0978,46.3308],[0.12431,46.34842],[0.15436,46.34459],[0.17695,46.33036],[0.16484,46.31815],[0.16916,46.30729],[0.15219,46.30315],[0.17232,46.2786],[0.15956,46.26657],[0.12884,46.26723],[0.14373,46.2294],[0.13717,46.22487],[0.12982,46.22724],[0.11343,46.21221],[0.1077,46.18613],[0.13862,46.18102],[0.15511,46.15717],[0.17188,46.15583],[0.18037,46.14919],[0.18967,46.1495],[0.19468,46.16049],[0.22015,46.15814],[0.21579,46.13893],[0.19728,46.129],[0.20502,46.1245],[0.20289,46.11951],[0.18846,46.11123],[0.19735,46.09555],[0.19246,46.09169],[0.16992,46.08104],[0.13582,46.10405],[0.1157,46.09619],[0.107,46.09687],[0.09732,46.10568],[0.09264,46.10303],[0.09691,46.08889],[0.07858,46.09437],[0.06636,46.0912],[0.0508,46.07941],[0.06258,46.07269],[0.03768,46.07006],[0.01927,46.05285],[0.00515,46.05949],[-0.00088,46.05553],[-0.0395,46.05311],[-0.03767,46.04392],[-0.02145,46.02887],[-0.04536,46.01981],[-0.0479,46.00437],[-0.05735,45.99894],[-0.04087,45.99858],[-0.03815,45.99242],[-0.04406,45.99451],[-0.04324,45.99034],[-0.05837,45.98682],[-0.06201,45.97972],[-0.07527,45.98038],[-0.10618,45.96981],[-0.11607,45.97748],[-0.13686,45.97896],[-0.13238,45.98419],[-0.13914,45.99938],[-0.16464,46.01071],[-0.16252,46.02218],[-0.17165,46.0227],[-0.16027,46.03659],[-0.18913,46.02614],[-0.19097,46.04361],[-0.1965,46.04452],[-0.19256,46.05423],[-0.21296,46.0441],[-0.27303,46.05731],[-0.27984,46.07853],[-0.29177,46.08748],[-0.30365,46.07758],[-0.33105,46.08255],[-0.36273,46.07554],[-0.35856,46.08289],[-0.38622,46.09793],[-0.40145,46.08425],[-0.42251,46.09391],[-0.42246,46.11331],[-0.4402,46.10459],[-0.44044,46.09463],[-0.45195,46.10297],[-0.50608,46.10671],[-0.51639,46.11245],[-0.50956,46.11753],[-0.51878,46.12365],[-0.51155,46.13022],[-0.5174,46.12692],[-0.52856,46.12984],[-0.53315,46.13972],[-0.55292,46.14484],[-0.56573,46.14213],[-0.57933,46.14826],[-0.58302,46.13965],[-0.59974,46.1435],[-0.61896,46.13719],[-0.63244,46.15057],[-0.60685,46.15281],[-0.60506,46.15925],[-0.64489,46.16501],[-0.66969,46.18497],[-0.69113,46.1798],[-0.69597,46.18634],[-0.68771,46.19083],[-0.69784,46.19223],[-0.69401,46.19666],[-0.68022,46.19716],[-0.68818,46.21666],[-0.7531,46.24806],[-0.75478,46.25304],[-0.73506,46.26821],[-0.75535,46.30214],[-0.71968,46.30324],[-0.72015,46.31489],[-0.69674,46.32506],[-0.67227,46.31622],[-0.64841,46.3169],[-0.63638,46.32527],[-0.6366,46.33759],[-0.62244,46.33779],[-0.60495,46.34715],[-0.60325,46.36147],[-0.57731,46.35543],[-0.56181,46.35974],[-0.5378,46.38647],[-0.55052,46.39334],[-0.56606,46.39308],[-0.57238,46.40071],[-0.61018,46.41374],[-0.62088,46.39046],[-0.64064,46.39696],[-0.62911,46.40406],[-0.63943,46.41045],[-0.63684,46.43231],[-0.61878,46.43886],[-0.61921,46.45523],[-0.61386,46.44911],[-0.60766,46.45486],[-0.61909,46.4758],[-0.63116,46.47859],[-0.62503,46.49748],[-0.64632,46.51138],[-0.63749,46.51904],[-0.64223,46.52476],[-0.62211,46.53006],[-0.60904,46.52608],[-0.60213,46.53328],[-0.60659,46.56373],[-0.61516,46.56059],[-0.6245,46.57498],[-0.6119,46.58831],[-0.62091,46.59298],[-0.61399,46.59897],[-0.62569,46.60505],[-0.61405,46.62161],[-0.63419,46.63739],[-0.65888,46.63592],[-0.64913,46.64532],[-0.64857,46.65636],[-0.63699,46.66333],[-0.68073,46.68694],[-0.65619,46.70077],[-0.67812,46.72573],[-0.68549,46.72981],[-0.68802,46.72569],[-0.69208,46.73282],[-0.69634,46.72951],[-0.6961,46.73677],[-0.70261,46.73494],[-0.69404,46.74385],[-0.6983,46.75176],[-0.7156,46.75183],[-0.72705,46.76642],[-0.71784,46.80052],[-0.69875,46.81088],[-0.71004,46.82157],[-0.73286,46.8215],[-0.73787,46.82893],[-0.76673,46.83446],[-0.78336,46.84422],[-0.81633,46.88064],[-0.82944,46.88347],[-0.81704,46.90398],[-0.82054,46.911],[-0.8074,46.91983],[-0.82137,46.91827],[-0.82914,46.93336],[-0.84084,46.92881],[-0.84801,46.94099],[-0.85793,46.93432],[-0.84948,46.94599],[-0.87894,46.94503],[-0.88377,46.95106],[-0.87512,46.9537],[-0.86058,46.9491],[-0.86908,46.95724],[-0.86379,46.96225],[-0.87609,46.95565],[-0.8833,46.95954],[-0.87712,46.96854],[-0.90196,46.96708],[-0.89196,46.97582]]]}},{"type":"Feature","properties":{"code":"80","nom":"Somme"},"geometry":{"type":"Polygon","coordinates":[[[1.38155,50.06577],[1.45252,50.10834],[1.48278,50.17237],[1.50367,50.19527],[1.52713,50.20788],[1.56474,50.21722],[1.55966,50.21079],[1.57424,50.19602],[1.5962,50.1855],[1.6131,50.19136],[1.62741,50.19],[1.64428,50.18521],[1.64622,50.17757],[1.64679,50.18257],[1.67335,50.17468],[1.6838,50.18303],[1.67083,50.1944],[1.66267,50.2136],[1.63807,50.2183],[1.62574,50.2136],[1.61601,50.21986],[1.5936,50.24429],[1.59223,50.25646],[1.5623,50.25576],[1.54931,50.26041],[1.53795,50.28267],[1.55583,50.36132],[1.61297,50.36029],[1.62638,50.36581],[1.62668,50.36002],[1.64623,50.34835],[1.64517,50.33922],[1.66255,50.33798],[1.66538,50.32999],[1.69132,50.33863],[1.68972,50.34365],[1.69484,50.33888],[1.72811,50.34588],[1.74027,50.35121],[1.73526,50.35343],[1.76171,50.36161],[1.77878,50.36187],[1.8051,50.35956],[1.83231,50.34471],[1.8517,50.34291],[1.85843,50.3361],[1.87258,50.33395],[1.87203,50.32546],[1.88138,50.31803],[1.89793,50.31836],[1.89811,50.31392],[1.90795,50.31156],[1.91927,50.31161],[1.93813,50.3301],[1.95443,50.32863],[1.96427,50.32174],[1.96174,50.3123],[1.93145,50.29906],[1.94972,50.28591],[1.96071,50.29026],[1.96877,50.28179],[2.01117,50.26745],[2.02645,50.26955],[2.04756,50.25675],[2.07557,50.25192],[2.06382,50.23445],[2.08451,50.21652],[2.08767,50.20043],[2.09464,50.20831],[2.11456,50.20286],[2.12069,50.21102],[2.12874,50.2099],[2.14603,50.19923],[2.14976,50.19043],[2.17415,50.2089],[2.19193,50.20905],[2.21307,50.21834],[2.2263,50.21408],[2.22178,50.20895],[2.24326,50.21436],[2.24629,50.21096],[2.2698,50.22876],[2.29875,50.21197],[2.32039,50.22021],[2.32755,50.21328],[2.3316,50.22209],[2.31471,50.23476],[2.33267,50.23805],[2.36005,50.21463],[2.35886,50.20613],[2.3709,50.20887],[2.38232,50.22607],[2.39222,50.22455],[2.40343,50.23385],[2.4096,50.23541],[2.41702,50.22813],[2.45073,50.23089],[2.46114,50.21672],[2.47414,50.20844],[2.4852,50.20779],[2.49569,50.19456],[2.45082,50.17852],[2.43717,50.18101],[2.42016,50.17585],[2.41335,50.16236],[2.40327,50.1648],[2.39908,50.15639],[2.38898,50.15469],[2.39346,50.14692],[2.38245,50.13936],[2.38687,50.13469],[2.37546,50.10925],[2.39012,50.10601],[2.39202,50.11176],[2.40333,50.10573],[2.40018,50.10196],[2.41451,50.10064],[2.41862,50.08766],[2.42966,50.08818],[2.4554,50.13109],[2.51495,50.14081],[2.5331,50.11404],[2.54796,50.1235],[2.54557,50.13546],[2.55727,50.14299],[2.56837,50.13596],[2.57817,50.13989],[2.58663,50.13736],[2.56935,50.12063],[2.57567,50.11333],[2.59146,50.11244],[2.5929,50.10655],[2.62814,50.1093],[2.63869,50.09713],[2.64755,50.09441],[2.65492,50.09996],[2.67208,50.09363],[2.68222,50.09517],[2.70463,50.08122],[2.71871,50.08809],[2.69569,50.10224],[2.71391,50.10982],[2.7072,50.12642],[2.71672,50.12779],[2.73829,50.12228],[2.75043,50.11212],[2.76257,50.10956],[2.77694,50.11594],[2.7802,50.11116],[2.78184,50.0911],[2.75888,50.0682],[2.76375,50.0606],[2.74255,50.04823],[2.75294,50.03897],[2.7749,50.04239],[2.78566,50.05116],[2.78896,50.04531],[2.80755,50.06242],[2.81162,50.05812],[2.82235,50.06752],[2.83355,50.06388],[2.83361,50.07152],[2.84809,50.07833],[2.85784,50.07739],[2.85533,50.06244],[2.86395,50.06067],[2.87759,50.04241],[2.86995,50.03494],[2.85838,50.03499],[2.84953,50.02932],[2.8638,50.0201],[2.87756,50.02079],[2.87533,50.02738],[2.89631,50.03702],[2.91624,50.0349],[2.92073,50.04891],[2.93289,50.04336],[2.94544,50.05417],[2.96883,50.04839],[2.97177,50.04156],[3.01444,50.05915],[3.0247,50.05419],[3.03432,50.05809],[3.03295,50.05509],[3.07449,50.0453],[3.09025,50.05374],[3.09044,50.04731],[3.1164,50.03779],[3.11906,50.02617],[3.14994,50.02727],[3.14712,50.01806],[3.17023,50.01799],[3.17296,50.01131],[3.1557,49.99164],[3.16504,49.99066],[3.16787,49.99503],[3.16495,49.98925],[3.17294,49.98991],[3.17366,49.98576],[3.19252,49.98887],[3.20304,49.98394],[3.16265,49.96499],[3.16811,49.96147],[3.15945,49.95219],[3.16465,49.94743],[3.12275,49.92436],[3.12136,49.9089],[3.11573,49.90848],[3.12381,49.90089],[3.11651,49.89642],[3.12005,49.88429],[3.11274,49.87794],[3.08755,49.8661],[3.08276,49.86625],[3.08477,49.87861],[3.07551,49.8785],[3.07022,49.87304],[3.07962,49.86618],[3.08551,49.84382],[3.05542,49.83227],[3.06072,49.8201],[3.07828,49.82242],[3.08495,49.81797],[3.07785,49.8127],[3.08784,49.8031],[3.08597,49.79202],[3.06133,49.78125],[3.07059,49.76689],[3.10044,49.76614],[3.0941,49.74935],[3.1005,49.73261],[3.11359,49.72728],[3.11922,49.71824],[3.1208,49.70572],[3.09646,49.70548],[3.08377,49.69051],[3.07811,49.69319],[3.08346,49.71249],[3.05243,49.71377],[3.05925,49.70181],[3.05532,49.69401],[3.04053,49.69658],[3.02616,49.6803],[3.01631,49.68503],[3.01524,49.69286],[3.00596,49.69318],[3.00513,49.70272],[2.99058,49.70798],[2.99097,49.70417],[2.97743,49.70548],[2.97308,49.69719],[2.94844,49.69399],[2.95495,49.66531],[2.9487,49.67582],[2.9428,49.67469],[2.93962,49.6802],[2.93326,49.67623],[2.93784,49.68133],[2.92524,49.68332],[2.93021,49.68788],[2.91342,49.70951],[2.9054,49.69948],[2.89396,49.6989],[2.8817,49.71366],[2.88507,49.70955],[2.8662,49.70249],[2.88814,49.68719],[2.88879,49.67069],[2.87447,49.68582],[2.86116,49.6852],[2.85676,49.68275],[2.86235,49.67936],[2.84564,49.67071],[2.85019,49.66313],[2.84592,49.65942],[2.79725,49.66074],[2.78937,49.64018],[2.79949,49.62059],[2.78669,49.6121],[2.73914,49.62697],[2.7204,49.62106],[2.70798,49.62591],[2.68756,49.62475],[2.68787,49.61426],[2.66856,49.6],[2.67024,49.58111],[2.64963,49.57176],[2.62867,49.58194],[2.6328,49.59896],[2.62286,49.60569],[2.62595,49.61095],[2.60512,49.608],[2.59703,49.61168],[2.58386,49.60794],[2.58716,49.60379],[2.57785,49.59626],[2.57136,49.59695],[2.55881,49.60705],[2.56647,49.6188],[2.54093,49.61562],[2.54062,49.62461],[2.52113,49.62781],[2.50475,49.63947],[2.47812,49.62079],[2.46359,49.62831],[2.47226,49.63433],[2.46556,49.63799],[2.45365,49.63561],[2.44566,49.65298],[2.43644,49.65626],[2.42136,49.657],[2.41271,49.66284],[2.38867,49.65584],[2.37086,49.65635],[2.36207,49.66674],[2.35134,49.66341],[2.33381,49.67075],[2.33526,49.67942],[2.31676,49.68765],[2.3018,49.68107],[2.24988,49.69715],[2.24717,49.70164],[2.20392,49.69809],[2.19016,49.70387],[2.1508,49.70206],[2.13374,49.68958],[2.08133,49.69348],[2.06531,49.68315],[2.05016,49.68652],[2.06396,49.68774],[2.05939,49.69757],[2.04692,49.6969],[2.04614,49.70257],[2.03433,49.70501],[2.03472,49.71068],[2.00776,49.70826],[2.00148,49.71333],[1.97827,49.70971],[1.97126,49.71993],[1.94909,49.7008],[1.93265,49.71981],[1.89386,49.69899],[1.87473,49.69914],[1.8674,49.70405],[1.84899,49.70164],[1.83746,49.70995],[1.83759,49.71836],[1.82268,49.71766],[1.82056,49.72255],[1.83954,49.73091],[1.83945,49.73928],[1.82046,49.73905],[1.80898,49.75433],[1.79411,49.74986],[1.77332,49.77696],[1.75794,49.7808],[1.74662,49.80323],[1.73385,49.8135],[1.72567,49.84529],[1.71729,49.84884],[1.72055,49.86027],[1.71174,49.87372],[1.71284,49.88586],[1.69196,49.89685],[1.67817,49.91827],[1.60337,49.94308],[1.5776,49.96378],[1.57277,49.97486],[1.52747,49.9951],[1.51635,50.01208],[1.49135,50.01831],[1.47081,50.03511],[1.45479,50.03778],[1.44917,50.04687],[1.45558,50.04434],[1.45915,50.0625],[1.44906,50.06889],[1.4236,50.07085],[1.40926,50.05707],[1.38155,50.06577]]]}},{"type":"Feature","properties":{"code":"81","nom":"Tarn"},"geometry":{"type":"Polygon","coordinates":[[[1.99017,44.14945],[2.0297,44.15704],[2.02983,44.16883],[2.05938,44.17228],[2.05211,44.18873],[2.06887,44.18967],[2.06939,44.18431],[2.08091,44.17997],[2.09427,44.18891],[2.09701,44.1748],[2.10699,44.18116],[2.10613,44.19439],[2.14213,44.2013],[2.1622,44.18724],[2.15533,44.1803],[2.18061,44.17894],[2.18032,44.17126],[2.19178,44.16203],[2.20594,44.1711],[2.22497,44.1682],[2.22992,44.16195],[2.23554,44.16384],[2.23243,44.15461],[2.21362,44.15194],[2.21295,44.14586],[2.19825,44.14346],[2.19306,44.14926],[2.18152,44.13858],[2.2242,44.13889],[2.23759,44.13401],[2.27106,44.14798],[2.28488,44.14533],[2.29782,44.13805],[2.28828,44.1222],[2.30352,44.12198],[2.3084,44.11766],[2.31788,44.12347],[2.33244,44.12302],[2.3405,44.11025],[2.36599,44.09795],[2.38921,44.09457],[2.4121,44.06971],[2.41021,44.05585],[2.46006,44.05135],[2.46403,44.03331],[2.49155,44.01882],[2.49645,44.00793],[2.49176,44.00353],[2.50213,43.98551],[2.52113,43.98241],[2.52504,43.97701],[2.51863,43.95843],[2.50265,43.95414],[2.49908,43.9451],[2.508,43.94778],[2.5093,43.94211],[2.53306,43.93658],[2.53776,43.92487],[2.54613,43.92945],[2.54449,43.92459],[2.55382,43.92506],[2.55042,43.89249],[2.58022,43.87884],[2.56381,43.86577],[2.56168,43.84449],[2.57675,43.83577],[2.58826,43.81928],[2.59974,43.81709],[2.61028,43.79857],[2.6649,43.75275],[2.68173,43.74351],[2.71791,43.7411],[2.74284,43.72904],[2.78119,43.73696],[2.78765,43.75205],[2.82225,43.76226],[2.83159,43.75219],[2.86193,43.74827],[2.87004,43.73887],[2.90261,43.74227],[2.92157,43.73544],[2.92497,43.70615],[2.93746,43.69677],[2.91908,43.68755],[2.91971,43.66225],[2.90735,43.65423],[2.8791,43.65727],[2.87373,43.64511],[2.84672,43.64585],[2.82842,43.63743],[2.81383,43.64105],[2.79486,43.62443],[2.78328,43.62637],[2.75452,43.61414],[2.7202,43.64537],[2.71135,43.64409],[2.68469,43.65381],[2.6523,43.64895],[2.64616,43.66031],[2.63502,43.62519],[2.62554,43.6183],[2.62863,43.61013],[2.61464,43.59986],[2.63178,43.58414],[2.6156,43.5665],[2.65464,43.52716],[2.67602,43.51346],[2.65885,43.51692],[2.65532,43.49165],[2.668,43.47005],[2.66554,43.46195],[2.64787,43.46949],[2.63806,43.4668],[2.64618,43.45913],[2.61779,43.43769],[2.60408,43.43998],[2.60608,43.43109],[2.59682,43.43284],[2.58073,43.42315],[2.56078,43.42022],[2.5519,43.42492],[2.51922,43.42357],[2.48963,43.43794],[2.45224,43.43186],[2.42873,43.43567],[2.40327,43.4247],[2.40685,43.41926],[2.39684,43.41664],[2.31137,43.44155],[2.30552,43.44771],[2.28201,43.44123],[2.2583,43.4601],[2.2564,43.45255],[2.22347,43.43194],[2.22985,43.40554],[2.21398,43.38315],[2.18586,43.39534],[2.17013,43.41676],[2.15741,43.41642],[2.14078,43.40425],[2.10928,43.39455],[2.09193,43.39389],[2.08667,43.39878],[2.07459,43.3947],[2.05307,43.4303],[2.02913,43.4369],[2.01355,43.45041],[2.02202,43.47451],[2.03888,43.47671],[2.04829,43.48573],[2.04264,43.49193],[2.04809,43.49829],[2.04359,43.51124],[2.03795,43.49935],[2.01554,43.50948],[2.01614,43.48763],[2.0087,43.48],[1.99545,43.4828],[1.99,43.47747],[1.96834,43.49064],[1.95608,43.49406],[1.95251,43.49045],[1.92057,43.50513],[1.9172,43.50152],[1.88307,43.51827],[1.87963,43.53032],[1.87138,43.53429],[1.88041,43.54032],[1.85071,43.54928],[1.84945,43.56754],[1.84009,43.57768],[1.81292,43.58256],[1.80956,43.57799],[1.79817,43.58446],[1.79057,43.58325],[1.77902,43.58693],[1.76654,43.60275],[1.74528,43.60268],[1.72087,43.61778],[1.70774,43.62275],[1.70445,43.61804],[1.69106,43.62457],[1.69215,43.64184],[1.69985,43.64939],[1.73057,43.65749],[1.72885,43.66854],[1.72028,43.67453],[1.7207,43.68835],[1.66357,43.69406],[1.66103,43.70565],[1.68184,43.7008],[1.68463,43.70768],[1.69347,43.71241],[1.70167,43.70924],[1.70645,43.71622],[1.69889,43.72644],[1.66067,43.74184],[1.64992,43.75187],[1.65584,43.76827],[1.65166,43.77554],[1.64075,43.77894],[1.65013,43.79453],[1.64479,43.80026],[1.63031,43.7994],[1.59023,43.81453],[1.59301,43.82639],[1.58708,43.83287],[1.59256,43.84264],[1.57258,43.8488],[1.55509,43.86849],[1.56401,43.87188],[1.55605,43.87515],[1.56217,43.87911],[1.55008,43.89014],[1.54654,43.90349],[1.55562,43.91832],[1.57416,43.91876],[1.57148,43.92931],[1.57752,43.93881],[1.56611,43.94423],[1.54057,43.94531],[1.53545,43.95967],[1.54959,43.95518],[1.54955,43.96247],[1.56678,43.96532],[1.61919,43.9591],[1.61954,43.97711],[1.63053,43.99042],[1.6581,43.99561],[1.64961,44.01186],[1.67139,44.01064],[1.67006,44.01788],[1.69152,44.02237],[1.70421,44.04435],[1.69196,44.06292],[1.67538,44.06683],[1.67302,44.0593],[1.6637,44.06729],[1.67027,44.08809],[1.65312,44.09645],[1.65872,44.11663],[1.68725,44.11145],[1.70643,44.11736],[1.72295,44.11475],[1.72228,44.11836],[1.73271,44.11261],[1.74648,44.11673],[1.75055,44.10901],[1.76374,44.10794],[1.77003,44.09798],[1.77796,44.09677],[1.7935,44.1003],[1.78702,44.10924],[1.80077,44.11627],[1.80674,44.12642],[1.82552,44.10797],[1.83697,44.10541],[1.84052,44.11415],[1.82868,44.13328],[1.83677,44.14389],[1.84797,44.13498],[1.86139,44.14368],[1.8852,44.13725],[1.89253,44.14308],[1.8991,44.13222],[1.9073,44.13041],[1.91929,44.14139],[1.89436,44.15556],[1.90887,44.16348],[1.91969,44.16294],[1.94363,44.14647],[1.95279,44.15091],[1.97121,44.14273],[1.98268,44.15658],[1.98466,44.14911],[1.99017,44.14945]]]}},{"type":"Feature","properties":{"code":"82","nom":"Tarn-et-Garonne"},"geometry":{"type":"Polygon","coordinates":[[[1.06408,44.37851],[1.08484,44.3817],[1.10351,44.39231],[1.13704,44.39235],[1.13183,44.38869],[1.13301,44.37128],[1.10743,44.37011],[1.10459,44.36446],[1.08858,44.37111],[1.09169,44.36036],[1.08122,44.35438],[1.11549,44.33829],[1.10794,44.3274],[1.12241,44.31568],[1.13599,44.31722],[1.15141,44.30739],[1.16296,44.30993],[1.16784,44.30287],[1.18115,44.30926],[1.17754,44.29186],[1.19713,44.28025],[1.20462,44.28209],[1.21409,44.26819],[1.22056,44.2804],[1.23874,44.27603],[1.24701,44.26607],[1.25469,44.28447],[1.27098,44.28106],[1.28314,44.29067],[1.30314,44.29427],[1.30181,44.28031],[1.29343,44.27268],[1.30402,44.26931],[1.30502,44.26202],[1.28439,44.25252],[1.28236,44.23639],[1.30688,44.22698],[1.31792,44.23296],[1.32593,44.22544],[1.32947,44.23055],[1.33583,44.22859],[1.35758,44.20334],[1.38126,44.22551],[1.42875,44.24228],[1.44075,44.25277],[1.45356,44.25412],[1.45318,44.26736],[1.46453,44.26901],[1.47192,44.28685],[1.48684,44.27774],[1.48454,44.27255],[1.50926,44.27378],[1.52631,44.26024],[1.51824,44.24952],[1.54139,44.2274],[1.55528,44.2338],[1.57473,44.23394],[1.5752,44.2419],[1.58725,44.24901],[1.57708,44.27022],[1.56076,44.27947],[1.57835,44.28392],[1.57073,44.3015],[1.58724,44.29878],[1.59501,44.30342],[1.60069,44.29567],[1.61665,44.29766],[1.6143,44.28049],[1.63399,44.26856],[1.64252,44.27109],[1.6522,44.28509],[1.63199,44.29389],[1.63387,44.29885],[1.65237,44.29622],[1.65949,44.28326],[1.66338,44.29349],[1.66924,44.28996],[1.6706,44.2978],[1.6995,44.31381],[1.71049,44.31153],[1.73656,44.31806],[1.73735,44.32698],[1.75536,44.32582],[1.77449,44.31192],[1.77612,44.31759],[1.78374,44.31552],[1.78887,44.32256],[1.78335,44.32794],[1.79039,44.32577],[1.7944,44.33482],[1.80598,44.33664],[1.81075,44.32851],[1.82647,44.32359],[1.83333,44.33559],[1.84723,44.33781],[1.85272,44.33167],[1.88208,44.34007],[1.88563,44.33527],[1.87759,44.33596],[1.85933,44.32044],[1.88158,44.30428],[1.86878,44.29204],[1.90045,44.27916],[1.94109,44.28241],[1.97044,44.27644],[1.9709,44.27274],[1.96407,44.26593],[1.96202,44.24234],[1.93346,44.2458],[1.91824,44.21969],[1.90435,44.20952],[1.89067,44.21346],[1.89035,44.20757],[1.90716,44.20075],[1.90285,44.19277],[1.91232,44.1901],[1.9111,44.18546],[1.92535,44.19121],[1.9334,44.18811],[1.93079,44.17811],[1.94071,44.16976],[1.94476,44.18256],[1.96219,44.18438],[1.98007,44.17643],[1.97309,44.17163],[1.97666,44.16197],[2.00062,44.15907],[1.98818,44.14904],[1.98268,44.15658],[1.97932,44.14689],[1.96984,44.14255],[1.95279,44.15091],[1.93962,44.14767],[1.91969,44.16294],[1.90887,44.16348],[1.89436,44.15556],[1.91929,44.14139],[1.90505,44.12976],[1.89253,44.14308],[1.8852,44.13725],[1.86139,44.14368],[1.84797,44.13498],[1.83677,44.14389],[1.82868,44.13328],[1.84052,44.11415],[1.83697,44.10541],[1.82552,44.10797],[1.80674,44.12642],[1.80077,44.11627],[1.78702,44.10924],[1.7935,44.1003],[1.77796,44.09677],[1.77003,44.09798],[1.76374,44.10794],[1.75055,44.10901],[1.74648,44.11673],[1.73271,44.11261],[1.72228,44.11836],[1.72295,44.11475],[1.70643,44.11736],[1.68725,44.11145],[1.65872,44.11663],[1.65312,44.09645],[1.67027,44.08809],[1.6637,44.06729],[1.67302,44.0593],[1.67538,44.06683],[1.69196,44.06292],[1.70421,44.04435],[1.69152,44.02237],[1.67006,44.01788],[1.67139,44.01064],[1.64961,44.01186],[1.6581,43.99561],[1.63053,43.99042],[1.61857,43.974],[1.62272,43.96071],[1.59058,43.96018],[1.56678,43.96532],[1.54955,43.96247],[1.54959,43.95518],[1.53545,43.95967],[1.54057,43.94531],[1.56611,43.94423],[1.57752,43.93881],[1.57148,43.92931],[1.57416,43.91876],[1.54841,43.91705],[1.53279,43.92135],[1.52332,43.9036],[1.5152,43.90597],[1.51657,43.90084],[1.49224,43.88735],[1.48786,43.90199],[1.47564,43.90738],[1.44892,43.87032],[1.44719,43.87413],[1.43152,43.86884],[1.41811,43.87138],[1.4019,43.88555],[1.39322,43.88053],[1.36518,43.88957],[1.3481,43.86917],[1.36463,43.85554],[1.35953,43.85117],[1.3303,43.85111],[1.31941,43.85807],[1.29382,43.8456],[1.30984,43.83989],[1.31383,43.83214],[1.32803,43.83816],[1.35436,43.83647],[1.36003,43.8172],[1.31145,43.8007],[1.28264,43.79616],[1.27815,43.803],[1.26711,43.79863],[1.26942,43.79198],[1.28057,43.79011],[1.27264,43.78473],[1.21277,43.76768],[1.20542,43.77467],[1.21827,43.78209],[1.21672,43.79193],[1.18143,43.79482],[1.17534,43.80439],[1.16085,43.8082],[1.15647,43.81958],[1.1446,43.8223],[1.14188,43.8152],[1.12724,43.8106],[1.11026,43.79632],[1.10506,43.8014],[1.1105,43.80565],[1.09685,43.8073],[1.08331,43.81632],[1.05734,43.79794],[1.0362,43.80423],[1.02584,43.79785],[1.01735,43.80194],[0.99153,43.79732],[0.9793,43.78637],[0.96188,43.79039],[0.95398,43.78737],[0.94213,43.79254],[0.93053,43.78848],[0.92434,43.79295],[0.91677,43.7847],[0.90913,43.78754],[0.90432,43.78312],[0.89611,43.79129],[0.90311,43.79754],[0.90104,43.80379],[0.92533,43.82987],[0.89524,43.8399],[0.89474,43.85029],[0.91243,43.8497],[0.88349,43.87526],[0.88399,43.89084],[0.90371,43.89923],[0.89111,43.90264],[0.8882,43.90962],[0.87397,43.9134],[0.86357,43.92356],[0.85214,43.9227],[0.84262,43.91452],[0.8093,43.9323],[0.76936,43.92299],[0.75949,43.94302],[0.77248,43.95342],[0.78367,43.95451],[0.79633,43.97571],[0.81613,43.9838],[0.81657,43.99088],[0.82765,43.99661],[0.8189,44.00968],[0.82487,44.01502],[0.8126,44.02435],[0.82531,44.02988],[0.83956,44.02399],[0.85147,44.0364],[0.86466,44.0387],[0.81977,44.05619],[0.76405,44.02964],[0.75172,44.06638],[0.73971,44.06662],[0.73836,44.07542],[0.75683,44.1074],[0.77569,44.11582],[0.79889,44.11064],[0.79299,44.11871],[0.79757,44.13038],[0.78857,44.14439],[0.8189,44.14385],[0.86697,44.12635],[0.88094,44.12999],[0.88269,44.14207],[0.894,44.13789],[0.88482,44.16082],[0.88918,44.17199],[0.88302,44.17547],[0.87099,44.1679],[0.85363,44.17478],[0.85302,44.18391],[0.86174,44.19339],[0.90597,44.19012],[0.90518,44.19732],[0.92924,44.23025],[0.91909,44.23827],[0.92483,44.24698],[0.93263,44.24834],[0.92778,44.26741],[0.94029,44.26333],[0.95079,44.27506],[0.94249,44.27471],[0.94038,44.28213],[0.92582,44.28647],[0.91643,44.3022],[0.89412,44.29693],[0.88472,44.30756],[0.86917,44.30989],[0.87327,44.32357],[0.88924,44.33223],[0.89611,44.34623],[0.8872,44.36462],[0.89638,44.38184],[0.91985,44.38442],[0.93714,44.36943],[0.94238,44.3446],[0.9418,44.35319],[0.95151,44.36158],[0.97517,44.36152],[0.9773,44.35618],[0.99671,44.36914],[1.0493,44.36236],[1.06065,44.3656],[1.06408,44.37851]]]}},{"type":"Feature","properties":{"code":"83","nom":"Var"},"geometry":{"type":"MultiPolygon","coordinates":[[[[6.4348,43.01554],[6.44065,43.02506],[6.4579,43.02757],[6.47334,43.04693],[6.50839,43.05222],[6.51129,43.04682],[6.50317,43.04196],[6.48754,43.04272],[6.47096,43.01664],[6.45898,43.01378],[6.45038,43.01735],[6.43834,43.0036],[6.4348,43.01554]]],[[[6.14515,43.02003],[6.14479,43.0163],[6.13946,43.01972],[6.14515,43.02003]]],[[[6.3971,42.9928],[6.38793,42.99809],[6.37352,42.99568],[6.37032,43.00084],[6.38285,43.00643],[6.38328,43.0138],[6.39104,43.01149],[6.40893,43.01917],[6.4116,43.00962],[6.42011,43.01179],[6.40661,42.99561],[6.3971,42.9928]]],[[[6.36377,43.00396],[6.35996,43.01505],[6.3684,43.01807],[6.36377,43.00396]]],[[[6.24407,43.02004],[6.25084,42.99967],[6.21672,42.99121],[6.20563,42.98181],[6.19585,42.98337],[6.1922,42.99076],[6.1613,42.99888],[6.17959,43.00863],[6.1977,43.00101],[6.21173,43.00256],[6.21759,43.01353],[6.23057,43.01001],[6.24225,43.02547],[6.24407,43.02004]]],[[[5.78064,43.06977],[5.78105,43.08233],[5.79221,43.07745],[5.78064,43.06977]]],[[[5.75365,43.72462],[5.78134,43.75566],[5.83117,43.74693],[5.84256,43.73685],[5.84904,43.71818],[5.8562,43.72358],[5.88455,43.72391],[5.90498,43.73743],[5.90296,43.75343],[5.92266,43.75754],[5.92747,43.75018],[5.93876,43.74879],[5.94048,43.72733],[5.95723,43.71892],[5.96458,43.7254],[5.97362,43.71475],[5.98544,43.71396],[5.98794,43.69506],[6.00574,43.68763],[6.01161,43.67415],[6.02174,43.66828],[6.03945,43.67865],[6.03513,43.69407],[6.07705,43.7072],[6.10673,43.74446],[6.11474,43.74614],[6.1297,43.73622],[6.15429,43.74364],[6.18289,43.76218],[6.19064,43.78017],[6.21671,43.79951],[6.25422,43.80043],[6.26862,43.77722],[6.31733,43.75791],[6.32628,43.74687],[6.35117,43.73617],[6.37474,43.743],[6.38354,43.73443],[6.41335,43.76023],[6.41443,43.79159],[6.43653,43.79183],[6.43881,43.79775],[6.45683,43.79313],[6.46986,43.79873],[6.4869,43.79171],[6.51728,43.80876],[6.54241,43.79188],[6.54568,43.7753],[6.58691,43.80532],[6.62372,43.80475],[6.62793,43.79157],[6.64522,43.77784],[6.64009,43.76861],[6.6521,43.76545],[6.65742,43.74872],[6.68271,43.75794],[6.7014,43.75407],[6.71391,43.746],[6.71498,43.73866],[6.74625,43.73682],[6.75247,43.74105],[6.77424,43.70364],[6.77435,43.69341],[6.76104,43.68054],[6.7608,43.66649],[6.78324,43.65362],[6.79874,43.62818],[6.81679,43.62976],[6.85172,43.60441],[6.85748,43.6108],[6.86651,43.60304],[6.89427,43.61153],[6.91199,43.59833],[6.89843,43.58156],[6.90824,43.56391],[6.90104,43.56384],[6.8878,43.55274],[6.87876,43.52917],[6.89638,43.52716],[6.88423,43.50254],[6.91266,43.49369],[6.91381,43.48277],[6.93373,43.48007],[6.9246,43.47255],[6.92398,43.4505],[6.90107,43.44307],[6.89167,43.42845],[6.87034,43.42534],[6.86781,43.43275],[6.85974,43.43325],[6.86055,43.41704],[6.85242,43.41073],[6.82908,43.41851],[6.7977,43.4139],[6.78898,43.40807],[6.76627,43.42375],[6.74842,43.41981],[6.73338,43.40534],[6.7284,43.39305],[6.73264,43.39013],[6.71407,43.37179],[6.71655,43.3475],[6.68003,43.3403],[6.66535,43.32523],[6.67131,43.3126],[6.63501,43.3075],[6.62431,43.29601],[6.58521,43.27951],[6.58653,43.26779],[6.58201,43.26746],[6.59347,43.26226],[6.6207,43.2642],[6.64017,43.27436],[6.66521,43.26489],[6.6758,43.27849],[6.69763,43.26647],[6.69106,43.25235],[6.66443,43.24135],[6.66429,43.21183],[6.68109,43.19982],[6.67529,43.19531],[6.65997,43.19622],[6.64305,43.1871],[6.63974,43.1737],[6.64664,43.16771],[6.63411,43.17233],[6.61829,43.15942],[6.60173,43.18209],[6.562,43.18909],[6.53691,43.17881],[6.53408,43.17279],[6.53984,43.16873],[6.5346,43.16334],[6.52072,43.16486],[6.49664,43.15119],[6.46415,43.15753],[6.44921,43.15339],[6.43866,43.14224],[6.43938,43.14731],[6.42907,43.15143],[6.42062,43.14659],[6.40362,43.14915],[6.39792,43.14418],[6.38445,43.14402],[6.37912,43.13791],[6.36872,43.13697],[6.3665,43.12123],[6.35976,43.1199],[6.36403,43.11101],[6.35876,43.10665],[6.36723,43.10274],[6.36395,43.09325],[6.37076,43.09135],[6.36435,43.08631],[6.32152,43.09139],[6.32456,43.09913],[6.31667,43.10617],[6.29944,43.10605],[6.29701,43.11015],[6.28933,43.10672],[6.28816,43.1142],[6.27494,43.12074],[6.23946,43.11325],[6.20103,43.11606],[6.17045,43.09975],[6.15475,43.07984],[6.15204,43.03718],[6.17266,43.03282],[6.14877,43.0259],[6.13466,43.03619],[6.12377,43.03174],[6.11256,43.0351],[6.09702,43.02727],[6.09126,43.03536],[6.09378,43.04036],[6.10482,43.04211],[6.12456,43.04054],[6.13161,43.04801],[6.12545,43.07827],[6.11399,43.08366],[6.07878,43.08771],[6.05126,43.07894],[6.02154,43.07826],[6.01682,43.08364],[6.02347,43.09481],[6.00546,43.10396],[5.97482,43.10767],[5.96812,43.10356],[5.95579,43.10823],[5.92568,43.10231],[5.93433,43.1186],[5.92851,43.12082],[5.92264,43.11521],[5.92708,43.1215],[5.92063,43.12391],[5.9198,43.12002],[5.91271,43.12294],[5.90748,43.11888],[5.91095,43.11508],[5.88581,43.11631],[5.89172,43.10798],[5.88123,43.10944],[5.88668,43.10725],[5.88054,43.105],[5.90999,43.09992],[5.91038,43.0932],[5.90132,43.0916],[5.89679,43.08048],[5.90957,43.0794],[5.91709,43.08583],[5.9274,43.07748],[5.92895,43.08292],[5.9382,43.08456],[5.95096,43.07677],[5.94704,43.06775],[5.93058,43.07188],[5.91246,43.06597],[5.89846,43.07759],[5.8902,43.07804],[5.87229,43.06918],[5.859,43.04802],[5.82881,43.04936],[5.81575,43.06365],[5.79239,43.06869],[5.80371,43.07668],[5.8125,43.09587],[5.80526,43.0997],[5.81394,43.10677],[5.80821,43.11519],[5.76734,43.11554],[5.78096,43.13012],[5.77125,43.13893],[5.75456,43.13526],[5.7523,43.13014],[5.74928,43.13546],[5.72411,43.13618],[5.71604,43.14804],[5.69488,43.14359],[5.69172,43.15211],[5.68219,43.15545],[5.69461,43.17179],[5.68674,43.17968],[5.67188,43.17927],[5.68391,43.23606],[5.7024,43.23917],[5.70249,43.24827],[5.71147,43.25332],[5.76093,43.26734],[5.76279,43.28236],[5.74984,43.28927],[5.7266,43.31736],[5.69104,43.31296],[5.67552,43.31956],[5.68981,43.32746],[5.68645,43.34019],[5.70503,43.35592],[5.69461,43.36395],[5.68279,43.39916],[5.70128,43.40807],[5.72443,43.40887],[5.75529,43.40232],[5.78636,43.41391],[5.78835,43.42026],[5.77594,43.42055],[5.75066,43.43451],[5.72784,43.4669],[5.69864,43.48342],[5.7025,43.49614],[5.71196,43.49707],[5.71583,43.50321],[5.71243,43.51291],[5.72507,43.55126],[5.71498,43.55147],[5.69088,43.56356],[5.66932,43.56464],[5.65603,43.574],[5.65597,43.5774],[5.6916,43.58443],[5.67806,43.61137],[5.68755,43.61487],[5.68407,43.61812],[5.70197,43.63746],[5.69871,43.64246],[5.70966,43.64093],[5.71897,43.64984],[5.7448,43.65678],[5.79873,43.6612],[5.80381,43.68033],[5.81324,43.68896],[5.78764,43.69695],[5.78529,43.71752],[5.75365,43.72462]]]]}},{"type":"Feature","properties":{"code":"84","nom":"Vaucluse"},"geometry":{"type":"MultiPolygon","coordinates":[[[[4.89291,44.36482],[4.90896,44.37734],[4.90968,44.39672],[4.91852,44.40779],[4.96047,44.42005],[4.97044,44.43137],[5.00106,44.4126],[5.00997,44.41083],[5.01876,44.41598],[5.01558,44.39304],[5.0345,44.39084],[5.04757,44.38135],[5.0625,44.3841],[5.07206,44.38041],[5.05504,44.36502],[5.02389,44.36056],[5.02329,44.34595],[5.00901,44.33377],[5.01378,44.32579],[4.99657,44.31974],[4.98702,44.29271],[4.92215,44.30878],[4.89166,44.30425],[4.88163,44.32487],[4.89533,44.33806],[4.86953,44.34508],[4.89291,44.36482]]],[[[4.64922,44.27036],[4.65062,44.32981],[4.67903,44.32049],[4.71302,44.32065],[4.71795,44.32689],[4.76225,44.32538],[4.77182,44.31747],[4.77967,44.31937],[4.7905,44.30753],[4.80456,44.3039],[4.804,44.26921],[4.81267,44.25772],[4.8141,44.23231],[4.82665,44.22833],[4.87905,44.26148],[4.90128,44.26428],[4.89927,44.25685],[4.93291,44.26215],[4.98145,44.28483],[5.00554,44.28675],[5.06056,44.30814],[5.07651,44.28409],[5.10797,44.27725],[5.11915,44.28692],[5.15477,44.30187],[5.15063,44.30962],[5.16775,44.31483],[5.1737,44.30837],[5.16811,44.28992],[5.14973,44.28208],[5.14707,44.27557],[5.14872,44.26942],[5.16073,44.26655],[5.16155,44.24559],[5.14947,44.2353],[5.15813,44.22884],[5.18183,44.21897],[5.23082,44.21193],[5.23815,44.21323],[5.24045,44.23083],[5.2523,44.23121],[5.3033,44.20539],[5.30334,44.2099],[5.31831,44.20987],[5.33683,44.20353],[5.35535,44.21456],[5.38453,44.20118],[5.38324,44.15528],[5.39661,44.15196],[5.41677,44.15511],[5.42391,44.14929],[5.43576,44.15225],[5.43656,44.13998],[5.44757,44.13675],[5.45058,44.12154],[5.49879,44.11572],[5.50264,44.06344],[5.5446,44.06989],[5.54363,44.02596],[5.51765,43.9917],[5.5092,43.95167],[5.51267,43.94539],[5.52688,43.94753],[5.54499,43.93905],[5.56892,43.94225],[5.58159,43.91508],[5.60823,43.91477],[5.57348,43.86338],[5.54862,43.85148],[5.54429,43.81835],[5.56428,43.81973],[5.5746,43.83029],[5.60062,43.82603],[5.6277,43.83093],[5.65445,43.82511],[5.67448,43.80736],[5.68573,43.78721],[5.70496,43.77954],[5.71356,43.78112],[5.71695,43.75553],[5.74916,43.74055],[5.75733,43.72941],[5.75365,43.72462],[5.73695,43.716],[5.71413,43.69133],[5.67359,43.69366],[5.64231,43.67222],[5.60694,43.65869],[5.57479,43.66206],[5.53145,43.65901],[5.43758,43.68171],[5.34102,43.7197],[5.31572,43.73649],[5.22999,43.74767],[5.18797,43.7351],[5.17331,43.73881],[5.04966,43.78873],[5.02953,43.82779],[4.99609,43.84606],[4.96631,43.87165],[4.92586,43.88649],[4.90232,43.88793],[4.88523,43.90015],[4.85309,43.91138],[4.73906,43.92406],[4.75,43.93218],[4.77902,43.93789],[4.79278,43.95378],[4.81156,43.9618],[4.81247,43.98766],[4.84211,43.98647],[4.84334,44.00986],[4.83768,44.01494],[4.82115,44.01647],[4.81617,44.03214],[4.78763,44.05402],[4.78798,44.06505],[4.75956,44.07507],[4.7583,44.08792],[4.73013,44.07903],[4.72063,44.08179],[4.70607,44.10775],[4.7189,44.1445],[4.71638,44.17672],[4.72207,44.18742],[4.70578,44.19279],[4.70655,44.21443],[4.67425,44.21402],[4.67786,44.23412],[4.65407,44.25434],[4.64922,44.27036]]]]}},{"type":"Feature","properties":{"code":"85","nom":"Vend\xE9e"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-2.30479,46.70942],[-2.28351,46.68787],[-2.31153,46.69601],[-2.33089,46.68699],[-2.34254,46.69422],[-2.36387,46.69466],[-2.36902,46.70165],[-2.38314,46.70036],[-2.37924,46.70509],[-2.39295,46.70998],[-2.40048,46.72606],[-2.37425,46.73366],[-2.34453,46.72799],[-2.33777,46.71907],[-2.31835,46.71986],[-2.30479,46.70942]]],[[[-1.14857,47.02955],[-1.07413,47.00828],[-1.06672,47.013],[-1.05472,47.00436],[-1.01492,47.00467],[-1.00226,47.02129],[-0.98192,47.01054],[-0.9816,47.0181],[-0.97633,47.01821],[-0.97513,47.00871],[-0.96858,47.00781],[-0.96087,46.99528],[-0.93201,47.00799],[-0.93256,47.00204],[-0.9159,47.00171],[-0.92053,46.99779],[-0.91512,46.99228],[-0.90409,46.99479],[-0.89366,46.98441],[-0.89196,46.97582],[-0.90196,46.96708],[-0.87712,46.96854],[-0.8833,46.95954],[-0.87609,46.95565],[-0.86379,46.96225],[-0.86908,46.95724],[-0.86058,46.9491],[-0.87512,46.9537],[-0.88377,46.95106],[-0.881,46.94646],[-0.84948,46.94599],[-0.85793,46.93432],[-0.84801,46.94099],[-0.84084,46.92881],[-0.82914,46.93336],[-0.82137,46.91827],[-0.8074,46.91983],[-0.82054,46.911],[-0.81704,46.90398],[-0.82944,46.88347],[-0.81633,46.88064],[-0.78336,46.84422],[-0.76673,46.83446],[-0.73787,46.82893],[-0.73286,46.8215],[-0.71004,46.82157],[-0.69875,46.81088],[-0.71784,46.80052],[-0.72705,46.76642],[-0.7156,46.75183],[-0.6983,46.75176],[-0.69404,46.74385],[-0.70261,46.73494],[-0.6961,46.73677],[-0.69634,46.72951],[-0.69208,46.73282],[-0.68802,46.72569],[-0.68549,46.72981],[-0.67812,46.72573],[-0.65619,46.70077],[-0.68073,46.68694],[-0.63699,46.66333],[-0.64857,46.65636],[-0.64913,46.64532],[-0.65888,46.63592],[-0.63419,46.63739],[-0.61405,46.62161],[-0.62569,46.60505],[-0.61399,46.59897],[-0.62091,46.59298],[-0.6119,46.58831],[-0.6245,46.57498],[-0.61516,46.56059],[-0.60659,46.56373],[-0.60838,46.55095],[-0.60222,46.54804],[-0.60828,46.52637],[-0.6271,46.52953],[-0.64403,46.52184],[-0.63749,46.51904],[-0.6452,46.50857],[-0.62503,46.49748],[-0.63116,46.47859],[-0.61909,46.4758],[-0.60766,46.45486],[-0.61386,46.44911],[-0.61921,46.45523],[-0.61878,46.43886],[-0.63684,46.43231],[-0.63943,46.41045],[-0.62911,46.40406],[-0.64064,46.39696],[-0.62088,46.39046],[-0.61018,46.41374],[-0.57238,46.40071],[-0.56606,46.39308],[-0.55052,46.39334],[-0.5378,46.38647],[-0.56181,46.35974],[-0.57731,46.35543],[-0.60325,46.36147],[-0.60495,46.34715],[-0.62244,46.33779],[-0.6366,46.33759],[-0.63638,46.32527],[-0.64841,46.3169],[-0.67227,46.31622],[-0.69674,46.32506],[-0.72015,46.31489],[-0.71968,46.30324],[-0.7472,46.30282],[-0.77512,46.31835],[-0.80281,46.32529],[-0.80716,46.33313],[-0.79862,46.3417],[-0.82265,46.33576],[-0.83458,46.34191],[-0.84866,46.33251],[-0.84948,46.31777],[-0.86302,46.31914],[-0.86461,46.32747],[-0.87034,46.32217],[-0.88717,46.32665],[-0.89447,46.3169],[-0.91105,46.31278],[-0.92635,46.31554],[-0.93102,46.31004],[-0.9631,46.32262],[-0.94347,46.3366],[-0.92963,46.37152],[-0.95128,46.36038],[-0.96451,46.3654],[-0.9749,46.35105],[-0.99521,46.35032],[-0.99977,46.35468],[-1.01301,46.34903],[-1.01381,46.35562],[-1.05253,46.34254],[-1.05338,46.349],[-1.0813,46.32335],[-1.07547,46.3175],[-1.09097,46.3173],[-1.09573,46.31207],[-1.11614,46.31725],[-1.12057,46.3236],[-1.1294,46.31028],[-1.16467,46.32419],[-1.16718,46.31969],[-1.20306,46.31574],[-1.19551,46.30048],[-1.20678,46.28806],[-1.20739,46.26657],[-1.23079,46.27673],[-1.2959,46.32393],[-1.30598,46.31919],[-1.29592,46.29713],[-1.28741,46.29412],[-1.29262,46.29148],[-1.27228,46.28942],[-1.29681,46.28985],[-1.32098,46.32573],[-1.34313,46.34285],[-1.35815,46.34763],[-1.37466,46.34849],[-1.3746,46.34376],[-1.38384,46.3409],[-1.40098,46.3405],[-1.42402,46.34749],[-1.43789,46.34024],[-1.46594,46.34236],[-1.4878,46.38139],[-1.51507,46.4043],[-1.53401,46.40888],[-1.55051,46.40543],[-1.62352,46.41295],[-1.64789,46.42016],[-1.65396,46.42391],[-1.64882,46.4294],[-1.71103,46.45126],[-1.71428,46.45903],[-1.7251,46.459],[-1.75534,46.47445],[-1.77714,46.49276],[-1.7913,46.4945],[-1.79953,46.48875],[-1.81235,46.49342],[-1.85702,46.60985],[-1.89779,46.64038],[-1.94288,46.6927],[-1.95123,46.69568],[-1.96581,46.69194],[-1.97949,46.70511],[-1.97974,46.71735],[-1.99786,46.73239],[-2.06206,46.7773],[-2.14206,46.81906],[-2.15503,46.88965],[-2.12177,46.89113],[-2.11323,46.89601],[-2.10984,46.89948],[-2.11935,46.90078],[-2.1178,46.90832],[-2.07948,46.93399],[-2.08167,46.93819],[-2.07127,46.9358],[-2.07498,46.9402],[-2.04469,46.96804],[-2.04648,46.97793],[-2.03287,46.99182],[-2.03796,46.99776],[-2.0318,46.9989],[-2.02933,47.00985],[-1.99854,47.01835],[-1.98041,47.02891],[-1.96658,47.02569],[-1.94323,46.99471],[-1.91672,46.99216],[-1.91858,46.98018],[-1.9123,46.97915],[-1.91744,46.97508],[-1.88989,46.95695],[-1.86628,46.95196],[-1.82841,46.95303],[-1.82638,46.93802],[-1.83199,46.93227],[-1.78629,46.92964],[-1.7783,46.92498],[-1.74548,46.92809],[-1.74571,46.91664],[-1.73514,46.90989],[-1.73595,46.89446],[-1.72294,46.88402],[-1.68842,46.89069],[-1.66754,46.87588],[-1.63193,46.87839],[-1.60929,46.87142],[-1.60453,46.87546],[-1.57618,46.86404],[-1.54878,46.86016],[-1.54628,46.87471],[-1.52696,46.87279],[-1.50077,46.88389],[-1.50319,46.89399],[-1.52933,46.90653],[-1.54581,46.92556],[-1.5291,46.9227],[-1.51878,46.93463],[-1.52545,46.94602],[-1.53402,46.94537],[-1.54442,46.95736],[-1.54282,46.96534],[-1.55529,46.97857],[-1.54267,47.00327],[-1.55573,47.01449],[-1.54959,47.01893],[-1.54027,47.01744],[-1.53854,47.02335],[-1.51741,47.02641],[-1.50499,47.03886],[-1.49277,47.04206],[-1.47256,47.03106],[-1.46917,47.00199],[-1.46024,46.99296],[-1.4739,46.98794],[-1.47696,46.98097],[-1.47195,46.96776],[-1.45739,46.95541],[-1.47174,46.93318],[-1.45827,46.92584],[-1.41308,46.94538],[-1.39215,46.94692],[-1.36503,46.95694],[-1.36925,46.96379],[-1.35818,46.97121],[-1.35906,46.98113],[-1.37802,46.99173],[-1.36302,47.00523],[-1.36691,47.01952],[-1.37861,47.03085],[-1.36809,47.03475],[-1.36607,47.0417],[-1.34702,47.03777],[-1.34146,47.04037],[-1.34572,47.04573],[-1.32032,47.03448],[-1.29892,47.03466],[-1.29647,47.04316],[-1.30492,47.0406],[-1.28759,47.05704],[-1.28771,47.0763],[-1.28028,47.07569],[-1.27074,47.08468],[-1.24749,47.06717],[-1.23093,47.06503],[-1.20186,47.04588],[-1.20068,47.04002],[-1.14857,47.02955]]],[[[-2.19807,46.95117],[-2.22316,46.96527],[-2.24245,46.96536],[-2.25279,46.9585],[-2.26438,46.96088],[-2.28129,46.97935],[-2.30241,46.99057],[-2.29209,47.01145],[-2.30759,47.02465],[-2.25391,47.02803],[-2.24455,47.01943],[-2.22562,47.01685],[-2.21833,47.00782],[-2.21881,46.99171],[-2.23861,46.9976],[-2.23156,46.98896],[-2.23648,46.97988],[-2.23074,46.97321],[-2.22626,46.97619],[-2.15718,46.95004],[-2.14744,46.9342],[-2.15328,46.93176],[-2.14698,46.92403],[-2.15325,46.90693],[-2.148,46.89462],[-2.16682,46.90544],[-2.17739,46.93207],[-2.19807,46.95117]]]]}},{"type":"Feature","properties":{"code":"86","nom":"Vienne"},"geometry":{"type":"Polygon","coordinates":[[[-0.10212,47.0648],[-0.10141,47.08551],[-0.0859,47.10101],[-0.06738,47.09941],[-0.06724,47.09343],[-0.04155,47.09365],[-0.03562,47.08626],[-0.0266,47.10588],[-0.03941,47.10787],[-0.03596,47.12509],[-0.01218,47.15595],[0.01901,47.17576],[0.03664,47.16035],[0.05252,47.16683],[0.0656,47.14306],[0.07839,47.14633],[0.08198,47.13646],[0.07637,47.12393],[0.08135,47.11854],[0.10472,47.1208],[0.11118,47.13028],[0.12292,47.12866],[0.12716,47.11997],[0.14039,47.12387],[0.13472,47.10787],[0.16256,47.10071],[0.16598,47.10716],[0.18316,47.11438],[0.18711,47.10126],[0.20095,47.09139],[0.17422,47.07128],[0.17577,47.06064],[0.18932,47.06081],[0.19224,47.0654],[0.208,47.05323],[0.24554,47.07129],[0.26762,47.0675],[0.25999,47.05558],[0.26817,47.04282],[0.29306,47.05293],[0.30538,47.0527],[0.31029,47.02574],[0.29867,47.0196],[0.30703,47.01097],[0.30497,47.00261],[0.31297,46.99803],[0.30405,46.99058],[0.29187,46.98924],[0.29806,46.98359],[0.30553,46.98616],[0.30804,46.97738],[0.29821,46.97126],[0.30787,46.9628],[0.3013,46.95575],[0.31123,46.93784],[0.32383,46.93145],[0.34929,46.93724],[0.36652,46.94956],[0.43871,46.92958],[0.4448,46.94115],[0.50519,46.9599],[0.51343,46.95559],[0.54336,46.96042],[0.56442,46.95553],[0.59835,46.95676],[0.60118,46.97309],[0.57404,46.98285],[0.56774,47.00629],[0.61887,47.00746],[0.62202,46.99555],[0.63341,46.98672],[0.64769,46.98827],[0.66163,46.97809],[0.69372,46.9732],[0.70621,46.93621],[0.70432,46.90329],[0.75405,46.85963],[0.77002,46.86511],[0.76747,46.85145],[0.79384,46.85122],[0.79645,46.84681],[0.7868,46.84046],[0.80932,46.82786],[0.81502,46.78851],[0.82804,46.7868],[0.82798,46.77682],[0.84788,46.7607],[0.85902,46.76039],[0.87865,46.73864],[0.90182,46.73623],[0.91323,46.72571],[0.90805,46.71876],[0.92789,46.69265],[0.90266,46.68001],[0.91071,46.67718],[0.90671,46.66557],[0.91775,46.65059],[0.90643,46.6486],[0.8939,46.62861],[0.90643,46.61914],[0.91055,46.60179],[0.92235,46.59459],[0.93776,46.59442],[0.93529,46.58634],[0.96367,46.57107],[0.97363,46.57461],[0.98201,46.57327],[0.98724,46.56556],[1.01476,46.56776],[1.02494,46.54948],[1.02291,46.53591],[1.06572,46.53986],[1.10829,46.53151],[1.14914,46.5022],[1.13341,46.49763],[1.15747,46.46999],[1.13551,46.47089],[1.15182,46.4487],[1.18602,46.44109],[1.18649,46.42813],[1.20386,46.4346],[1.21269,46.43222],[1.19319,46.4098],[1.19682,46.40129],[1.17728,46.38395],[1.15887,46.39038],[1.14697,46.3759],[1.15125,46.37005],[1.12845,46.36364],[1.12935,46.347],[1.10748,46.3542],[1.1007,46.36411],[1.07833,46.35847],[1.05016,46.36278],[1.04985,46.35688],[1.02581,46.3405],[1.02792,46.32271],[1.02173,46.31017],[1.01199,46.31034],[1.00659,46.30294],[1.01253,46.29923],[1.00186,46.29208],[1.00589,46.28097],[0.95096,46.28512],[0.93648,46.29283],[0.9301,46.28068],[0.89932,46.28939],[0.89065,46.26854],[0.86163,46.26182],[0.85747,46.24849],[0.84754,46.24827],[0.84129,46.23987],[0.85189,46.23595],[0.84801,46.22875],[0.80655,46.22743],[0.7935,46.2121],[0.80051,46.21183],[0.80176,46.20006],[0.81149,46.19943],[0.81999,46.1918],[0.81962,46.18459],[0.82991,46.18474],[0.83648,46.17884],[0.82831,46.17464],[0.83099,46.16653],[0.83986,46.16444],[0.8313,46.16275],[0.83115,46.15357],[0.83338,46.14568],[0.84738,46.13772],[0.83451,46.12787],[0.82343,46.12858],[0.81158,46.13842],[0.80097,46.13111],[0.78855,46.1332],[0.78698,46.12949],[0.78052,46.13353],[0.76135,46.13179],[0.75825,46.13822],[0.74382,46.14005],[0.72825,46.135],[0.71256,46.13959],[0.71054,46.12953],[0.68842,46.123],[0.67544,46.11161],[0.68745,46.09725],[0.61748,46.09256],[0.60519,46.08459],[0.60988,46.07747],[0.59568,46.07266],[0.59373,46.08109],[0.57501,46.0799],[0.56356,46.09034],[0.53997,46.08556],[0.52094,46.11369],[0.49944,46.12184],[0.50869,46.13194],[0.49257,46.13586],[0.48766,46.1275],[0.47065,46.12907],[0.46192,46.11007],[0.44326,46.10157],[0.44952,46.09654],[0.44751,46.08535],[0.46425,46.08928],[0.47844,46.08483],[0.47237,46.07289],[0.48065,46.06543],[0.4693,46.06821],[0.46914,46.06155],[0.45634,46.05436],[0.42481,46.0483],[0.41329,46.04909],[0.40278,46.06313],[0.38936,46.06767],[0.37909,46.06209],[0.3294,46.06661],[0.32624,46.06143],[0.3144,46.06509],[0.29865,46.05905],[0.27752,46.06064],[0.25655,46.0801],[0.23955,46.08137],[0.21972,46.09432],[0.19442,46.097],[0.18846,46.11123],[0.20289,46.11951],[0.20502,46.1245],[0.19728,46.129],[0.21579,46.13893],[0.22015,46.15814],[0.19468,46.16049],[0.18967,46.1495],[0.18037,46.14919],[0.17188,46.15583],[0.15511,46.15717],[0.13862,46.18102],[0.1077,46.18613],[0.11343,46.21221],[0.12982,46.22724],[0.13717,46.22487],[0.14373,46.2294],[0.12884,46.26723],[0.15956,46.26657],[0.17232,46.2786],[0.15219,46.30315],[0.16916,46.30729],[0.16484,46.31815],[0.17695,46.33036],[0.15436,46.34459],[0.12431,46.34842],[0.0978,46.3308],[0.09755,46.32121],[0.07822,46.30493],[0.03108,46.3295],[0.0151,46.32626],[0.02082,46.34158],[0.03656,46.34573],[0.01385,46.35706],[0.03422,46.3735],[0.02273,46.37749],[0.01543,46.39161],[-0.008,46.38905],[-0.00847,46.40422],[-0.02327,46.4008],[-0.01954,46.41951],[-0.01104,46.4232],[-0.01519,46.43625],[-0.00972,46.45005],[-0.01924,46.45327],[-0.00977,46.46783],[-0.01597,46.47548],[-0.0423,46.47003],[-0.0431,46.48054],[-0.03824,46.48141],[-0.04698,46.48302],[-0.02989,46.48563],[-0.04091,46.49328],[-0.03004,46.50989],[-0.03135,46.52498],[-0.00716,46.52328],[0.00634,46.54151],[0.0079,46.54797],[-0.01051,46.55277],[-0.00728,46.5685],[0.02006,46.58513],[0.04272,46.59117],[0.0229,46.59527],[0.02285,46.61453],[0.00368,46.61076],[-0.01314,46.61487],[0.00079,46.64306],[-0.00516,46.6447],[-0.01882,46.63879],[-0.0248,46.62912],[-0.04671,46.6238],[-0.06581,46.62282],[-0.06767,46.62953],[-0.05448,46.64264],[-0.03187,46.65175],[-0.03183,46.66142],[-0.04043,46.66372],[-0.00695,46.68291],[-0.02119,46.69329],[0.00277,46.70026],[-0.00203,46.71586],[0.03827,46.73158],[-0.00132,46.76165],[-0.01266,46.75435],[-0.02314,46.76912],[-0.01741,46.78072],[-0.02628,46.78858],[0.00799,46.81431],[-0.00702,46.82213],[-0.02032,46.81265],[-0.03127,46.82025],[-0.04957,46.82064],[-0.04569,46.83211],[-0.03448,46.83207],[-0.01156,46.84798],[0.00592,46.84443],[0.01661,46.83496],[0.03376,46.85408],[0.01016,46.85823],[-0.00466,46.87049],[-0.03559,46.87507],[-0.00903,46.90748],[-0.02222,46.93848],[-0.04549,46.95947],[-0.03371,46.98324],[-0.03883,46.99044],[-0.05841,46.99457],[-0.08628,46.9853],[-0.09405,47.01326],[-0.07703,47.00912],[-0.10212,47.0648]]]}},{"type":"Feature","properties":{"code":"87","nom":"Haute-Vienne"},"geometry":{"type":"Polygon","coordinates":[[[0.82343,46.12858],[0.83451,46.12787],[0.84738,46.13772],[0.83338,46.14568],[0.83115,46.15357],[0.8313,46.16275],[0.83986,46.16444],[0.83099,46.16653],[0.82831,46.17464],[0.83648,46.17884],[0.82991,46.18474],[0.81962,46.18459],[0.81999,46.1918],[0.81149,46.19943],[0.80176,46.20006],[0.80215,46.20906],[0.7941,46.21404],[0.81039,46.22951],[0.84801,46.22875],[0.85189,46.23595],[0.84129,46.23987],[0.84754,46.24827],[0.85747,46.24849],[0.86163,46.26182],[0.89065,46.26854],[0.89932,46.28939],[0.9301,46.28068],[0.93648,46.29283],[0.95096,46.28512],[1.00589,46.28097],[1.00186,46.29208],[1.01253,46.29923],[1.00659,46.30294],[1.01199,46.31034],[1.02173,46.31017],[1.02792,46.32271],[1.02581,46.3405],[1.04985,46.35688],[1.05016,46.36278],[1.07833,46.35847],[1.1007,46.36411],[1.10748,46.3542],[1.12935,46.347],[1.12845,46.36364],[1.15125,46.37005],[1.14697,46.3759],[1.15887,46.39038],[1.17616,46.38479],[1.18219,46.37608],[1.19154,46.37676],[1.20973,46.38976],[1.21644,46.36743],[1.23816,46.3662],[1.2604,46.37878],[1.28367,46.37234],[1.31225,46.37292],[1.30796,46.37986],[1.32281,46.38548],[1.31391,46.39538],[1.35602,46.40012],[1.38353,46.37476],[1.39657,46.3719],[1.39469,46.36761],[1.40903,46.36134],[1.41519,46.34722],[1.40969,46.34191],[1.44668,46.33203],[1.43679,46.32125],[1.43656,46.31225],[1.44479,46.3053],[1.42657,46.29892],[1.41417,46.28049],[1.4314,46.27807],[1.43494,46.27188],[1.42574,46.26645],[1.41466,46.27136],[1.40365,46.25991],[1.40647,46.25276],[1.41564,46.25486],[1.41411,46.24954],[1.42054,46.24882],[1.41808,46.24111],[1.39663,46.24044],[1.37256,46.21603],[1.38384,46.21177],[1.38458,46.19922],[1.3952,46.19927],[1.39718,46.18551],[1.41377,46.18196],[1.41658,46.17618],[1.43284,46.18027],[1.43715,46.17406],[1.45257,46.18115],[1.46176,46.1778],[1.45646,46.17339],[1.46575,46.16703],[1.46515,46.16032],[1.45136,46.15266],[1.47269,46.14959],[1.48484,46.13483],[1.49746,46.1428],[1.49314,46.13426],[1.50333,46.13146],[1.50716,46.12222],[1.49885,46.11635],[1.49141,46.11963],[1.48428,46.1046],[1.49847,46.10646],[1.5049,46.08815],[1.51373,46.08979],[1.51251,46.09356],[1.52969,46.0906],[1.52657,46.07837],[1.54341,46.07691],[1.53186,46.0574],[1.54847,46.0348],[1.53638,46.02629],[1.53395,46.00345],[1.54373,45.99652],[1.55839,45.99995],[1.56767,45.99709],[1.57647,45.981],[1.56615,45.96325],[1.55497,45.96457],[1.52776,45.95034],[1.52076,45.95245],[1.51536,45.94697],[1.522,45.94283],[1.50895,45.94031],[1.50939,45.93284],[1.53048,45.93178],[1.54727,45.91683],[1.55828,45.92208],[1.5671,45.91382],[1.58083,45.91774],[1.57569,45.9213],[1.57929,45.93135],[1.60713,45.93348],[1.6184,45.92873],[1.62064,45.9341],[1.62756,45.93253],[1.62566,45.92613],[1.63713,45.92597],[1.62464,45.91941],[1.63414,45.90787],[1.62794,45.90333],[1.63889,45.90408],[1.64124,45.89186],[1.63179,45.88936],[1.62567,45.89976],[1.61974,45.89937],[1.61876,45.881],[1.61371,45.88268],[1.61585,45.89214],[1.59777,45.88982],[1.59103,45.88307],[1.60499,45.88037],[1.60832,45.8674],[1.6024,45.85747],[1.63673,45.84558],[1.65476,45.84551],[1.65992,45.8338],[1.66912,45.84029],[1.68004,45.83626],[1.69217,45.84474],[1.73094,45.8419],[1.74075,45.85208],[1.75584,45.85566],[1.75764,45.86773],[1.77078,45.86837],[1.78149,45.85304],[1.773,45.84553],[1.77648,45.83277],[1.78773,45.82798],[1.79747,45.83148],[1.79726,45.82595],[1.82843,45.80981],[1.82961,45.82106],[1.83653,45.82536],[1.84645,45.80994],[1.85408,45.81285],[1.85645,45.80512],[1.86378,45.80637],[1.88693,45.79161],[1.89194,45.76865],[1.90236,45.76739],[1.89599,45.75944],[1.8743,45.75576],[1.88641,45.74519],[1.87334,45.72531],[1.88791,45.72631],[1.89247,45.71827],[1.87968,45.71237],[1.89781,45.70075],[1.9018,45.69181],[1.90918,45.69216],[1.9112,45.68065],[1.90365,45.67778],[1.88183,45.68194],[1.87706,45.67102],[1.88198,45.66753],[1.86924,45.66415],[1.8546,45.67228],[1.84776,45.66176],[1.82618,45.66522],[1.81538,45.6811],[1.79813,45.67319],[1.79651,45.68056],[1.78583,45.68266],[1.7764,45.65846],[1.75404,45.65538],[1.75088,45.6447],[1.74387,45.64668],[1.72742,45.6381],[1.70891,45.64182],[1.6602,45.60797],[1.65788,45.59361],[1.63723,45.58444],[1.63766,45.58035],[1.62853,45.58286],[1.62624,45.57704],[1.61806,45.57663],[1.59998,45.58146],[1.5826,45.55499],[1.55495,45.54948],[1.55101,45.55683],[1.53295,45.55689],[1.53205,45.56196],[1.51856,45.56434],[1.51792,45.55552],[1.4933,45.54967],[1.49223,45.56086],[1.48037,45.56594],[1.47551,45.55331],[1.45194,45.55322],[1.45417,45.53812],[1.43954,45.52041],[1.42568,45.53088],[1.40833,45.52731],[1.39036,45.50562],[1.3896,45.49616],[1.37176,45.49241],[1.35008,45.46689],[1.28532,45.49028],[1.28615,45.48034],[1.27035,45.47759],[1.26266,45.46797],[1.26419,45.45179],[1.25676,45.45231],[1.24328,45.43643],[1.23401,45.43994],[1.23594,45.45503],[1.22878,45.45819],[1.20982,45.46322],[1.18659,45.45529],[1.17761,45.45714],[1.17615,45.47147],[1.16193,45.47865],[1.13495,45.46964],[1.12407,45.47888],[1.12026,45.47484],[1.11844,45.4879],[1.13424,45.50531],[1.16729,45.52482],[1.11956,45.54748],[1.10617,45.54445],[1.10397,45.53683],[1.08668,45.53731],[1.08264,45.53214],[1.06294,45.55391],[1.04543,45.55731],[1.03242,45.57957],[1.04207,45.58598],[1.03379,45.59199],[1.03585,45.60021],[1.02723,45.60155],[1.02047,45.61087],[1.00483,45.61055],[0.99716,45.61527],[0.98155,45.60326],[0.96944,45.61085],[0.96025,45.6076],[0.94989,45.61043],[0.94677,45.61502],[0.94127,45.60928],[0.9337,45.61198],[0.91565,45.6041],[0.90667,45.60894],[0.89793,45.59982],[0.86935,45.62353],[0.84259,45.58227],[0.8115,45.57587],[0.80596,45.59536],[0.778,45.59134],[0.75234,45.61666],[0.76348,45.62853],[0.77644,45.66717],[0.7639,45.66807],[0.74219,45.69058],[0.73368,45.68969],[0.72516,45.69556],[0.71102,45.69395],[0.70313,45.68718],[0.69427,45.69218],[0.6696,45.68583],[0.65539,45.68859],[0.65238,45.69894],[0.64015,45.6979],[0.62974,45.71457],[0.63301,45.72119],[0.64498,45.7162],[0.65252,45.74047],[0.66489,45.73921],[0.67286,45.7523],[0.68322,45.75371],[0.69058,45.76124],[0.71489,45.76312],[0.71521,45.7719],[0.70578,45.77765],[0.7122,45.80416],[0.73523,45.80201],[0.7413,45.8057],[0.74954,45.79615],[0.76273,45.79876],[0.7684,45.78913],[0.78389,45.79168],[0.77688,45.80101],[0.77676,45.8053],[0.78583,45.8075],[0.78223,45.82108],[0.7961,45.8291],[0.8168,45.858],[0.82085,45.86723],[0.8075,45.87002],[0.82737,45.88275],[0.81262,45.89704],[0.81731,45.90191],[0.81584,45.91796],[0.8091,45.92155],[0.81211,45.93127],[0.82221,45.93209],[0.83646,45.92274],[0.85209,45.92442],[0.85955,45.91786],[0.86876,45.92289],[0.87686,45.92129],[0.90228,45.93286],[0.90515,45.93871],[0.92097,45.93791],[0.92079,45.9452],[0.92755,45.94794],[0.92244,45.95386],[0.94259,45.95744],[0.94636,45.97409],[0.93194,45.9781],[0.93734,45.98154],[0.931,45.98433],[0.93375,45.99319],[0.91762,45.99749],[0.92527,46.01126],[0.91751,46.0094],[0.91931,46.01307],[0.89883,46.01974],[0.88554,46.03194],[0.86368,46.016],[0.85247,46.03381],[0.81561,46.04934],[0.81567,46.05856],[0.8272,46.06483],[0.81858,46.07723],[0.83454,46.09625],[0.82437,46.11586],[0.81799,46.11277],[0.81845,46.11718],[0.81455,46.11506],[0.80851,46.12065],[0.82343,46.12858]]]}},{"type":"Feature","properties":{"code":"88","nom":"Vosges"},"geometry":{"type":"Polygon","coordinates":[[[5.47006,48.42093],[5.51196,48.41008],[5.51619,48.43094],[5.56083,48.44147],[5.56815,48.43959],[5.56778,48.4329],[5.57665,48.43196],[5.58026,48.4388],[5.59385,48.44277],[5.61506,48.44051],[5.62213,48.42639],[5.61826,48.4424],[5.65322,48.45882],[5.63774,48.46935],[5.64224,48.47244],[5.65494,48.46849],[5.65566,48.47216],[5.68057,48.47112],[5.69508,48.46345],[5.71921,48.46014],[5.73858,48.46607],[5.75533,48.49174],[5.76515,48.49649],[5.78702,48.48291],[5.81077,48.4983],[5.82302,48.49612],[5.8416,48.50613],[5.86236,48.5066],[5.88815,48.49401],[5.9058,48.49462],[5.89879,48.48544],[5.90357,48.48024],[5.88559,48.46915],[5.89242,48.46435],[5.88693,48.45387],[5.89895,48.44672],[5.85538,48.40938],[5.87361,48.40124],[5.89519,48.40525],[5.90907,48.42921],[5.89804,48.43594],[5.92357,48.43627],[5.93133,48.43395],[5.9249,48.42183],[5.91532,48.4278],[5.90747,48.41922],[5.91192,48.40572],[5.90491,48.40035],[5.91871,48.40522],[5.92769,48.39369],[5.93487,48.39584],[5.93385,48.40336],[5.95066,48.39543],[5.95494,48.38733],[5.94465,48.37582],[5.95382,48.37377],[5.94923,48.36897],[5.95647,48.36729],[5.95349,48.3579],[5.95924,48.35042],[5.97177,48.35276],[5.9804,48.34897],[6.0015,48.36049],[6.00553,48.35824],[6.00358,48.3629],[6.02049,48.3614],[6.02461,48.3569],[6.05102,48.36607],[6.07149,48.35977],[6.07995,48.36718],[6.07756,48.37485],[6.06907,48.37529],[6.08613,48.38283],[6.09887,48.36899],[6.09288,48.36117],[6.10301,48.35471],[6.11705,48.35384],[6.12509,48.36726],[6.13615,48.36513],[6.15235,48.38097],[6.15005,48.4095],[6.17356,48.40555],[6.18203,48.41198],[6.17842,48.3976],[6.19104,48.39541],[6.21747,48.40162],[6.23334,48.39711],[6.2444,48.40529],[6.26044,48.4064],[6.2703,48.4261],[6.28071,48.42344],[6.28279,48.43003],[6.29157,48.42805],[6.29797,48.43454],[6.30773,48.41173],[6.35396,48.40388],[6.38122,48.41498],[6.38339,48.40662],[6.3929,48.40875],[6.38426,48.3947],[6.38876,48.39093],[6.4,48.39617],[6.40407,48.39061],[6.4355,48.41279],[6.45727,48.41755],[6.47099,48.40921],[6.49141,48.41733],[6.50076,48.41423],[6.53371,48.43136],[6.57535,48.41434],[6.58387,48.41723],[6.57387,48.43323],[6.5675,48.43315],[6.56723,48.4409],[6.57419,48.44272],[6.58497,48.46051],[6.6237,48.4731],[6.6354,48.4705],[6.63883,48.46392],[6.63598,48.44886],[6.64829,48.43388],[6.64509,48.42743],[6.66941,48.42606],[6.6995,48.41309],[6.71406,48.42294],[6.72213,48.41618],[6.73627,48.4169],[6.73934,48.41177],[6.76479,48.41191],[6.76097,48.40621],[6.76696,48.39908],[6.78899,48.4025],[6.78241,48.39176],[6.794,48.40337],[6.81035,48.3957],[6.82826,48.41661],[6.84936,48.42397],[6.86459,48.4367],[6.87101,48.42009],[6.89149,48.41782],[6.97975,48.47851],[7.00643,48.48104],[7.02358,48.49093],[7.06518,48.49913],[7.09402,48.51295],[7.12317,48.51359],[7.12773,48.50952],[7.12079,48.50513],[7.1358,48.49756],[7.09062,48.50366],[7.09366,48.48928],[7.11688,48.48489],[7.11874,48.47449],[7.10191,48.45142],[7.10994,48.43968],[7.09569,48.42653],[7.09231,48.41024],[7.09743,48.40564],[7.08498,48.39789],[7.1041,48.38833],[7.10934,48.37874],[7.07596,48.35258],[7.10767,48.34425],[7.12049,48.33335],[7.15347,48.33339],[7.16954,48.3423],[7.18365,48.33935],[7.17721,48.32531],[7.19177,48.32485],[7.18977,48.31877],[7.19828,48.31047],[7.19361,48.30203],[7.17244,48.29748],[7.1767,48.28901],[7.13305,48.24754],[7.13403,48.23768],[7.11772,48.20821],[7.09982,48.18912],[7.08582,48.18405],[7.07902,48.16393],[7.06051,48.14458],[7.05802,48.1377],[7.06985,48.12948],[7.08416,48.12921],[7.07671,48.10849],[7.05165,48.08261],[7.0298,48.0719],[7.00975,48.04289],[7.01563,48.03801],[7.01215,48.03174],[7.0013,48.02179],[6.96085,48.00015],[6.95291,48.00294],[6.94382,47.99952],[6.94374,47.98092],[6.93068,47.97193],[6.91943,47.94434],[6.92574,47.92983],[6.91317,47.91938],[6.92593,47.9173],[6.92877,47.90989],[6.91846,47.8984],[6.8969,47.89083],[6.89782,47.88426],[6.9097,47.88164],[6.90471,47.87963],[6.90653,47.86514],[6.92005,47.85029],[6.90288,47.84298],[6.89609,47.83297],[6.86761,47.82946],[6.85744,47.82322],[6.83932,47.82478],[6.82354,47.81305],[6.79268,47.82946],[6.79223,47.84222],[6.78261,47.85128],[6.73784,47.86167],[6.70284,47.88172],[6.64642,47.90323],[6.63929,47.91029],[6.64191,47.91776],[6.6041,47.94481],[6.56342,47.93139],[6.54401,47.90309],[6.50321,47.89622],[6.47826,47.88544],[6.47798,47.89304],[6.45596,47.90677],[6.46274,47.91733],[6.44916,47.92173],[6.43473,47.94285],[6.40842,47.94319],[6.40536,47.95311],[6.38893,47.96079],[6.36155,47.96134],[6.32327,47.94883],[6.28908,47.95584],[6.24324,47.93964],[6.23799,47.93284],[6.21917,47.93576],[6.21442,47.93038],[6.20522,47.93205],[6.20806,47.94676],[6.18202,47.9563],[6.16798,47.95235],[6.15706,47.96793],[6.14981,47.96592],[6.15094,47.97056],[6.16455,47.97311],[6.15956,47.99229],[6.15265,47.99414],[6.15606,48.00694],[6.1314,48.02408],[6.10923,48.01247],[6.07277,48.0158],[6.04118,48.00442],[6.03251,47.99862],[6.03216,47.99062],[6.019,47.98748],[6.02609,47.98145],[6.01896,47.9697],[6.01214,47.97185],[6.00527,47.95784],[5.97078,47.95721],[5.9689,47.94741],[5.94939,47.93545],[5.92839,47.93781],[5.9379,47.95157],[5.95952,47.96584],[5.9442,47.98004],[5.92254,47.97198],[5.91804,47.94736],[5.90011,47.94475],[5.8929,47.93714],[5.89718,47.93098],[5.88473,47.92605],[5.86864,47.94499],[5.85753,47.94506],[5.84959,47.96059],[5.85356,47.96988],[5.84663,47.96951],[5.84584,47.9757],[5.83158,47.95776],[5.81772,47.95799],[5.80527,47.94697],[5.78728,47.9526],[5.77849,47.97801],[5.79316,47.98707],[5.79467,47.99801],[5.77642,48.02241],[5.77695,48.03351],[5.7645,48.02991],[5.76441,48.03477],[5.74004,48.05011],[5.72054,48.04424],[5.72128,48.05272],[5.70893,48.06536],[5.69875,48.06679],[5.6968,48.07723],[5.68843,48.0754],[5.67507,48.0819],[5.67332,48.07876],[5.65753,48.08621],[5.65281,48.08037],[5.66128,48.07199],[5.65592,48.06913],[5.62901,48.08442],[5.63388,48.09022],[5.63877,48.08878],[5.63744,48.09764],[5.64939,48.10505],[5.67212,48.10944],[5.65737,48.12165],[5.67714,48.1367],[5.67687,48.14512],[5.6851,48.14666],[5.68684,48.16653],[5.67964,48.17929],[5.70182,48.19044],[5.73098,48.1897],[5.73006,48.19832],[5.71824,48.2145],[5.68779,48.23418],[5.67742,48.22898],[5.64153,48.24175],[5.65381,48.26852],[5.64332,48.27504],[5.61165,48.29182],[5.58888,48.27559],[5.53733,48.31833],[5.52461,48.33355],[5.52653,48.34686],[5.48096,48.35641],[5.46909,48.34904],[5.46175,48.35214],[5.44542,48.33755],[5.4268,48.33122],[5.41697,48.3427],[5.42273,48.35158],[5.41855,48.36069],[5.44288,48.37939],[5.40742,48.38273],[5.39391,48.39165],[5.41965,48.395],[5.4466,48.41532],[5.47006,48.42093]]]}},{"type":"Feature","properties":{"code":"89","nom":"Yonne"},"geometry":{"type":"Polygon","coordinates":[[[2.93631,48.16339],[2.93695,48.18303],[2.97131,48.19477],[2.97305,48.20555],[3.00462,48.20677],[3.03146,48.24888],[3.04757,48.2497],[3.04547,48.27073],[3.02496,48.27601],[3.02977,48.28584],[3.01874,48.29476],[3.02744,48.30286],[3.01478,48.30622],[3.04358,48.33044],[3.03714,48.34257],[3.04952,48.36012],[3.09888,48.35782],[3.10342,48.34951],[3.11721,48.36662],[3.13987,48.3726],[3.14657,48.36565],[3.15242,48.37144],[3.16677,48.37065],[3.17181,48.37768],[3.20034,48.36368],[3.22372,48.3704],[3.25438,48.36502],[3.26802,48.37797],[3.2824,48.37752],[3.28282,48.38157],[3.29126,48.38005],[3.28963,48.37584],[3.29811,48.37869],[3.31091,48.37297],[3.31207,48.37723],[3.33547,48.37018],[3.35656,48.37845],[3.35768,48.37102],[3.36516,48.37228],[3.36722,48.39432],[3.38342,48.39939],[3.40204,48.38971],[3.41479,48.39027],[3.41328,48.3763],[3.42739,48.35809],[3.45083,48.37392],[3.46747,48.37568],[3.47488,48.36926],[3.49763,48.36958],[3.54511,48.33454],[3.5439,48.31979],[3.5634,48.32144],[3.56109,48.31194],[3.58797,48.30081],[3.5778,48.28459],[3.6168,48.27134],[3.62433,48.25453],[3.59985,48.23591],[3.60468,48.22989],[3.61477,48.2318],[3.62162,48.22574],[3.59991,48.20233],[3.57519,48.18874],[3.57985,48.18434],[3.59418,48.17888],[3.62166,48.19198],[3.63494,48.18792],[3.66064,48.15885],[3.66787,48.13921],[3.69092,48.14502],[3.69298,48.15462],[3.70502,48.14431],[3.72157,48.15527],[3.71352,48.17394],[3.74747,48.16625],[3.75482,48.15024],[3.74287,48.14288],[3.73972,48.13275],[3.75691,48.12531],[3.76802,48.13376],[3.77988,48.12062],[3.79169,48.11764],[3.80565,48.10051],[3.79808,48.0865],[3.80693,48.08415],[3.82955,48.05772],[3.82406,48.05311],[3.83019,48.04709],[3.82198,48.04392],[3.87061,48.01681],[3.87068,48.00295],[3.86369,48.00705],[3.83981,48.00389],[3.85003,47.98366],[3.86592,47.9844],[3.8618,47.97644],[3.87997,47.97917],[3.8833,47.9852],[3.87766,47.98703],[3.88536,47.99147],[3.88166,48.00029],[3.89343,48.0017],[3.91092,47.98182],[3.91331,47.96938],[3.89536,47.9286],[3.90535,47.92505],[3.92645,47.93457],[3.94539,47.93467],[3.94809,47.9309],[3.96257,47.93596],[3.98563,47.93051],[4.00386,47.94203],[4.01814,47.92847],[4.03128,47.93318],[4.04481,47.92512],[4.05888,47.93171],[4.06094,47.9457],[4.0897,47.94501],[4.09209,47.9282],[4.10706,47.92981],[4.10961,47.92604],[4.13038,47.93679],[4.14184,47.93711],[4.14017,47.94275],[4.16633,47.9598],[4.18425,47.95542],[4.18539,47.94025],[4.20188,47.94116],[4.20783,47.9466],[4.20312,47.95917],[4.21307,47.9619],[4.20268,47.95981],[4.19281,47.9646],[4.20242,47.973],[4.22596,47.97194],[4.22215,47.9497],[4.24546,47.92975],[4.26973,47.92368],[4.28851,47.92693],[4.30477,47.92135],[4.31115,47.90392],[4.27849,47.89993],[4.24638,47.87387],[4.26456,47.8737],[4.261,47.84385],[4.2713,47.83878],[4.30081,47.84877],[4.32977,47.84621],[4.33032,47.83766],[4.31929,47.83744],[4.32541,47.82087],[4.31998,47.81143],[4.3403,47.79957],[4.32723,47.78566],[4.33495,47.77802],[4.32904,47.77003],[4.33247,47.75651],[4.3143,47.74895],[4.3092,47.75128],[4.29304,47.73285],[4.2605,47.7422],[4.25798,47.72583],[4.23946,47.72443],[4.24118,47.71666],[4.25283,47.71602],[4.25669,47.70673],[4.2675,47.70547],[4.26183,47.69423],[4.26641,47.68993],[4.28406,47.68266],[4.25181,47.68391],[4.25041,47.6767],[4.22661,47.67821],[4.22564,47.67116],[4.2493,47.66066],[4.22837,47.64323],[4.22255,47.63109],[4.21212,47.62815],[4.21424,47.60153],[4.19686,47.6046],[4.19887,47.59571],[4.17442,47.5521],[4.15653,47.55162],[4.14592,47.54045],[4.15071,47.5325],[4.13875,47.51919],[4.11463,47.51475],[4.11761,47.50638],[4.1124,47.5035],[4.12339,47.49059],[4.11538,47.4814],[4.12976,47.47484],[4.12981,47.4626],[4.11943,47.44355],[4.10113,47.44388],[4.10834,47.43743],[4.09863,47.43046],[4.08014,47.44083],[4.08453,47.42065],[4.0736,47.4151],[4.07163,47.40743],[4.0652,47.40726],[4.06677,47.39851],[4.09003,47.39461],[4.07724,47.38427],[4.0789,47.37694],[4.08791,47.37232],[4.09343,47.3775],[4.09919,47.37121],[4.10678,47.37627],[4.106,47.36269],[4.09788,47.36161],[4.09794,47.35535],[4.10664,47.35198],[4.10845,47.34075],[4.09462,47.33687],[4.08181,47.34174],[4.0693,47.33748],[4.04409,47.33989],[4.0423,47.32951],[4.02833,47.32485],[4.02799,47.3142],[4.02141,47.31119],[4.0081,47.31489],[4.00208,47.31062],[3.97329,47.33145],[3.9677,47.36302],[3.96171,47.36652],[3.97271,47.37577],[3.94944,47.39432],[3.94424,47.38022],[3.90879,47.38206],[3.88677,47.36458],[3.8721,47.36576],[3.85943,47.3927],[3.86634,47.39805],[3.87678,47.39728],[3.89398,47.41433],[3.87991,47.42981],[3.86705,47.43462],[3.85242,47.43526],[3.84786,47.41238],[3.83746,47.40306],[3.83052,47.40824],[3.81995,47.40222],[3.8314,47.39266],[3.82834,47.38231],[3.81658,47.37863],[3.80218,47.38944],[3.78563,47.39032],[3.78418,47.40527],[3.74055,47.3965],[3.7263,47.39825],[3.71668,47.40321],[3.70225,47.42669],[3.67398,47.43349],[3.67936,47.44724],[3.67399,47.45023],[3.667,47.4459],[3.63416,47.45608],[3.62134,47.45563],[3.61568,47.4575],[3.61558,47.46672],[3.60028,47.46536],[3.59532,47.457],[3.58727,47.45619],[3.57517,47.48632],[3.58062,47.49786],[3.55245,47.50244],[3.54,47.51566],[3.5135,47.52767],[3.51103,47.55068],[3.49902,47.56083],[3.49013,47.5553],[3.49504,47.52097],[3.48828,47.49383],[3.45561,47.50256],[3.4501,47.5],[3.44618,47.51173],[3.42755,47.50637],[3.39042,47.50915],[3.39079,47.49746],[3.38015,47.48653],[3.37024,47.48841],[3.35538,47.4787],[3.34531,47.47856],[3.34646,47.46969],[3.33771,47.47044],[3.3403,47.48112],[3.30705,47.49472],[3.29652,47.4917],[3.28525,47.50394],[3.27546,47.4908],[3.23627,47.48823],[3.20347,47.52347],[3.19119,47.52041],[3.18556,47.5254],[3.18187,47.51832],[3.16519,47.5175],[3.13469,47.54263],[3.12303,47.53943],[3.11622,47.56925],[3.12403,47.57616],[3.10161,47.5881],[3.08056,47.58549],[3.06066,47.56951],[3.03462,47.56396],[3.02195,47.55626],[2.96548,47.57358],[2.96231,47.58592],[2.93627,47.59932],[2.94522,47.60845],[2.93232,47.62705],[2.93629,47.63665],[2.95423,47.64569],[2.94158,47.65754],[2.92662,47.659],[2.91815,47.66979],[2.92675,47.68176],[2.90366,47.69689],[2.87915,47.7038],[2.88465,47.71389],[2.87886,47.72035],[2.86063,47.70992],[2.84897,47.71684],[2.85901,47.74954],[2.85199,47.75786],[2.87018,47.76487],[2.89904,47.76379],[2.90938,47.76931],[2.93077,47.76228],[2.9497,47.76587],[2.95474,47.77556],[2.98822,47.78603],[3.02528,47.78767],[3.02813,47.802],[3.02434,47.81308],[3.01547,47.81354],[3.02206,47.81777],[3.01391,47.82245],[3.01254,47.83437],[3.0297,47.83508],[3.03178,47.85036],[3.0233,47.86102],[2.99831,47.86728],[3.01244,47.87413],[3.00723,47.89529],[3.01697,47.89892],[3.00956,47.90539],[3.05049,47.91064],[3.05081,47.92417],[3.07847,47.93142],[3.08386,47.94263],[3.0984,47.94878],[3.10527,47.94694],[3.10931,47.96207],[3.12674,47.96829],[3.12857,47.98337],[3.12172,47.9868],[3.12668,47.99127],[3.12112,47.99594],[3.12421,48.0069],[3.10409,48.01355],[3.09946,48.02075],[3.12426,48.03113],[3.09463,48.04041],[3.08965,48.04907],[3.09536,48.05398],[3.06089,48.06422],[3.05047,48.07233],[3.0504,48.09136],[3.03835,48.09885],[3.03529,48.11599],[3.01588,48.11571],[3.0294,48.1333],[3.00961,48.14577],[2.99839,48.13977],[2.99088,48.15249],[2.96361,48.15296],[2.95327,48.16501],[2.93631,48.16339]]]}},{"type":"Feature","properties":{"code":"90","nom":"Territoire de Belfort"},"geometry":{"type":"Polygon","coordinates":[[[6.82354,47.81305],[6.84308,47.82505],[6.84845,47.80187],[6.86699,47.78331],[6.91398,47.77719],[6.92678,47.7695],[6.94043,47.77157],[6.97227,47.75147],[7.01596,47.74323],[7.03742,47.72164],[7.02649,47.701],[7.03367,47.69963],[7.04011,47.68572],[7.04803,47.6841],[7.03791,47.6745],[7.04506,47.66935],[7.03418,47.66109],[7.03919,47.65057],[7.0176,47.64986],[7.01917,47.64125],[7.01207,47.63932],[7.01693,47.62719],[7.00593,47.62892],[7.0105,47.60502],[7.00594,47.60236],[7.01932,47.5961],[7.01956,47.58854],[7.03978,47.60115],[7.06587,47.60128],[7.07016,47.59633],[7.08107,47.59612],[7.09417,47.57364],[7.10553,47.56889],[7.10687,47.55054],[7.13363,47.53896],[7.14346,47.52461],[7.13432,47.50503],[7.11106,47.4949],[7.09409,47.49542],[7.07589,47.48819],[7.02102,47.50439],[6.98336,47.4942],[6.98642,47.47681],[6.99176,47.46642],[7.00047,47.46715],[7.0019,47.45394],[6.98906,47.44765],[6.97,47.44688],[6.95736,47.4336],[6.93905,47.43379],[6.93101,47.45754],[6.90847,47.47281],[6.91606,47.47754],[6.9086,47.49523],[6.93018,47.50041],[6.93523,47.48562],[6.94267,47.48492],[6.94965,47.50869],[6.93649,47.51792],[6.90758,47.52586],[6.91627,47.53114],[6.90569,47.54797],[6.8852,47.5549],[6.86081,47.54751],[6.81666,47.54792],[6.80701,47.5628],[6.82172,47.57331],[6.80198,47.58385],[6.80227,47.5905],[6.7776,47.61564],[6.7804,47.62526],[6.78944,47.62563],[6.80103,47.63604],[6.79732,47.64488],[6.77979,47.65681],[6.77613,47.66808],[6.78191,47.68768],[6.77053,47.70163],[6.77257,47.71163],[6.75663,47.72445],[6.75764,47.74788],[6.7847,47.78144],[6.81132,47.79429],[6.82354,47.81305]]]}},{"type":"Feature","properties":{"code":"91","nom":"Essonne"},"geometry":{"type":"Polygon","coordinates":[[[2.22656,48.7761],[2.23298,48.7662],[2.24702,48.76083],[2.269,48.76202],[2.27615,48.75665],[2.2854,48.74751],[2.27535,48.73974],[2.27986,48.73271],[2.30245,48.7408],[2.30384,48.72949],[2.31444,48.73043],[2.31434,48.7433],[2.32688,48.75116],[2.33715,48.74226],[2.35644,48.73816],[2.36935,48.74606],[2.37071,48.72018],[2.39747,48.7212],[2.40224,48.72655],[2.41013,48.72574],[2.41426,48.71782],[2.44013,48.72543],[2.4488,48.71483],[2.44843,48.7218],[2.45416,48.72045],[2.46597,48.72951],[2.47877,48.72764],[2.5062,48.73571],[2.51575,48.72894],[2.51731,48.71591],[2.52947,48.70792],[2.53108,48.69979],[2.5416,48.70012],[2.55036,48.68854],[2.58196,48.68961],[2.58578,48.67895],[2.57104,48.67489],[2.56847,48.66675],[2.55534,48.67595],[2.53485,48.66205],[2.53362,48.65733],[2.54797,48.64966],[2.54194,48.64623],[2.54141,48.63236],[2.51573,48.62894],[2.52684,48.62141],[2.52584,48.61311],[2.5407,48.6114],[2.54378,48.60385],[2.54089,48.5942],[2.51821,48.58433],[2.52177,48.57322],[2.53063,48.57092],[2.51918,48.57013],[2.51984,48.56252],[2.49932,48.54538],[2.51082,48.54312],[2.49824,48.52757],[2.49761,48.51723],[2.5087,48.51678],[2.50902,48.50814],[2.51536,48.50615],[2.51013,48.48838],[2.50189,48.48477],[2.50718,48.46969],[2.50189,48.46692],[2.50594,48.46116],[2.49794,48.45727],[2.50732,48.45095],[2.5002,48.44053],[2.50736,48.43803],[2.50503,48.42986],[2.51738,48.42746],[2.54692,48.40165],[2.52161,48.40493],[2.50288,48.39292],[2.4835,48.39734],[2.47383,48.39039],[2.48481,48.38345],[2.45146,48.37494],[2.45064,48.36716],[2.443,48.36947],[2.42983,48.36202],[2.44399,48.35732],[2.42981,48.34803],[2.43383,48.33454],[2.39318,48.33627],[2.39357,48.32684],[2.40266,48.32072],[2.38634,48.31177],[2.35823,48.30849],[2.34198,48.31683],[2.33478,48.32739],[2.32816,48.3264],[2.32755,48.33297],[2.32645,48.32965],[2.31259,48.3308],[2.29569,48.30808],[2.2669,48.31468],[2.25357,48.30024],[2.24516,48.2984],[2.2493,48.31629],[2.23805,48.31637],[2.24617,48.33126],[2.22757,48.32963],[2.20709,48.34494],[2.1879,48.33237],[2.18069,48.31168],[2.1523,48.31591],[2.16375,48.29843],[2.1106,48.29695],[2.11372,48.30725],[2.10617,48.30763],[2.08534,48.29401],[2.05271,48.29547],[2.04126,48.28438],[2.02499,48.28923],[2.01155,48.28483],[1.97529,48.2872],[1.97451,48.29291],[1.98237,48.29545],[1.9652,48.29516],[1.9588,48.30664],[1.97346,48.31591],[1.97909,48.31266],[1.98065,48.31877],[1.9745,48.32317],[1.98234,48.32832],[1.9687,48.34131],[1.97536,48.34479],[1.97331,48.35581],[1.98903,48.36358],[1.97801,48.36886],[1.98031,48.37826],[1.96672,48.38042],[1.97824,48.402],[1.92837,48.40605],[1.93273,48.41069],[1.92762,48.41634],[1.93961,48.41958],[1.93633,48.43481],[1.94289,48.44109],[1.93296,48.44204],[1.92945,48.45696],[1.91807,48.46073],[1.91455,48.46944],[1.92514,48.48117],[1.93258,48.4803],[1.94579,48.51784],[1.96306,48.52843],[1.97851,48.52582],[1.97779,48.53297],[1.9712,48.53796],[1.96919,48.53222],[1.93437,48.54733],[1.93626,48.5608],[1.96723,48.56027],[1.97878,48.55365],[1.98464,48.55836],[2.01757,48.5576],[2.01587,48.56887],[2.03574,48.58886],[2.03429,48.6053],[2.05482,48.60796],[2.06086,48.61566],[2.03453,48.63183],[2.03814,48.64083],[2.01628,48.64104],[2.01135,48.65991],[2.02819,48.65726],[2.03388,48.67939],[2.04244,48.68001],[2.04566,48.68757],[2.06496,48.6864],[2.06846,48.69022],[2.08208,48.68545],[2.08875,48.69814],[2.09785,48.69403],[2.09694,48.70275],[2.11247,48.72289],[2.09895,48.73387],[2.10255,48.73761],[2.11949,48.74231],[2.13498,48.73714],[2.13691,48.74546],[2.15122,48.75452],[2.16096,48.74994],[2.17345,48.75787],[2.1906,48.75511],[2.19314,48.76467],[2.18598,48.77251],[2.19107,48.77512],[2.20112,48.77573],[2.20993,48.76919],[2.22898,48.77035],[2.22656,48.7761]]]}},{"type":"Feature","properties":{"code":"92","nom":"Hauts-de-Seine"},"geometry":{"type":"Polygon","coordinates":[[[2.29097,48.95097],[2.33556,48.94068],[2.33243,48.92634],[2.31376,48.91401],[2.31988,48.90046],[2.28567,48.88657],[2.27995,48.87857],[2.25847,48.88039],[2.25541,48.87426],[2.24569,48.87643],[2.23174,48.86907],[2.22422,48.85352],[2.25248,48.84548],[2.25514,48.83481],[2.27005,48.83301],[2.26754,48.82779],[2.27906,48.83249],[2.33247,48.81825],[2.31786,48.80841],[2.32596,48.80666],[2.3187,48.788],[2.32662,48.77873],[2.3087,48.75542],[2.32072,48.74876],[2.31434,48.7433],[2.31444,48.73043],[2.30792,48.72935],[2.30245,48.7408],[2.27986,48.73271],[2.27535,48.73974],[2.2854,48.74751],[2.269,48.76202],[2.24702,48.76083],[2.23298,48.7662],[2.22332,48.78595],[2.20895,48.78761],[2.21162,48.79126],[2.20264,48.7984],[2.18294,48.79723],[2.18696,48.8007],[2.18196,48.8006],[2.17482,48.81511],[2.16271,48.8124],[2.15158,48.81702],[2.14587,48.83602],[2.15095,48.84799],[2.15987,48.84754],[2.15032,48.85801],[2.15714,48.86963],[2.14848,48.86847],[2.16838,48.89508],[2.20615,48.91093],[2.26084,48.94344],[2.29097,48.95097]]]}},{"type":"Feature","properties":{"code":"93","nom":"Seine-Saint-Denis"},"geometry":{"type":"Polygon","coordinates":[[[2.55306,49.00982],[2.56878,49.01113],[2.56466,49.00565],[2.57584,49.00029],[2.58144,48.98593],[2.57868,48.97914],[2.56248,48.97886],[2.58981,48.95344],[2.59593,48.93861],[2.60319,48.93754],[2.6026,48.92936],[2.58877,48.92094],[2.59237,48.9077],[2.5842,48.90335],[2.58703,48.89395],[2.55941,48.88647],[2.57137,48.8797],[2.56763,48.86588],[2.58793,48.86361],[2.58306,48.85543],[2.57384,48.85338],[2.5946,48.82129],[2.59228,48.80744],[2.57006,48.81504],[2.57221,48.82366],[2.5382,48.8368],[2.53443,48.84528],[2.5287,48.84376],[2.50544,48.85719],[2.49652,48.85609],[2.49612,48.86076],[2.46825,48.8607],[2.4673,48.85666],[2.4471,48.85116],[2.41634,48.84924],[2.41239,48.876],[2.4002,48.88383],[2.39033,48.90101],[2.31988,48.90046],[2.31376,48.91401],[2.33243,48.92634],[2.33556,48.94068],[2.29097,48.95097],[2.28825,48.95835],[2.29896,48.9663],[2.33297,48.95552],[2.3441,48.96824],[2.35393,48.96573],[2.36616,48.97413],[2.38454,48.971],[2.40738,48.95612],[2.41755,48.95951],[2.45949,48.95505],[2.46733,48.96433],[2.48075,48.96982],[2.48683,48.96729],[2.49274,48.97453],[2.51477,48.98226],[2.53224,49.00522],[2.54928,49.00306],[2.55306,49.00982]]]}},{"type":"Feature","properties":{"code":"94","nom":"Val-de-Marne"},"geometry":{"type":"Polygon","coordinates":[[[2.3319,48.81701],[2.36293,48.81608],[2.40247,48.82954],[2.43746,48.81818],[2.459,48.81724],[2.46971,48.83658],[2.46226,48.84254],[2.42184,48.84444],[2.42214,48.83579],[2.41224,48.83454],[2.41634,48.84924],[2.4471,48.85116],[2.4673,48.85666],[2.46825,48.8607],[2.49612,48.86076],[2.49652,48.85609],[2.50544,48.85719],[2.5287,48.84376],[2.53443,48.84528],[2.5382,48.8368],[2.57221,48.82366],[2.57006,48.81504],[2.59648,48.80613],[2.59211,48.7996],[2.59977,48.79498],[2.5868,48.77355],[2.607,48.7744],[2.61557,48.76237],[2.59754,48.76057],[2.60234,48.75373],[2.58541,48.74171],[2.59468,48.73181],[2.56814,48.70897],[2.58186,48.69744],[2.55036,48.68854],[2.5416,48.70012],[2.53108,48.69979],[2.52947,48.70792],[2.51731,48.71591],[2.51575,48.72894],[2.5062,48.73571],[2.47877,48.72764],[2.46597,48.72951],[2.45416,48.72045],[2.44843,48.7218],[2.4488,48.71483],[2.44013,48.72543],[2.41426,48.71782],[2.41013,48.72574],[2.40224,48.72655],[2.39747,48.7212],[2.37071,48.72018],[2.36935,48.74606],[2.35644,48.73816],[2.3087,48.75542],[2.32662,48.77873],[2.3187,48.788],[2.32596,48.80666],[2.31786,48.80841],[2.3319,48.81701]]]}},{"type":"Feature","properties":{"code":"95","nom":"Val-d'Oise"},"geometry":{"type":"Polygon","coordinates":[[[2.59052,49.07965],[2.57096,49.06056],[2.57419,49.05415],[2.58577,49.05781],[2.58472,49.0526],[2.59447,49.04714],[2.57703,49.0461],[2.56607,49.02859],[2.53501,49.02381],[2.53893,49.01276],[2.55328,49.01184],[2.54928,49.00306],[2.53224,49.00522],[2.51477,48.98226],[2.49274,48.97453],[2.48683,48.96729],[2.48075,48.96982],[2.46733,48.96433],[2.45949,48.95505],[2.41755,48.95951],[2.40738,48.95612],[2.38454,48.971],[2.36616,48.97413],[2.35393,48.96573],[2.3441,48.96824],[2.33297,48.95552],[2.29896,48.9663],[2.28825,48.95835],[2.29228,48.95139],[2.26084,48.94344],[2.20059,48.90868],[2.19919,48.91897],[2.20546,48.92213],[2.19893,48.93525],[2.20586,48.94974],[2.17314,48.9533],[2.17925,48.9658],[2.16559,48.98201],[2.12071,48.9933],[2.12712,49.00968],[2.12126,49.01833],[2.11024,49.00873],[2.08491,49.01468],[2.07546,49.00226],[2.06443,49.00821],[2.02361,48.9979],[1.99188,49.02101],[1.97406,49.01943],[1.96423,49.02555],[1.95708,49.0218],[1.94841,49.02654],[1.9378,49.02178],[1.90852,49.04802],[1.88321,49.03375],[1.8819,49.01954],[1.86178,49.01425],[1.86527,49.02163],[1.859,49.03245],[1.85133,49.03336],[1.86547,49.05747],[1.8451,49.06197],[1.82859,49.07624],[1.79655,49.07223],[1.79984,49.06456],[1.7943,49.05819],[1.77386,49.05701],[1.7601,49.06342],[1.75317,49.05983],[1.75118,49.04823],[1.73207,49.05042],[1.72346,49.04498],[1.69464,49.05606],[1.69662,49.0665],[1.67265,49.0786],[1.64292,49.08125],[1.61416,49.07145],[1.6088,49.07789],[1.62332,49.08608],[1.62309,49.09341],[1.61754,49.09399],[1.62956,49.10995],[1.65768,49.13188],[1.65306,49.14463],[1.66437,49.15337],[1.66097,49.1578],[1.6702,49.16946],[1.66639,49.17685],[1.67182,49.18088],[1.67491,49.21148],[1.69863,49.22452],[1.7094,49.24131],[1.71211,49.23302],[1.74045,49.22344],[1.73411,49.22128],[1.73369,49.21096],[1.71477,49.20734],[1.71555,49.20266],[1.72505,49.20078],[1.72682,49.19489],[1.73744,49.1946],[1.74083,49.18073],[1.75551,49.17459],[1.78481,49.18583],[1.79099,49.17986],[1.80258,49.18493],[1.80355,49.17996],[1.81384,49.17802],[1.81169,49.17361],[1.82691,49.17961],[1.8343,49.17564],[1.83647,49.16454],[1.84449,49.17043],[1.87677,49.17531],[1.88257,49.16249],[1.92451,49.17352],[1.94982,49.17035],[1.97344,49.1839],[2.00184,49.17594],[2.02178,49.18868],[2.03356,49.18811],[2.04753,49.19859],[2.08089,49.21045],[2.08283,49.20569],[2.09117,49.20854],[2.08946,49.19366],[2.09771,49.18917],[2.10966,49.19073],[2.11334,49.18654],[2.1281,49.19341],[2.13521,49.19118],[2.13695,49.17905],[2.14705,49.1881],[2.16457,49.17967],[2.15775,49.1726],[2.16879,49.16395],[2.18225,49.17038],[2.1761,49.17603],[2.19552,49.17318],[2.21865,49.18068],[2.23541,49.16703],[2.21656,49.15469],[2.22958,49.15129],[2.28641,49.15992],[2.2888,49.17071],[2.29943,49.17584],[2.3012,49.18389],[2.31093,49.18641],[2.32178,49.18443],[2.3593,49.14735],[2.37637,49.15904],[2.39129,49.14935],[2.4131,49.15235],[2.4409,49.1458],[2.4354,49.13394],[2.45823,49.14114],[2.46151,49.13594],[2.47158,49.13543],[2.47547,49.12832],[2.50326,49.11758],[2.48993,49.10636],[2.53106,49.0996],[2.53299,49.11938],[2.5408,49.12225],[2.53976,49.11645],[2.54716,49.11621],[2.55702,49.12382],[2.55153,49.1126],[2.55817,49.09839],[2.57868,49.09195],[2.57885,49.08445],[2.59052,49.07965]]]}}]}`, "us": '{"type":"FeatureCollection","features":[{"type":"Feature","properties":{"code":"04","nom":"Arizona"},"geometry":{"type":"Polygon","coordinates":[[[-112.53859,37.00067],[-109.04522,36.99908],[-109.05004,31.3325],[-110.97683,31.33256],[-111.0981,31.33984],[-112.2461,31.70419],[-114.81361,32.49428],[-114.80739,32.62133],[-114.78187,32.62505],[-114.71963,32.71876],[-114.67863,32.73661],[-114.61558,32.72845],[-114.49628,32.82233],[-114.46289,32.9058],[-114.4686,32.97165],[-114.51134,33.02345],[-114.57165,33.03662],[-114.58978,33.02623],[-114.62387,33.02872],[-114.6751,33.04753],[-114.70782,33.0911],[-114.67936,33.15952],[-114.67209,33.2585],[-114.72123,33.39691],[-114.62713,33.43355],[-114.62292,33.45656],[-114.53566,33.56879],[-114.53035,33.67925],[-114.49649,33.6969],[-114.4942,33.70792],[-114.52336,33.80612],[-114.51843,33.91752],[-114.49988,33.96179],[-114.43827,34.02261],[-114.43338,34.08841],[-114.41168,34.11003],[-114.36652,34.11857],[-114.24419,34.17963],[-114.16448,34.25167],[-114.13149,34.26039],[-114.13828,34.30323],[-114.17691,34.34931],[-114.33963,34.45143],[-114.46561,34.69226],[-114.55268,34.76687],[-114.63518,34.875],[-114.63547,35.02827],[-114.62196,35.09468],[-114.57852,35.12875],[-114.56924,35.18348],[-114.60431,35.35358],[-114.62714,35.4095],[-114.66213,35.44424],[-114.67764,35.48974],[-114.65341,35.61079],[-114.68941,35.65141],[-114.70031,35.70039],[-114.70613,35.87871],[-114.74358,35.98372],[-114.75562,36.08717],[-114.73616,36.10437],[-114.63172,36.14231],[-114.57203,36.15161],[-114.38145,36.14167],[-114.32878,36.1055],[-114.29266,36.05112],[-114.25265,36.02019],[-114.21369,36.01561],[-114.14877,36.02731],[-114.12019,36.10223],[-114.06302,36.18694],[-114.04684,36.19407],[-114.0506,37.0004],[-112.53859,37.00067]]]}},{"type":"Feature","properties":{"code":"05","nom":"Arkansas"},"geometry":{"type":"Polygon","coordinates":[[[-94.04296,33.01922],[-94.04345,33.55225],[-94.08524,33.57555],[-94.1818,33.59322],[-94.25266,33.58614],[-94.35595,33.54318],[-94.46434,33.59882],[-94.48587,33.63787],[-94.43121,35.39429],[-94.61792,36.49941],[-90.15248,36.49795],[-90.13399,36.43791],[-90.06451,36.38208],[-90.06398,36.30304],[-90.08373,36.27233],[-90.11492,36.26559],[-90.22043,36.18476],[-90.31917,36.08998],[-90.36872,35.99581],[-89.7331,36.00061],[-89.71997,35.97462],[-89.68692,35.94772],[-89.68814,35.89695],[-89.71493,35.90625],[-89.75604,35.89682],[-89.77247,35.8651],[-89.70104,35.82823],[-89.82122,35.75672],[-89.86563,35.74658],[-89.91,35.7594],[-89.95625,35.73339],[-89.95575,35.69062],[-89.93738,35.66571],[-89.90615,35.65114],[-89.88493,35.65511],[-89.9098,35.53791],[-89.95735,35.52868],[-90.01731,35.556],[-90.03294,35.55344],[-90.03401,35.46882],[-90.05907,35.45789],[-90.07442,35.47252],[-90.10772,35.47693],[-90.169,35.42185],[-90.17927,35.38519],[-90.16625,35.37474],[-90.14363,35.37474],[-90.09359,35.39333],[-90.08669,35.36993],[-90.11489,35.30389],[-90.15891,35.30064],[-90.16887,35.282],[-90.15209,35.25599],[-90.10509,35.25429],[-90.07741,35.22548],[-90.06539,35.13769],[-90.10059,35.11669],[-90.14279,35.13509],[-90.16006,35.12883],[-90.17459,35.11668],[-90.19386,35.06165],[-90.2956,35.04009],[-90.3093,34.99569],[-90.24448,34.9376],[-90.2501,34.90732],[-90.30738,34.8462],[-90.41486,34.83185],[-90.43643,34.85506],[-90.46145,34.85673],[-90.47396,34.85256],[-90.46729,34.7825],[-90.4798,34.76916],[-90.53735,34.78417],[-90.55486,34.72746],[-90.50899,34.67909],[-90.5215,34.66324],[-90.56403,34.66574],[-90.57654,34.6574],[-90.56581,34.4354],[-90.57534,34.41515],[-90.65854,34.37571],[-90.76414,34.3634],[-90.85637,34.23893],[-90.86877,34.22825],[-90.91148,34.22305],[-90.91321,34.21035],[-90.88032,34.16938],[-90.89301,34.15553],[-90.91841,34.15438],[-90.93456,34.13014],[-90.92879,34.10763],[-90.8884,34.08743],[-90.87916,34.0655],[-90.88741,34.03251],[-90.96471,34.00795],[-91.01889,34.00315],[-91.08912,33.97265],[-91.08816,33.96008],[-91.03682,33.91466],[-91.06751,33.84044],[-91.13987,33.77712],[-91.14468,33.75011],[-91.1279,33.69576],[-91.14817,33.67933],[-91.18597,33.67933],[-91.19309,33.65687],[-91.13044,33.60603],[-91.13404,33.59449],[-91.22412,33.56737],[-91.23229,33.55279],[-91.21567,33.52942],[-91.12511,33.47284],[-91.11849,33.44912],[-91.13188,33.43006],[-91.18443,33.41958],[-91.14122,33.2984],[-91.08598,33.22164],[-91.08759,33.14518],[-91.12566,33.03828],[-91.16607,33.00411],[-94.04296,33.01922]]]}},{"type":"Feature","properties":{"code":"06","nom":"California"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-120.24848,33.99933],[-120.23,34.01014],[-120.16731,34.00822],[-120.14036,34.02597],[-120.09018,34.01981],[-120.04326,34.03581],[-120.04658,34],[-120.01112,33.97989],[-119.97888,33.98308],[-119.97026,33.94436],[-120.01771,33.93637],[-120.04968,33.91456],[-120.12182,33.89571],[-120.16897,33.91909],[-120.22446,33.98906],[-120.24848,33.99933]]],[[[-119.7898,34.05726],[-119.75552,34.05672],[-119.71258,34.04326],[-119.68651,34.0198],[-119.63774,34.01318],[-119.61223,34.02126],[-119.59324,34.04962],[-119.5667,34.05345],[-119.52064,34.03426],[-119.56046,33.99553],[-119.66282,33.98589],[-119.72121,33.95958],[-119.75814,33.95921],[-119.87336,33.98038],[-119.8849,34.00881],[-119.87633,34.03209],[-119.92334,34.06936],[-119.91286,34.07751],[-119.8573,34.0713],[-119.81874,34.053],[-119.7898,34.05726]]],[[[-120.46258,34.04263],[-120.44025,34.03692],[-120.41529,34.05496],[-120.39091,34.05199],[-120.36828,34.07646],[-120.35861,34.05024],[-120.33116,34.0491],[-120.30212,34.02357],[-120.35793,34.01503],[-120.40937,34.0322],[-120.45413,34.02808],[-120.46258,34.04263]]],[[[-119.54384,33.28033],[-119.52814,33.28493],[-119.46572,33.25924],[-119.42956,33.22817],[-119.47603,33.21552],[-119.54587,33.23341],[-119.57894,33.27863],[-119.56204,33.27113],[-119.54384,33.28033]]],[[[-119.42297,34.00437],[-119.44123,34.01407],[-119.39625,34.00592],[-119.35746,34.01592],[-119.39155,34.0025],[-119.42297,34.00437]]],[[[-118.52453,32.89549],[-118.58693,33.00828],[-118.60656,33.01469],[-118.60553,33.031],[-118.59403,33.03595],[-118.56901,33.02915],[-118.49681,32.93385],[-118.36998,32.83927],[-118.35654,32.81731],[-118.39457,32.82398],[-118.42563,32.8006],[-118.4963,32.85157],[-118.52453,32.89549]]],[[[-118.50021,33.44959],[-118.37032,33.40928],[-118.36509,33.38837],[-118.31021,33.33579],[-118.30508,33.31032],[-118.32524,33.29908],[-118.37477,33.32006],[-118.46537,33.32606],[-118.48877,33.35665],[-118.47846,33.38632],[-118.48875,33.41983],[-118.56344,33.43438],[-118.60337,33.4781],[-118.54453,33.47412],[-118.50021,33.44959]]],[[[-122.4187,37.85272],[-122.44632,37.86105],[-122.42134,37.86995],[-122.4187,37.85272]]],[[[-123.01392,37.70036],[-123.00449,37.70626],[-123.00068,37.6902],[-123.01392,37.70036]]],[[[-122.3785,37.8265],[-122.36994,37.83214],[-122.36266,37.80758],[-122.3785,37.8265]]],[[[-124.06552,41.46474],[-124.08199,41.54776],[-124.10112,41.56919],[-124.10096,41.6025],[-124.13555,41.65731],[-124.14741,41.71796],[-124.16472,41.74013],[-124.17739,41.74576],[-124.19495,41.73678],[-124.25599,41.78301],[-124.23068,41.81868],[-124.20844,41.88819],[-124.21161,41.99846],[-122.37819,42.00952],[-121.0352,41.99332],[-119.99917,41.99454],[-120.00101,38.99957],[-118.7466,38.12493],[-117.50091,37.22028],[-116.0936,36.15581],[-114.63301,35.00209],[-114.63305,34.86997],[-114.55268,34.76687],[-114.46561,34.69226],[-114.33963,34.45143],[-114.17691,34.34931],[-114.13828,34.30323],[-114.13149,34.26039],[-114.16448,34.25167],[-114.24419,34.17963],[-114.36652,34.11857],[-114.41168,34.11003],[-114.43338,34.08841],[-114.43827,34.02261],[-114.49988,33.96179],[-114.51843,33.91752],[-114.52336,33.80612],[-114.4942,33.70792],[-114.49649,33.6969],[-114.53035,33.67925],[-114.53566,33.56879],[-114.62292,33.45656],[-114.62713,33.43355],[-114.72123,33.39691],[-114.67209,33.2585],[-114.67936,33.15952],[-114.70782,33.0911],[-114.6751,33.04753],[-114.62387,33.02872],[-114.58978,33.02623],[-114.57165,33.03662],[-114.52358,33.03096],[-114.4686,32.97165],[-114.46572,32.87919],[-114.49628,32.82233],[-114.61558,32.72845],[-114.67863,32.73661],[-114.71963,32.71876],[-115.87584,32.63642],[-117.12486,32.53416],[-117.13666,32.61875],[-117.16887,32.67195],[-117.19677,32.68885],[-117.24607,32.66935],[-117.25497,32.78695],[-117.28217,32.83955],[-117.25617,32.85945],[-117.25447,32.90015],[-117.28077,33.01234],[-117.31528,33.0935],[-117.36257,33.16844],[-117.46979,33.29642],[-117.54769,33.36549],[-117.59588,33.38663],[-117.64558,33.44073],[-117.68458,33.46193],[-117.69138,33.45403],[-117.71535,33.46056],[-117.78489,33.54153],[-117.87679,33.59232],[-117.92709,33.60552],[-118.1327,33.75322],[-118.18083,33.76307],[-118.18137,33.71737],[-118.25869,33.70374],[-118.31721,33.71282],[-118.36051,33.73682],[-118.41121,33.74198],[-118.42841,33.77472],[-118.39431,33.80432],[-118.39211,33.84092],[-118.46061,33.96911],[-118.51951,34.02751],[-118.56924,34.04164],[-118.74495,34.0321],[-118.78343,34.02154],[-118.80511,34.00124],[-118.85465,34.03422],[-118.93808,34.04338],[-119.08854,34.09831],[-119.13017,34.1001],[-119.18864,34.139],[-119.21644,34.1461],[-119.27864,34.2669],[-119.31303,34.27569],[-119.37036,34.31949],[-119.39045,34.3182],[-119.46104,34.37406],[-119.53696,34.39549],[-119.55946,34.4134],[-119.61686,34.42099],[-119.67187,34.4161],[-119.70907,34.3954],[-119.79477,34.4176],[-119.87397,34.40879],[-120.00808,34.46045],[-120.08859,34.46021],[-120.14117,34.4734],[-120.29505,34.47062],[-120.47138,34.44785],[-120.47661,34.47513],[-120.51142,34.52295],[-120.58129,34.55696],[-120.62257,34.55402],[-120.63781,34.56622],[-120.64024,34.60441],[-120.60045,34.70464],[-120.63742,34.7559],[-120.61027,34.85818],[-120.63928,34.88041],[-120.64733,34.90113],[-120.67083,34.90411],[-120.62993,35.06151],[-120.64431,35.13962],[-120.71419,35.176],[-120.74887,35.1778],[-120.76049,35.15971],[-120.85605,35.20649],[-120.89679,35.24788],[-120.86268,35.34678],[-120.8661,35.39305],[-120.88476,35.4302],[-120.90794,35.44907],[-120.94655,35.44671],[-120.96944,35.4602],[-121.00336,35.46071],[-121.1016,35.54881],[-121.16671,35.6354],[-121.28497,35.67411],[-121.31463,35.71331],[-121.31579,35.75252],[-121.33245,35.78311],[-121.46226,35.88562],[-121.50311,36.0003],[-121.5746,36.02516],[-121.62963,36.11445],[-121.68014,36.16582],[-121.71718,36.19515],[-121.82643,36.24186],[-121.85197,36.27783],[-121.88849,36.30281],[-121.90545,36.35827],[-121.90319,36.3936],[-121.9416,36.4856],[-121.94467,36.52186],[-121.92594,36.52517],[-121.93251,36.55994],[-121.97859,36.58049],[-121.93643,36.63675],[-121.88906,36.60176],[-121.8606,36.61114],[-121.81446,36.68286],[-121.78828,36.80399],[-121.86227,36.93155],[-121.89467,36.96185],[-121.93007,36.97815],[-121.97277,36.95415],[-122.01237,36.96455],[-122.02717,36.95115],[-122.05012,36.94852],[-122.10598,36.95595],[-122.20618,37.01395],[-122.28488,37.10175],[-122.30614,37.11638],[-122.33707,37.11738],[-122.33783,37.13594],[-122.36709,37.17282],[-122.40507,37.19579],[-122.41911,37.24147],[-122.40085,37.35923],[-122.44369,37.43594],[-122.45209,37.48054],[-122.47239,37.50054],[-122.49929,37.49534],[-122.51953,37.5373],[-122.51719,37.59064],[-122.50139,37.59964],[-122.49408,37.64404],[-122.51448,37.78083],[-122.48578,37.79063],[-122.47808,37.81083],[-122.46379,37.80465],[-122.40745,37.81144],[-122.38532,37.79072],[-122.37585,37.73498],[-122.35678,37.72951],[-122.36175,37.71501],[-122.39319,37.70753],[-122.37429,37.66221],[-122.38607,37.63766],[-122.35531,37.61574],[-122.37855,37.60559],[-122.36022,37.5925],[-122.31768,37.59087],[-122.3059,37.57548],[-122.2627,37.57287],[-122.21426,37.53851],[-122.19659,37.5372],[-122.19496,37.52247],[-122.16845,37.50414],[-122.14014,37.50791],[-122.12771,37.50005],[-122.11134,37.50758],[-122.112,37.52885],[-122.14701,37.58841],[-122.16305,37.66793],[-122.24683,37.72193],[-122.25795,37.7396],[-122.24264,37.75374],[-122.33079,37.78383],[-122.33371,37.8098],[-122.30393,37.83009],[-122.30999,37.89276],[-122.33453,37.90879],[-122.38591,37.90814],[-122.43009,37.96312],[-122.39983,37.95601],[-122.36758,37.97817],[-122.36791,38.01253],[-122.34009,38.00369],[-122.28348,38.02267],[-122.26286,38.0446],[-122.27301,38.07438],[-122.31457,38.11529],[-122.39638,38.14998],[-122.43958,38.11692],[-122.48997,38.11201],[-122.48376,38.07176],[-122.49783,38.0194],[-122.46281,38.00337],[-122.44841,37.98471],[-122.47198,37.98177],[-122.48866,37.96671],[-122.47917,37.94152],[-122.49947,37.93923],[-122.50306,37.92875],[-122.43827,37.88097],[-122.46216,37.86887],[-122.48081,37.87345],[-122.47915,37.82543],[-122.50538,37.82213],[-122.54899,37.83623],[-122.65652,37.90452],[-122.68217,37.90645],[-122.70264,37.89382],[-122.7273,37.90463],[-122.7369,37.92583],[-122.78324,37.95133],[-122.82138,37.99674],[-122.88211,38.02527],[-122.95681,38.02872],[-122.98178,38.00912],[-122.97439,37.99243],[-123.02407,37.99488],[-122.99242,38.04176],[-122.94907,38.15406],[-122.99396,38.2376],[-122.96857,38.24288],[-122.97708,38.2679],[-123.02433,38.31057],[-123.06367,38.30218],[-123.07468,38.32257],[-123.06826,38.35986],[-123.12883,38.45042],[-123.2498,38.51105],[-123.3319,38.56554],[-123.44177,38.69974],[-123.51478,38.74197],[-123.54184,38.77676],[-123.64739,38.84547],[-123.65985,38.87253],[-123.72537,38.91744],[-123.73889,38.95412],[-123.71115,38.97732],[-123.69009,39.03116],[-123.71339,39.10842],[-123.775,39.21208],[-123.82209,39.34386],[-123.81469,39.44654],[-123.76647,39.5528],[-123.78742,39.60455],[-123.79266,39.68412],[-123.80821,39.71072],[-123.82954,39.72307],[-123.85171,39.83204],[-123.90766,39.86303],[-123.93005,39.9097],[-123.95495,39.92237],[-123.98003,39.96246],[-124.0359,40.01332],[-124.07998,40.02977],[-124.08071,40.06611],[-124.11055,40.10377],[-124.18787,40.13054],[-124.21489,40.1609],[-124.36341,40.26097],[-124.34785,40.31463],[-124.3736,40.39292],[-124.40959,40.43808],[-124.38282,40.519],[-124.3294,40.61643],[-124.17672,40.84362],[-124.13707,40.92573],[-124.11217,41.02817],[-124.12545,41.0485],[-124.15362,41.05355],[-124.16541,41.12982],[-124.15854,41.14302],[-124.1438,41.14469],[-124.10699,41.22968],[-124.07229,41.37484],[-124.06552,41.46474]]]]}},{"type":"Feature","properties":{"code":"08","nom":"Colorado"},"geometry":{"type":"Polygon","coordinates":[[[-107.31779,41.00296],[-102.05161,41.00238],[-102.04224,36.99308],[-103.0022,37.0001],[-106.8698,36.99243],[-107.00059,37.00001],[-109.04522,36.99908],[-109.04206,38.15549],[-109.06006,38.27549],[-109.05008,41.00066],[-107.31779,41.00296]]]}},{"type":"Feature","properties":{"code":"09","nom":"Connecticut"},"geometry":{"type":"Polygon","coordinates":[[[-72.39743,42.0333],[-71.80065,42.02357],[-71.78968,41.72473],[-71.79768,41.41671],[-71.84256,41.40986],[-71.83161,41.3709],[-71.83978,41.33469],[-71.85957,41.3224],[-71.8863,41.33641],[-71.94565,41.3378],[-71.97096,41.32453],[-71.98219,41.32986],[-71.98815,41.32058],[-72.08449,41.31963],[-72.11182,41.2991],[-72.13422,41.2994],[-72.19102,41.3232],[-72.21292,41.29136],[-72.24816,41.29949],[-72.26149,41.28293],[-72.33389,41.28292],[-72.34807,41.2697],[-72.38663,41.2618],[-72.39869,41.27817],[-72.45193,41.27889],[-72.50663,41.2601],[-72.52942,41.26442],[-72.54724,41.2505],[-72.57114,41.2681],[-72.61724,41.272],[-72.67234,41.267],[-72.69474,41.24497],[-72.75748,41.26691],[-72.89544,41.2437],[-72.90524,41.2483],[-72.89384,41.2599],[-72.91683,41.28203],[-72.92085,41.2689],[-72.96205,41.2516],[-73.01495,41.2043],[-73.05065,41.2102],[-73.07945,41.19402],[-73.10549,41.17219],[-73.11105,41.1508],[-73.13025,41.1468],[-73.17777,41.1667],[-73.23506,41.144],[-73.26236,41.1175],[-73.28676,41.1279],[-73.3723,41.10402],[-73.43506,41.0567],[-73.46824,41.05135],[-73.47736,41.036],[-73.49333,41.04817],[-73.5169,41.03874],[-73.52887,41.0164],[-73.53534,41.03192],[-73.57007,41.0016],[-73.60395,41.01505],[-73.64348,41.00217],[-73.65734,40.98517],[-73.65467,41.0117],[-73.72777,41.1007],[-73.48271,41.21276],[-73.55096,41.29542],[-73.48731,42.04964],[-72.81354,42.03649],[-72.81674,41.99759],[-72.76674,42.00299],[-72.75584,42.03619],[-72.39743,42.0333]]]}},{"type":"Feature","properties":{"code":"11","nom":"District of Columbia"},"geometry":{"type":"Polygon","coordinates":[[[-77.03299,38.8395],[-77.0406,38.87121],[-77.1199,38.93431],[-77.041,38.99511],[-76.9094,38.89281],[-77.0386,38.79151],[-77.03299,38.8395]]]}},{"type":"Feature","properties":{"code":"13","nom":"Georgia"},"geometry":{"type":"Polygon","coordinates":[[[-84.81048,34.98761],[-83.67362,34.98711],[-83.10854,35.00077],[-83.14326,34.92476],[-83.24296,34.87775],[-83.26729,34.83275],[-83.32406,34.78869],[-83.35129,34.7017],[-83.24068,34.62431],[-83.16752,34.60042],[-83.17028,34.5924],[-83.08719,34.51594],[-83.03471,34.48349],[-82.99528,34.47455],[-82.97957,34.4827],[-82.90266,34.4859],[-82.87383,34.47151],[-82.75503,34.27607],[-82.71751,34.1505],[-82.67732,34.13166],[-82.6407,34.08834],[-82.56458,33.95581],[-82.42916,33.86584],[-82.40388,33.86548],[-82.30146,33.80186],[-82.24747,33.75259],[-82.19658,33.63058],[-82.13505,33.59104],[-82.04633,33.56383],[-81.96704,33.48064],[-81.91257,33.40881],[-81.90274,33.33124],[-81.85214,33.24754],[-81.69693,33.11655],[-81.62029,33.09541],[-81.49664,33.01022],[-81.49983,32.96382],[-81.42377,32.81051],[-81.40495,32.74703],[-81.41866,32.62939],[-81.38934,32.59544],[-81.34816,32.56929],[-81.27541,32.53946],[-81.19903,32.46729],[-81.16803,32.36839],[-81.13433,32.34169],[-81.12233,32.30539],[-81.11723,32.1176],[-81.06185,32.08794],[-80.84313,32.02423],[-80.84191,32.00264],[-80.86281,31.96935],[-80.91121,31.94377],[-80.94849,31.95723],[-80.97239,31.94127],[-80.96849,31.91582],[-80.93451,31.90918],[-80.99269,31.85764],[-81.06525,31.8771],[-81.05907,31.85011],[-81.07581,31.82903],[-81.03981,31.823],[-81.03687,31.81272],[-81.06812,31.76873],[-81.13063,31.72269],[-81.19278,31.73325],[-81.20357,31.71945],[-81.16108,31.6914],[-81.14937,31.6993],[-81.13114,31.69577],[-81.13349,31.62335],[-81.17308,31.55591],[-81.18611,31.56803],[-81.20431,31.56818],[-81.21454,31.5576],[-81.25422,31.55594],[-81.26008,31.54828],[-81.25881,31.52906],[-81.21795,31.52728],[-81.19952,31.5376],[-81.17725,31.51707],[-81.2788,31.36721],[-81.28292,31.32649],[-81.25482,31.31545],[-81.27469,31.28945],[-81.2884,31.21107],[-81.31418,31.20794],[-81.33903,31.18692],[-81.36824,31.13653],[-81.39968,31.13411],[-81.40127,31.07278],[-81.42047,31.0167],[-81.45144,31.01552],[-81.49365,30.97753],[-81.42693,30.95661],[-81.40848,30.97772],[-81.40341,30.95791],[-81.40515,30.9082],[-81.46006,30.76991],[-81.44412,30.70971],[-81.60622,30.71814],[-81.6243,30.73619],[-81.71993,30.74463],[-81.80665,30.78968],[-81.86861,30.79275],[-81.90601,30.82218],[-82.02321,30.78199],[-82.0494,30.6553],[-82.00548,30.56349],[-82.05007,30.36234],[-82.12484,30.36656],[-82.16519,30.35804],[-82.18958,30.37621],[-82.21029,30.42459],[-82.21438,30.56696],[-83.42948,30.64152],[-84.86469,30.71154],[-84.89612,30.75059],[-84.94192,30.88799],[-84.98353,30.93549],[-84.99863,30.97139],[-84.99943,31.01384],[-85.02974,31.09616],[-85.07663,31.15693],[-85.10021,31.16549],[-85.10752,31.18645],[-85.11187,31.25839],[-85.08765,31.30868],[-85.0413,31.54099],[-85.05747,31.61862],[-85.08703,31.64097],[-85.12553,31.69496],[-85.11893,31.73266],[-85.12523,31.76706],[-85.14133,31.78316],[-85.14183,31.83986],[-85.13293,31.88826],[-85.08213,31.94466],[-85.05021,32.0242],[-85.04787,32.14203],[-84.99593,32.18485],[-84.96483,32.19495],[-84.92165,32.23331],[-84.90905,32.26354],[-84.93868,32.30071],[-85.0071,32.32836],[-84.97943,32.41224],[-85.00132,32.51297],[-85.06958,32.58393],[-85.10479,32.64254],[-85.13714,32.74517],[-85.12342,32.77225],[-85.18413,32.87053],[-85.60516,34.98468],[-84.81048,34.98761]]]}},{"type":"Feature","properties":{"code":"15","nom":"Hawaii"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-155.77823,20.24574],[-155.74689,20.23232],[-155.7327,20.20539],[-155.65397,20.16736],[-155.59803,20.12454],[-155.55893,20.13157],[-155.44396,20.09532],[-155.28263,20.02197],[-155.20449,19.96944],[-155.08634,19.8554],[-155.09441,19.81491],[-155.08712,19.72801],[-155.00642,19.73929],[-154.9811,19.69069],[-154.98378,19.64165],[-154.95036,19.62646],[-154.94711,19.60486],[-154.90354,19.57062],[-154.80956,19.52238],[-154.83855,19.46364],[-154.98086,19.34929],[-155.15964,19.26837],[-155.20589,19.26091],[-155.26462,19.27421],[-155.29676,19.26629],[-155.36063,19.20893],[-155.41737,19.18786],[-155.45352,19.15195],[-155.51474,19.1325],[-155.51214,19.1243],[-155.55782,19.08213],[-155.55737,19.04657],[-155.59603,18.99883],[-155.60187,18.97157],[-155.67201,18.91747],[-155.72604,18.96944],[-155.7636,18.98184],[-155.80611,19.01397],[-155.88155,19.03664],[-155.90836,19.08114],[-155.92139,19.12118],[-155.8887,19.34803],[-155.92427,19.43879],[-155.92261,19.47861],[-155.9529,19.4888],[-155.97821,19.60816],[-155.99773,19.64282],[-156.03293,19.65391],[-156.02928,19.67891],[-156.06436,19.73077],[-156.04965,19.78045],[-155.97665,19.85053],[-155.92584,19.85893],[-155.89253,19.93216],[-155.83195,19.98278],[-155.82818,20.03542],[-155.86693,20.07865],[-155.89915,20.14573],[-155.90604,20.20516],[-155.89066,20.25524],[-155.85329,20.27155],[-155.77823,20.24574]]],[[[-160.55577,21.66829],[-160.54332,21.66713],[-160.54932,21.64535],[-160.55577,21.66829]]],[[[-160.125,21.95909],[-160.11275,21.99525],[-160.07212,22.00333],[-160.05854,21.99638],[-160.05273,21.98032],[-160.06581,21.97656],[-160.08579,21.9273],[-160.07907,21.89608],[-160.16162,21.86475],[-160.20585,21.77952],[-160.24961,21.81515],[-160.23103,21.88626],[-160.19016,21.92359],[-160.125,21.95909]]],[[[-159.43171,22.22002],[-159.40732,22.23055],[-159.35379,22.21767],[-159.31561,22.18682],[-159.30885,22.15555],[-159.29781,22.14975],[-159.29714,22.11381],[-159.338,22.04658],[-159.33471,21.9611],[-159.4466,21.87165],[-159.49091,21.8889],[-159.61024,21.89836],[-159.67187,21.95704],[-159.76574,21.98659],[-159.78814,22.01841],[-159.78654,22.06369],[-159.74816,22.10039],[-159.72604,22.15217],[-159.66984,22.17078],[-159.58397,22.22668],[-159.55417,22.22821],[-159.50781,22.20599],[-159.48856,22.23317],[-159.43171,22.22002]]],[[[-157.01455,21.1855],[-156.99132,21.18551],[-156.974,21.2185],[-156.94616,21.17596],[-156.90347,21.16421],[-156.89654,21.17221],[-156.86794,21.16452],[-156.77149,21.18005],[-156.74223,21.17621],[-156.73665,21.16188],[-156.7127,21.16155],[-156.71416,21.15224],[-156.74893,21.1086],[-156.79414,21.0758],[-156.87714,21.0493],[-157.0797,21.10583],[-157.25406,21.0906],[-157.31334,21.10575],[-157.29377,21.14613],[-157.25471,21.18138],[-157.25708,21.22727],[-157.20212,21.2193],[-157.18555,21.2056],[-157.01455,21.1855]]],[[[-156.54417,20.5228],[-156.58624,20.51171],[-156.60384,20.52437],[-156.66881,20.50474],[-156.70367,20.52724],[-156.6801,20.55702],[-156.57687,20.60657],[-156.54303,20.58011],[-156.55602,20.54266],[-156.54019,20.53474],[-156.54417,20.5228]]],[[[-156.61201,21.02477],[-156.60624,21.03437],[-156.59226,21.03288],[-156.54629,21.00508],[-156.4748,20.89455],[-156.38604,20.91956],[-156.32458,20.95018],[-156.23016,20.93194],[-156.23009,20.91786],[-156.16675,20.86565],[-156.13267,20.86137],[-156.11574,20.8273],[-156.09029,20.83187],[-156.05979,20.81054],[-156.00353,20.79555],[-155.98459,20.7675],[-155.98722,20.72272],[-156.00187,20.69806],[-156.05338,20.65432],[-156.08147,20.65439],[-156.14266,20.62361],[-156.21026,20.62852],[-156.30269,20.5862],[-156.37763,20.57843],[-156.41531,20.5861],[-156.4178,20.59868],[-156.44424,20.60794],[-156.46404,20.78167],[-156.50169,20.79993],[-156.53775,20.77841],[-156.63179,20.82124],[-156.68897,20.88867],[-156.69989,20.92063],[-156.6809,20.98026],[-156.64281,21.02758],[-156.61201,21.02477]]],[[[-157.01,20.92976],[-156.89717,20.9154],[-156.83705,20.86358],[-156.80847,20.8204],[-156.83832,20.76458],[-156.90908,20.73953],[-156.96789,20.73508],[-156.994,20.78667],[-156.99183,20.8266],[-157.01091,20.85448],[-157.05455,20.87722],[-157.06113,20.89063],[-157.05913,20.91341],[-157.01,20.92976]]],[[[-158.04449,21.30601],[-158.1127,21.3019],[-158.1225,21.3224],[-158.11195,21.32662],[-158.12546,21.33026],[-158.1403,21.3738],[-158.1792,21.4043],[-158.19235,21.44804],[-158.233,21.4876],[-158.23431,21.54006],[-158.27951,21.57579],[-158.12561,21.58674],[-158.01813,21.69995],[-157.96863,21.7127],[-157.92459,21.65118],[-157.9238,21.6293],[-157.87735,21.57528],[-157.8786,21.56018],[-157.85614,21.56066],[-157.83694,21.52995],[-157.83737,21.51208],[-157.85262,21.49997],[-157.84099,21.45948],[-157.8163,21.4502],[-157.78651,21.41563],[-157.77445,21.42135],[-157.77221,21.45774],[-157.73178,21.45594],[-157.7386,21.4043],[-157.72254,21.40304],[-157.7089,21.3833],[-157.7088,21.3534],[-157.6938,21.3329],[-157.6518,21.3139],[-157.6537,21.302],[-157.7001,21.264],[-157.7139,21.2638],[-157.7213,21.2869],[-157.8096,21.2577],[-157.8457,21.29],[-157.89,21.3065],[-157.90482,21.32917],[-157.91894,21.31862],[-157.91092,21.30577],[-157.95226,21.30653],[-157.95188,21.31874],[-157.96797,21.32799],[-158.04449,21.30601]]]]}},{"type":"Feature","properties":{"code":"17","nom":"Illinois"},"geometry":{"type":"Polygon","coordinates":[[[-89.36603,42.50027],[-87.80048,42.49192],[-87.80537,42.38472],[-87.83477,42.30152],[-87.82857,42.26992],[-87.80007,42.20802],[-87.74166,42.12823],[-87.67146,42.05833],[-87.62405,41.90423],[-87.61166,41.89222],[-87.60945,41.84523],[-87.56065,41.76603],[-87.53074,41.74824],[-87.52414,41.72399],[-87.53165,39.34789],[-87.54401,39.35291],[-87.58485,39.33733],[-87.60404,39.31353],[-87.60554,39.26112],[-87.58751,39.24928],[-87.60517,39.1859],[-87.65875,39.136],[-87.57259,39.05729],[-87.51219,38.95442],[-87.55338,38.86334],[-87.52589,38.8488],[-87.49521,38.78306],[-87.51961,38.6972],[-87.54005,38.67914],[-87.59368,38.6674],[-87.62012,38.63949],[-87.62735,38.60724],[-87.67007,38.54524],[-87.65614,38.52167],[-87.86303,38.28017],[-87.95171,38.23963],[-87.95906,38.20371],[-87.91103,38.16219],[-87.94218,38.13176],[-88.01312,38.10353],[-88.04213,38.04635],[-88.01257,37.97706],[-88.01345,37.89395],[-88.02112,37.88806],[-88.07145,37.89581],[-88.04945,37.84519],[-88.02779,37.8283],[-88.02803,37.79922],[-88.05959,37.74261],[-88.12241,37.70969],[-88.16019,37.65759],[-88.13339,37.57424],[-88.07224,37.52883],[-88.06256,37.48938],[-88.08339,37.47368],[-88.28167,37.4526],[-88.35844,37.40486],[-88.40881,37.42522],[-88.456,37.40848],[-88.47659,37.38688],[-88.51594,37.28404],[-88.50933,37.26213],[-88.44776,37.20353],[-88.4244,37.15243],[-88.45895,37.0738],[-88.51436,37.06523],[-88.5454,37.07],[-88.62589,37.11946],[-88.80921,37.18923],[-88.91693,37.22429],[-88.98326,37.22868],[-89.04126,37.20288],[-89.08653,37.1656],[-89.16809,37.07422],[-89.17897,37.02093],[-89.13268,36.9822],[-89.17001,36.9703],[-89.29213,36.99219],[-89.37828,37.03961],[-89.46763,37.2182],[-89.51703,37.28192],[-89.51184,37.31083],[-89.48901,37.33337],[-89.43284,37.34706],[-89.42105,37.38767],[-89.43977,37.4372],[-89.47553,37.47139],[-89.51705,37.53728],[-89.52127,37.57897],[-89.50656,37.62505],[-89.51544,37.67137],[-89.67126,37.80114],[-89.84479,37.90557],[-89.90183,37.86982],[-89.95059,37.88153],[-89.9971,37.96323],[-90.07228,38.017],[-90.24312,38.11267],[-90.3539,38.21386],[-90.37393,38.28185],[-90.37082,38.33355],[-90.34612,38.38185],[-90.28521,38.44345],[-90.26031,38.52835],[-90.18451,38.61155],[-90.18111,38.65955],[-90.20921,38.70275],[-90.20991,38.72605],[-90.12311,38.79805],[-90.11333,38.84931],[-90.25025,38.91934],[-90.45079,38.96776],[-90.47212,38.95884],[-90.48697,38.92598],[-90.54403,38.87505],[-90.58339,38.86903],[-90.62512,38.88865],[-90.66337,38.92804],[-90.71158,39.0468],[-90.68109,39.10059],[-90.72996,39.25589],[-90.84217,39.34193],[-91.04235,39.45206],[-91.15861,39.55305],[-91.17801,39.5982],[-91.22932,39.62085],[-91.36775,39.72903],[-91.3654,39.77727],[-91.43292,39.84055],[-91.44639,39.87039],[-91.46029,39.98033],[-91.49487,40.03742],[-91.51297,40.18106],[-91.48987,40.28605],[-91.46214,40.34241],[-91.44483,40.36317],[-91.38836,40.38493],[-91.37255,40.4012],[-91.36421,40.50004],[-91.38453,40.53095],[-91.40412,40.53913],[-91.40524,40.55464],[-91.33972,40.61349],[-91.25307,40.63796],[-91.18698,40.6373],[-91.12242,40.67068],[-91.09299,40.82108],[-91.00954,40.90057],[-90.96292,40.92496],[-90.94225,41.0347],[-90.94663,41.09663],[-90.98966,41.15572],[-91.04981,41.17803],[-91.11365,41.2414],[-91.04782,41.4109],[-90.98998,41.43196],[-90.84746,41.45502],[-90.73754,41.45013],[-90.65584,41.46213],[-90.60594,41.49423],[-90.46143,41.52353],[-90.34165,41.62148],[-90.34316,41.64814],[-90.30983,41.74332],[-90.27863,41.76736],[-90.18197,41.80707],[-90.14061,41.996],[-90.16649,42.05454],[-90.16223,42.11488],[-90.23492,42.16543],[-90.35696,42.20544],[-90.39111,42.22547],[-90.43088,42.27823],[-90.41903,42.3285],[-90.47728,42.38379],[-90.64673,42.4719],[-90.65653,42.4892],[-90.64093,42.5083],[-89.36603,42.50027]]]}},{"type":"Feature","properties":{"code":"18","nom":"Indiana"},"geometry":{"type":"Polygon","coordinates":[[[-84.80412,40.35276],[-84.82016,39.10548],[-84.89736,39.05738],[-84.84945,39.00092],[-84.78511,38.87999],[-84.81335,38.79833],[-84.9443,38.77518],[-84.99594,38.77676],[-85.17253,38.68808],[-85.21326,38.69545],[-85.2465,38.73182],[-85.27545,38.74117],[-85.43407,38.72946],[-85.45698,38.68914],[-85.43935,38.61039],[-85.41582,38.56356],[-85.42308,38.53158],[-85.60763,38.4393],[-85.65364,38.32711],[-85.68356,38.29547],[-85.74486,38.26717],[-85.78096,38.28847],[-85.82936,38.27677],[-85.90876,38.16117],[-85.90616,38.08617],[-85.92239,38.02868],[-85.95147,38.00561],[-86.02951,37.99264],[-86.17898,38.01131],[-86.26689,38.05712],[-86.27872,38.0893],[-86.27122,38.13011],[-86.28396,38.14319],[-86.30973,38.14439],[-86.39866,38.10624],[-86.45219,38.05049],[-86.51729,38.04263],[-86.52517,37.96823],[-86.60462,37.85827],[-86.63427,37.84385],[-86.6553,37.84251],[-86.66029,37.86506],[-86.70916,37.89764],[-86.73146,37.89434],[-86.79498,37.98898],[-86.81527,37.99888],[-86.85595,37.98729],[-86.91933,37.93666],[-86.97896,37.9302],[-87.03344,37.90659],[-87.06784,37.80606],[-87.11113,37.78251],[-87.12875,37.78573],[-87.20224,37.84379],[-87.38025,37.9356],[-87.45046,37.94145],[-87.5115,37.90643],[-87.55934,37.93115],[-87.57471,37.96774],[-87.59292,37.97584],[-87.62896,37.92671],[-87.62027,37.90692],[-87.59158,37.88719],[-87.58843,37.86879],[-87.6154,37.83197],[-87.64586,37.8259],[-87.67919,37.83632],[-87.68163,37.85592],[-87.66286,37.88558],[-87.67573,37.90193],[-87.76226,37.89091],[-87.7909,37.87571],[-87.83058,37.87652],[-87.87254,37.921],[-87.89806,37.92751],[-87.94084,37.88334],[-87.91028,37.84342],[-87.90681,37.80762],[-87.94376,37.77684],[-88.00471,37.80015],[-88.02803,37.79922],[-88.02779,37.8283],[-88.04945,37.84519],[-88.07145,37.89581],[-88.02112,37.88806],[-88.01345,37.89395],[-88.01257,37.97706],[-88.04213,38.04635],[-88.01312,38.10353],[-87.94218,38.13176],[-87.91103,38.16219],[-87.95906,38.20371],[-87.95171,38.23963],[-87.86303,38.28017],[-87.75003,38.40303],[-87.65614,38.52167],[-87.67007,38.54524],[-87.62735,38.60724],[-87.62012,38.63949],[-87.59368,38.6674],[-87.54005,38.67914],[-87.51961,38.6972],[-87.49521,38.78306],[-87.52589,38.8488],[-87.55338,38.86334],[-87.51219,38.95442],[-87.57259,39.05729],[-87.65875,39.136],[-87.60517,39.1859],[-87.58751,39.24928],[-87.60554,39.26112],[-87.60404,39.31353],[-87.58485,39.33733],[-87.54401,39.35291],[-87.53165,39.34789],[-87.52404,41.70833],[-87.47074,41.67283],[-87.43853,41.67068],[-87.43894,41.65434],[-87.42344,41.64283],[-87.27844,41.61974],[-87.18765,41.62965],[-87.16062,41.63727],[-87.16078,41.64538],[-87.12032,41.6457],[-87.06603,41.66184],[-86.82483,41.76024],[-84.81887,41.76006],[-84.80607,41.7376],[-84.80412,40.35276]]]}},{"type":"Feature","properties":{"code":"22","nom":"Louisiana"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-88.86507,29.75271],[-88.94443,29.65881],[-88.87361,29.75804],[-88.8312,29.87884],[-88.84087,29.99561],[-88.88145,30.0532],[-88.84122,30.01279],[-88.81702,29.93425],[-88.82654,29.84709],[-88.86507,29.75271]]],[[[-94.04315,32.69303],[-94.04296,33.01922],[-91.16607,33.00411],[-91.21403,32.93032],[-91.20826,32.91535],[-91.1754,32.9],[-91.14508,32.90549],[-91.13404,32.91768],[-91.13441,32.98053],[-91.09426,32.98437],[-91.06381,32.90371],[-91.10563,32.8584],[-91.145,32.84287],[-91.1644,32.78582],[-91.16339,32.74701],[-91.05448,32.72226],[-91.06395,32.70293],[-91.11826,32.67408],[-91.15208,32.64151],[-91.14115,32.59721],[-91.10411,32.58466],[-91.09077,32.56398],[-91.11601,32.48314],[-91.09531,32.45874],[-91.02961,32.43354],[-90.99408,32.40386],[-91.00011,32.35769],[-90.90151,32.33786],[-90.89859,32.32909],[-91.00456,32.21538],[-91.03901,32.24235],[-91.16417,32.19689],[-91.17455,32.15498],[-91.16545,32.13429],[-91.1314,32.12621],[-91.04662,32.13877],[-91.03015,32.12982],[-91.02754,32.11343],[-91.12801,31.98586],[-91.24814,31.86985],[-91.33841,31.85126],[-91.36508,31.75274],[-91.39791,31.70936],[-91.40467,31.6379],[-91.47496,31.62168],[-91.47736,31.59224],[-91.42509,31.57782],[-91.41668,31.5616],[-91.45002,31.53967],[-91.51122,31.53261],[-91.52292,31.51984],[-91.51513,31.44921],[-91.50041,31.41901],[-91.54124,31.35675],[-91.5399,31.33734],[-91.50886,31.29164],[-91.5224,31.27342],[-91.57449,31.26129],[-91.59849,31.20548],[-91.6042,31.15454],[-91.55991,31.05412],[-91.58467,31.02019],[-91.63694,30.99942],[-89.72815,31.00243],[-89.74479,30.91893],[-89.75654,30.90043],[-89.77341,30.89769],[-89.8426,30.66604],[-89.80684,30.57204],[-89.76057,30.51576],[-89.68341,30.45179],[-89.62994,30.33945],[-89.64344,30.28768],[-89.60765,30.2171],[-89.57265,30.1809],[-89.5245,30.18075],[-89.58706,30.15065],[-89.61754,30.15642],[-89.64099,30.13861],[-89.67816,30.10829],[-89.68371,30.07602],[-89.731,30.05758],[-89.71638,30.02622],[-89.73332,30.02205],[-89.78253,30.04537],[-89.81856,30.04333],[-89.85756,30.00444],[-89.8442,29.95565],[-89.82902,29.93923],[-89.80446,29.93259],[-89.72793,29.95878],[-89.71291,29.94635],[-89.74273,29.93589],[-89.74248,29.90817],[-89.71116,29.87929],[-89.66057,29.86291],[-89.61316,29.87216],[-89.59119,29.89702],[-89.575,29.95945],[-89.58136,29.99472],[-89.50159,30.03404],[-89.49348,30.07219],[-89.48193,30.07913],[-89.41846,30.04975],[-89.37238,30.05473],[-89.37238,30.03667],[-89.42281,30.0155],[-89.43341,29.99121],[-89.43278,29.97875],[-89.37923,29.9638],[-89.3786,29.91959],[-89.36802,29.91149],[-89.31545,29.92321],[-89.27331,29.99382],[-89.25053,30.00236],[-89.24997,29.9756],[-89.21807,29.97275],[-89.23118,29.92548],[-89.28014,29.92491],[-89.32229,29.88733],[-89.28925,29.8805],[-89.24143,29.88961],[-89.2363,29.87708],[-89.2699,29.86],[-89.38379,29.83893],[-89.37297,29.82526],[-89.34563,29.82014],[-89.33197,29.79052],[-89.2773,29.80761],[-89.28471,29.77002],[-89.27103,29.75635],[-89.3052,29.75693],[-89.33766,29.77914],[-89.36727,29.77515],[-89.38606,29.78881],[-89.42821,29.74155],[-89.42421,29.69764],[-89.53026,29.74375],[-89.56018,29.73547],[-89.57292,29.74662],[-89.65124,29.74948],[-89.64456,29.71096],[-89.59298,29.70204],[-89.5968,29.68421],[-89.57388,29.67403],[-89.53376,29.6702],[-89.48537,29.62436],[-89.5352,29.64857],[-89.62111,29.6571],[-89.6327,29.67172],[-89.64975,29.67294],[-89.64123,29.63577],[-89.64732,29.62541],[-89.68449,29.6248],[-89.66865,29.58032],[-89.68449,29.56326],[-89.68109,29.53449],[-89.7005,29.51597],[-89.66581,29.49002],[-89.63533,29.48929],[-89.59653,29.4563],[-89.58954,29.43766],[-89.5771,29.43369],[-89.54869,29.46572],[-89.52843,29.4547],[-89.53194,29.42568],[-89.50855,29.38617],[-89.48731,29.39335],[-89.47714,29.41124],[-89.4573,29.39315],[-89.38,29.39178],[-89.3403,29.38141],[-89.35069,29.34954],[-89.32317,29.34398],[-89.30377,29.35746],[-89.28303,29.35647],[-89.24087,29.31008],[-89.22419,29.31379],[-89.2006,29.34767],[-89.17955,29.33961],[-89.16501,29.30304],[-89.10011,29.25022],[-89.10065,29.20631],[-89.06826,29.20417],[-89.0291,29.22096],[-89.00067,29.18009],[-89.00529,29.16495],[-89.02427,29.17004],[-89.04723,29.15783],[-89.02394,29.1337],[-89.05195,29.10655],[-89.06234,29.07023],[-89.12154,29.06907],[-89.16985,29.0087],[-89.21114,29.04081],[-89.22586,29.07866],[-89.25473,29.08326],[-89.25935,29.05836],[-89.31539,29.03908],[-89.32485,29.01381],[-89.33825,29.01293],[-89.41148,28.92501],[-89.41987,28.92971],[-89.40816,28.96534],[-89.37505,28.98537],[-89.33473,29.04033],[-89.3548,29.07254],[-89.40565,29.08694],[-89.40937,29.12786],[-89.48284,29.21505],[-89.60665,29.25202],[-89.69726,29.29668],[-89.78215,29.31113],[-89.85031,29.31177],[-89.8537,29.34064],[-89.81615,29.39352],[-89.82605,29.41559],[-89.84355,29.42168],[-89.8329,29.46354],[-89.84964,29.478],[-89.90218,29.46001],[-89.9326,29.42929],[-89.95543,29.42853],[-89.99196,29.46354],[-90.01251,29.46278],[-90.0323,29.42701],[-90.03637,29.36366],[-90.02854,29.30708],[-90.00968,29.29479],[-90.01952,29.28221],[-90.05709,29.28133],[-90.07062,29.26254],[-90.10123,29.2598],[-90.09604,29.24067],[-90.07336,29.22728],[-90.07062,29.2087],[-90.04291,29.21176],[-89.95951,29.26768],[-89.95076,29.2608],[-90.17427,29.1053],[-90.22359,29.08507],[-90.34877,29.05782],[-90.32551,29.07514],[-90.25314,29.09377],[-90.25004,29.10807],[-90.23423,29.11027],[-90.2344,29.12882],[-90.28052,29.14252],[-90.30285,29.1751],[-90.30088,29.19617],[-90.27585,29.19367],[-90.27125,29.20464],[-90.31166,29.23795],[-90.31152,29.25637],[-90.3328,29.27696],[-90.36717,29.27413],[-90.38792,29.25279],[-90.38386,29.23561],[-90.39947,29.20105],[-90.43291,29.18813],[-90.44395,29.19583],[-90.47249,29.19269],[-90.46723,29.20255],[-90.49493,29.21671],[-90.46832,29.22753],[-90.45067,29.26374],[-90.51055,29.29093],[-90.52622,29.27649],[-90.56544,29.28511],[-90.58253,29.27604],[-90.58847,29.24586],[-90.56538,29.24247],[-90.54431,29.22429],[-90.56089,29.20426],[-90.63382,29.20913],[-90.64704,29.12858],[-90.76419,29.11337],[-90.79944,29.08738],[-90.8037,29.06371],[-90.79872,29.05484],[-90.76519,29.0494],[-90.7253,29.06662],[-90.69221,29.05961],[-90.63924,29.07285],[-90.6375,29.06661],[-90.7309,29.04226],[-90.83934,29.03917],[-90.86276,29.09486],[-90.96128,29.18082],[-91.0001,29.16948],[-91.03179,29.18219],[-91.09401,29.18771],[-91.12914,29.21586],[-91.19965,29.22129],[-91.27879,29.24778],[-91.33275,29.30582],[-91.29182,29.31136],[-91.26994,29.35723],[-91.24911,29.36986],[-91.2073,29.3607],[-91.19746,29.36988],[-91.22117,29.43642],[-91.25823,29.44695],[-91.26565,29.47236],[-91.2813,29.48155],[-91.33574,29.48589],[-91.35662,29.51519],[-91.42045,29.51574],[-91.44734,29.54475],[-91.53102,29.53154],[-91.52552,29.5519],[-91.55354,29.63277],[-91.57059,29.63831],[-91.62511,29.62619],[-91.64894,29.63364],[-91.62729,29.66213],[-91.61848,29.71082],[-91.63283,29.74258],[-91.71094,29.73899],[-91.75226,29.74826],[-91.85864,29.70312],[-91.88075,29.71084],[-91.87835,29.75102],[-91.85468,29.80744],[-91.88912,29.83602],[-91.90689,29.83094],[-91.91599,29.81565],[-91.94072,29.81701],[-92.0564,29.77231],[-92.14443,29.71642],[-92.14935,29.69705],[-92.11179,29.62177],[-92.02532,29.62565],[-91.96503,29.60802],[-91.93502,29.61224],[-91.92283,29.63317],[-91.86302,29.63374],[-91.84129,29.62962],[-91.82169,29.60605],[-91.78498,29.5952],[-91.77469,29.57639],[-91.712,29.56474],[-91.71165,29.55427],[-91.76545,29.52084],[-91.77052,29.48895],[-91.80345,29.48685],[-91.82158,29.47393],[-91.84866,29.48414],[-91.86232,29.50239],[-91.96931,29.53689],[-92.04632,29.58436],[-92.15862,29.58162],[-92.25186,29.53935],[-92.30936,29.53303],[-92.61627,29.57873],[-92.74413,29.61761],[-92.97431,29.71398],[-93.08818,29.74912],[-93.22693,29.77752],[-93.29557,29.77507],[-93.34733,29.75905],[-93.47525,29.76924],[-93.68364,29.74715],[-93.76605,29.7295],[-93.83797,29.69062],[-93.89847,29.77158],[-93.89068,29.84316],[-93.78943,29.98781],[-93.7121,30.06735],[-93.69525,30.1476],[-93.71201,30.1943],[-93.72057,30.29596],[-93.7359,30.29944],[-93.76582,30.33332],[-93.75765,30.39042],[-93.6983,30.43866],[-93.71012,30.5064],[-93.74004,30.53877],[-93.72784,30.57407],[-93.56329,30.8185],[-93.55862,30.86942],[-93.53094,30.92453],[-93.54035,31.00813],[-93.52764,31.07451],[-93.53174,31.18082],[-93.54893,31.1866],[-93.5885,31.16558],[-93.59883,31.17468],[-93.6144,31.26087],[-93.67168,31.29959],[-93.64081,31.37255],[-93.69587,31.40939],[-93.72961,31.48792],[-93.79809,31.53404],[-93.83492,31.58621],[-93.81248,31.71525],[-93.84003,31.8006],[-94.04272,31.99927],[-94.04315,32.69303]]]]}},{"type":"Feature","properties":{"code":"27","nom":"Minnesota"},"geometry":{"type":"Polygon","coordinates":[[[-92.1915,46.67259],[-92.21239,46.64994],[-92.26995,46.65193],[-92.29219,46.66324],[-92.29403,46.07438],[-92.65613,45.92444],[-92.7077,45.8949],[-92.73404,45.86811],[-92.78462,45.7642],[-92.86919,45.71757],[-92.88811,45.62838],[-92.88375,45.57548],[-92.80343,45.5625],[-92.72623,45.53108],[-92.68023,45.46434],[-92.6641,45.39331],[-92.70479,45.32653],[-92.76062,45.27883],[-92.79287,45.07849],[-92.79121,45.0457],[-92.76861,45.00802],[-92.75065,44.9373],[-92.76546,44.8362],[-92.8024,44.74517],[-92.73726,44.71715],[-92.6321,44.64903],[-92.54968,44.576],[-92.34006,44.55527],[-92.31407,44.53801],[-92.291,44.48546],[-92.2339,44.44633],[-92.1153,44.41606],[-91.9636,44.36211],[-91.91863,44.32267],[-91.87516,44.20058],[-91.80806,44.15926],[-91.72155,44.13034],[-91.59207,44.03137],[-91.43252,43.99683],[-91.28414,43.84707],[-91.26244,43.79217],[-91.26875,43.61535],[-91.21771,43.50055],[-96.45305,43.50041],[-96.45307,45.29812],[-96.48906,45.35707],[-96.52179,45.37564],[-96.61773,45.40809],[-96.69254,45.41734],[-96.73274,45.45874],[-96.76528,45.52141],[-96.85775,45.60596],[-96.83577,45.64965],[-96.67266,45.73234],[-96.58308,45.82002],[-96.56328,45.93524],[-96.57794,46.02687],[-96.55483,46.08482],[-96.58565,46.17731],[-96.59823,46.31256],[-96.722,46.43999],[-96.73905,46.54371],[-96.78301,46.63042],[-96.80201,46.81246],[-96.76746,46.90516],[-96.82322,46.97086],[-96.83295,47.23759],[-96.86231,47.42233],[-96.85329,47.50388],[-96.84243,47.50823],[-96.85095,47.59829],[-97.00036,47.86091],[-97.02316,47.87398],[-97.08816,48.05951],[-97.14751,48.17057],[-97.14717,48.24297],[-97.12993,48.24973],[-97.11657,48.27966],[-97.11558,48.32393],[-97.13637,48.35239],[-97.14569,48.39743],[-97.1234,48.4212],[-97.12677,48.52019],[-97.16311,48.54386],[-97.09261,48.68203],[-97.13757,48.74919],[-97.23261,48.94656],[-97.234,48.99747],[-95.15371,48.9989],[-95.15331,49.38436],[-95.0584,49.35317],[-94.95746,49.37019],[-94.82429,49.30883],[-94.77322,49.12073],[-94.75022,49.09976],[-94.75022,48.99999],[-94.71893,48.99999],[-94.68307,48.88393],[-94.69089,48.77807],[-94.62885,48.73879],[-94.53306,48.70126],[-94.46873,48.69632],[-94.41619,48.71095],[-94.30845,48.71024],[-94.26054,48.69638],[-94.2505,48.65665],[-94.22428,48.64953],[-93.84075,48.62855],[-93.80676,48.57762],[-93.81825,48.53005],[-93.79445,48.51602],[-93.66234,48.51571],[-93.4675,48.54566],[-93.45668,48.56183],[-93.46431,48.59179],[-93.36702,48.60828],[-93.34753,48.62662],[-93.25485,48.64278],[-93.2074,48.64247],[-93.17999,48.62493],[-92.98048,48.62492],[-92.72805,48.53929],[-92.63493,48.54287],[-92.62724,48.50338],[-92.69882,48.49489],[-92.71256,48.46301],[-92.688,48.44389],[-92.65603,48.43671],[-92.50728,48.44788],[-92.45633,48.4142],[-92.41512,48.29384],[-92.38439,48.24291],[-92.3253,48.23703],[-92.29505,48.27659],[-92.30456,48.32298],[-92.26228,48.35493],[-92.05523,48.35921],[-91.97749,48.24634],[-91.95443,48.25168],[-91.78969,48.19783],[-91.71493,48.19913],[-91.69934,48.14473],[-91.71185,48.1146],[-91.64106,48.0977],[-91.56975,48.09335],[-91.48807,48.06811],[-91.26638,48.07871],[-91.13848,48.15146],[-90.97696,48.21945],[-90.88548,48.24578],[-90.83918,48.23951],[-90.80421,48.17783],[-90.79531,48.13552],[-90.75161,48.09097],[-90.56976,48.10695],[-90.49564,48.09944],[-90.40322,48.10511],[-90.34423,48.09445],[-90.31239,48.1053],[-90.13619,48.11214],[-90.0236,48.08471],[-89.99785,48.05757],[-89.99305,48.0284],[-89.89741,47.9876],[-89.87329,47.98542],[-89.8198,48.0151],[-89.76397,48.02297],[-89.56429,48.00293],[-89.48923,48.01453],[-89.49534,48.00236],[-89.54152,47.99284],[-89.57232,47.96724],[-89.62456,47.98315],[-89.63954,47.95359],[-89.69762,47.94129],[-89.79354,47.89136],[-89.92365,47.86206],[-89.9339,47.84676],[-89.9743,47.83051],[-90.07202,47.8111],[-90.07556,47.8033],[-90.16079,47.79281],[-90.18764,47.77813],[-90.24879,47.77276],[-90.33269,47.74639],[-90.43771,47.73161],[-90.5371,47.70305],[-90.55129,47.69027],[-90.73593,47.62434],[-91.04565,47.45652],[-91.15651,47.37882],[-91.26251,47.27929],[-91.47735,47.12567],[-91.57382,47.08992],[-91.64456,47.02649],[-91.70465,47.00525],[-91.78068,46.94588],[-91.88324,46.90573],[-92.08609,46.79434],[-92.08829,46.77364],[-92.01529,46.70647],[-92.03399,46.70894],[-92.08949,46.74924],[-92.11659,46.74864],[-92.18909,46.71754],[-92.1915,46.67259]]]}},{"type":"Feature","properties":{"code":"28","nom":"Mississippi"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-89.09562,30.23177],[-89.07726,30.23168],[-89.06713,30.2502],[-89.09147,30.2023],[-89.11822,30.22334],[-89.15674,30.2307],[-89.09562,30.23177]]],[[[-88.90037,30.22458],[-88.9455,30.20965],[-88.98425,30.21032],[-88.92051,30.22058],[-88.87366,30.24175],[-88.90037,30.22458]]],[[[-88.507,30.21435],[-88.45344,30.20124],[-88.40147,30.21017],[-88.45365,30.19658],[-88.507,30.21435]]],[[[-88.71072,30.2508],[-88.6568,30.23396],[-88.56207,30.22748],[-88.58742,30.21915],[-88.77199,30.24552],[-88.71072,30.2508]]],[[[-89.19829,34.99448],[-88.20006,34.99563],[-88.12504,34.90223],[-88.09789,34.8922],[-88.46888,31.93026],[-88.39398,30.34931],[-88.40993,30.34211],[-88.43389,30.35465],[-88.45381,30.32963],[-88.48012,30.31835],[-88.5048,30.32147],[-88.52249,30.34009],[-88.57948,30.34419],[-88.59925,30.35893],[-88.61374,30.35311],[-88.66382,30.3621],[-88.70059,30.34369],[-88.72889,30.34267],[-88.84133,30.4096],[-88.85783,30.3929],[-88.85144,30.37535],[-88.89393,30.3934],[-89.01633,30.3839],[-89.28574,30.3031],[-89.29184,30.3281],[-89.27982,30.34979],[-89.31507,30.37541],[-89.33594,30.37402],[-89.36612,30.35217],[-89.33255,30.33789],[-89.32234,30.3193],[-89.32995,30.3029],[-89.41935,30.25432],[-89.44791,30.18535],[-89.46359,30.17394],[-89.48021,30.19375],[-89.50323,30.18305],[-89.57265,30.1809],[-89.60765,30.2171],[-89.64344,30.28768],[-89.62994,30.33945],[-89.68341,30.45179],[-89.76057,30.51576],[-89.80684,30.57204],[-89.8426,30.66604],[-89.77341,30.89769],[-89.75654,30.90043],[-89.74479,30.91893],[-89.72838,30.97114],[-89.7325,31.00483],[-91.63694,30.99942],[-91.58467,31.02019],[-91.55991,31.05412],[-91.6042,31.15454],[-91.59849,31.20548],[-91.57449,31.26129],[-91.5224,31.27342],[-91.50886,31.29164],[-91.5399,31.33734],[-91.54124,31.35675],[-91.50041,31.41901],[-91.51513,31.44921],[-91.52292,31.51984],[-91.51122,31.53261],[-91.45002,31.53967],[-91.41668,31.5616],[-91.42509,31.57782],[-91.47736,31.59224],[-91.47496,31.62168],[-91.40467,31.6379],[-91.39791,31.70936],[-91.36508,31.75274],[-91.33841,31.85126],[-91.24814,31.86985],[-91.12801,31.98586],[-91.02754,32.11343],[-91.03015,32.12982],[-91.04662,32.13877],[-91.1314,32.12621],[-91.16545,32.13429],[-91.17455,32.15498],[-91.16417,32.19689],[-91.03901,32.24235],[-91.00456,32.21538],[-90.89859,32.32909],[-90.90151,32.33786],[-91.00011,32.35769],[-90.99408,32.40386],[-91.02961,32.43354],[-91.09531,32.45874],[-91.11601,32.48314],[-91.09077,32.56398],[-91.10411,32.58466],[-91.14115,32.59721],[-91.15208,32.64151],[-91.11826,32.67408],[-91.06395,32.70293],[-91.05448,32.72226],[-91.16339,32.74701],[-91.1644,32.78582],[-91.145,32.84287],[-91.10563,32.8584],[-91.06381,32.90371],[-91.0868,32.97627],[-91.10658,32.98894],[-91.13441,32.98053],[-91.13211,32.92312],[-91.15998,32.89988],[-91.19679,32.90678],[-91.21403,32.93032],[-91.20184,32.96121],[-91.12566,33.03828],[-91.08759,33.14518],[-91.08598,33.22164],[-91.14122,33.2984],[-91.18443,33.41958],[-91.13188,33.43006],[-91.11849,33.44912],[-91.12511,33.47284],[-91.21567,33.52942],[-91.23229,33.55279],[-91.22412,33.56737],[-91.13404,33.59449],[-91.13044,33.60603],[-91.19309,33.65687],[-91.18597,33.67933],[-91.14817,33.67933],[-91.1279,33.69576],[-91.14468,33.75011],[-91.13987,33.77712],[-91.06751,33.84044],[-91.03682,33.91466],[-91.08816,33.96008],[-91.08912,33.97265],[-91.01889,34.00315],[-90.96471,34.00795],[-90.88741,34.03251],[-90.87916,34.0655],[-90.8884,34.08743],[-90.92879,34.10763],[-90.93456,34.13014],[-90.91841,34.15438],[-90.89301,34.15553],[-90.88032,34.16938],[-90.91321,34.21035],[-90.91148,34.22305],[-90.86877,34.22825],[-90.85637,34.23893],[-90.76414,34.3634],[-90.65854,34.37571],[-90.57534,34.41515],[-90.56581,34.4354],[-90.57654,34.6574],[-90.56403,34.66574],[-90.5215,34.66324],[-90.50899,34.67909],[-90.55486,34.72746],[-90.54985,34.76332],[-90.53735,34.78417],[-90.49481,34.76749],[-90.46729,34.7825],[-90.47396,34.85256],[-90.43643,34.85506],[-90.41486,34.83185],[-90.30738,34.8462],[-90.2501,34.90732],[-90.24448,34.9376],[-90.3093,34.99569],[-89.19829,34.99448]]]]}},{"type":"Feature","properties":{"code":"30","nom":"Montana"},"geometry":{"type":"Polygon","coordinates":[[[-111.04427,45.00135],[-111.05689,44.86666],[-111.04897,44.47407],[-111.13138,44.49992],[-111.21924,44.62262],[-111.32367,44.72447],[-111.37768,44.75174],[-111.39481,44.75135],[-111.48901,44.70555],[-111.52576,44.60488],[-111.60125,44.55421],[-111.70422,44.56021],[-111.80653,44.51546],[-111.84329,44.52822],[-111.8705,44.56403],[-112.07847,44.53355],[-112.18712,44.53445],[-112.27408,44.56433],[-112.33972,44.53858],[-112.35893,44.48628],[-112.38708,44.46048],[-112.47321,44.48003],[-112.71911,44.50434],[-112.78129,44.48489],[-112.82205,44.43411],[-112.83134,44.38166],[-112.84927,44.37104],[-112.87582,44.37436],[-113.00354,44.45081],[-113.02715,44.49591],[-113.05677,44.61866],[-113.0515,44.63695],[-113.13462,44.76315],[-113.24717,44.82295],[-113.3417,44.78485],[-113.45507,44.86542],[-113.49874,44.94231],[-113.47271,44.94812],[-113.4472,44.97192],[-113.44935,45.04574],[-113.57645,45.13031],[-113.56598,45.14934],[-113.59951,45.19111],[-113.67441,45.24941],[-113.73873,45.32974],[-113.77416,45.46537],[-113.76576,45.48323],[-113.77291,45.51232],[-113.81012,45.53092],[-113.80201,45.5791],[-113.81393,45.60056],[-113.89668,45.64145],[-113.93422,45.68223],[-113.98776,45.70525],[-114.01932,45.69294],[-114.03493,45.64797],[-114.13525,45.55747],[-114.18785,45.54215],[-114.24783,45.54549],[-114.30961,45.46943],[-114.35082,45.46854],[-114.36662,45.49162],[-114.46054,45.56128],[-114.56177,45.56511],[-114.56365,45.63741],[-114.51541,45.65284],[-114.50092,45.66672],[-114.49542,45.70332],[-114.50487,45.72218],[-114.54776,45.74331],[-114.56617,45.77386],[-114.5093,45.84553],[-114.44868,45.85889],[-114.39376,45.89402],[-114.40155,45.96319],[-114.41201,45.97806],[-114.48338,46.00805],[-114.4912,46.044],[-114.46758,46.08191],[-114.48312,46.12915],[-114.378,46.43537],[-114.3853,46.46716],[-114.34653,46.53579],[-114.33109,46.63025],[-114.37013,46.65422],[-114.42218,46.65216],[-114.48194,46.63199],[-114.61442,46.63919],[-114.64271,46.67314],[-114.64475,46.70215],[-114.66735,46.71928],[-114.73925,46.71517],[-114.85328,46.79979],[-114.92046,46.8277],[-114.93871,46.86902],[-114.93601,46.89976],[-115.07299,47.01376],[-115.19322,47.13303],[-115.26672,47.1811],[-115.32018,47.25572],[-115.47925,47.28209],[-115.52369,47.29892],[-115.57684,47.36682],[-115.72108,47.42235],[-115.72986,47.44729],[-115.71218,47.48855],[-115.73968,47.53766],[-115.70628,47.63786],[-115.72377,47.69667],[-116.04842,47.97682],[-116.04919,49.00091],[-104.04874,48.99988],[-104.04013,44.99999],[-106.26359,44.99379],[-109.08301,44.99961],[-109.10344,45.0059],[-110.1101,45.00391],[-110.55243,44.99224],[-111.04427,45.00135]]]}},{"type":"Feature","properties":{"code":"35","nom":"New Mexico"},"geometry":{"type":"Polygon","coordinates":[[[-105.998,32.00233],[-106.5991,32.00073],[-106.62781,31.86059],[-106.53584,31.79861],[-106.52854,31.78391],[-108.20839,31.7836],[-108.20857,31.33339],[-109.05004,31.3325],[-109.04522,36.99908],[-107.00059,37.00001],[-106.8698,36.99243],[-103.0022,37.0001],[-103.00243,36.5004],[-103.04167,36.47851],[-103.04353,34.01801],[-103.06463,32.9999],[-103.06442,32.00052],[-105.998,32.00233]]]}},{"type":"Feature","properties":{"code":"38","nom":"North Dakota"},"geometry":{"type":"Polygon","coordinates":[[[-100.51195,45.94365],[-104.04544,45.94531],[-104.04874,48.99988],[-97.22904,49.00069],[-97.23839,48.98263],[-97.23261,48.94656],[-97.13757,48.74919],[-97.09261,48.68203],[-97.16311,48.54386],[-97.12677,48.52019],[-97.1234,48.4212],[-97.14569,48.39743],[-97.13637,48.35239],[-97.11558,48.32393],[-97.11657,48.27966],[-97.12993,48.24973],[-97.14717,48.24297],[-97.14751,48.17057],[-97.08816,48.05951],[-97.02316,47.87398],[-97.00036,47.86091],[-96.85095,47.59829],[-96.84243,47.50823],[-96.85329,47.50388],[-96.86231,47.42233],[-96.83295,47.23759],[-96.82322,46.97086],[-96.76746,46.90516],[-96.80201,46.81246],[-96.78301,46.63042],[-96.73905,46.54371],[-96.722,46.43999],[-96.59823,46.31256],[-96.58565,46.17731],[-96.55483,46.08482],[-96.57794,46.02687],[-96.56328,45.93524],[-100.51195,45.94365]]]}},{"type":"Feature","properties":{"code":"40","nom":"Oklahoma"},"geometry":{"type":"Polygon","coordinates":[[[-100.00038,34.74636],[-100.00041,36.4997],[-103.00243,36.5004],[-103.0022,37.0001],[-102.04224,36.99308],[-100.11572,37.00221],[-94.61808,36.99813],[-94.61792,36.49941],[-94.43121,35.39429],[-94.49068,33.62559],[-94.52838,33.61599],[-94.73513,33.69127],[-94.7606,33.72705],[-94.8693,33.74587],[-95.03945,33.86062],[-95.06725,33.91735],[-95.21936,33.96157],[-95.25291,33.93365],[-95.25554,33.89205],[-95.28757,33.87362],[-95.40779,33.86631],[-95.54435,33.88011],[-95.55941,33.93018],[-95.59968,33.93425],[-95.75716,33.86729],[-95.76362,33.84795],[-95.82468,33.83773],[-95.94993,33.85745],[-96.14807,33.8378],[-96.1817,33.7585],[-96.22052,33.74739],[-96.30468,33.7459],[-96.36959,33.71681],[-96.42336,33.77636],[-96.50027,33.77258],[-96.61293,33.83394],[-96.61536,33.88111],[-96.65864,33.90008],[-96.67858,33.89279],[-96.71242,33.83163],[-96.76159,33.82441],[-96.85609,33.84749],[-96.88301,33.86802],[-96.89944,33.93373],[-96.92211,33.95958],[-96.97287,33.9357],[-96.98557,33.88652],[-97.04797,33.81793],[-97.09241,33.73321],[-97.1211,33.71717],[-97.17219,33.73754],[-97.20483,33.79991],[-97.1997,33.82732],[-97.17163,33.83534],[-97.16663,33.84731],[-97.18085,33.8952],[-97.21092,33.91606],[-97.31084,33.87246],[-97.37294,33.81945],[-97.42649,33.8194],[-97.46286,33.84177],[-97.45147,33.87093],[-97.45807,33.90163],[-97.50096,33.91964],[-97.555,33.89728],[-97.58744,33.90248],[-97.59712,33.91787],[-97.5896,33.95355],[-97.67177,33.99137],[-97.69311,33.9837],[-97.78532,33.8907],[-97.83433,33.85767],[-97.87739,33.85024],[-97.97786,33.88993],[-97.9534,33.93644],[-97.94573,33.98984],[-97.98352,34.00156],[-98.04112,33.99346],[-98.08526,34.00326],[-98.16912,34.11417],[-98.2939,34.13302],[-98.32545,34.15102],[-98.36402,34.15711],[-98.47507,34.06427],[-98.50418,34.07237],[-98.55372,34.13366],[-98.59979,34.16057],[-98.65235,34.16103],[-98.70018,34.136],[-98.76557,34.13638],[-98.85842,34.15273],[-98.96674,34.20119],[-99.1192,34.20175],[-99.19089,34.21525],[-99.21165,34.29223],[-99.21142,34.3379],[-99.26132,34.4035],[-99.35671,34.44214],[-99.40717,34.37261],[-99.44076,34.37412],[-99.45348,34.38876],[-99.51538,34.41433],[-99.57437,34.41828],[-99.61679,34.37539],[-99.69497,34.37833],[-99.76723,34.4305],[-99.92321,34.57455],[-99.95457,34.5782],[-100.00038,34.56051],[-100.00038,34.74636]]]}},{"type":"Feature","properties":{"code":"42","nom":"Pennsylvania"},"geometry":{"type":"Polygon","coordinates":[[[-79.47666,39.72108],[-80.51934,39.7214],[-80.51942,41.97752],[-80.32998,42.03617],[-80.18809,42.09426],[-80.15408,42.11476],[-80.11737,42.16634],[-80.07739,42.17126],[-80.07878,42.15146],[-80.06108,42.14486],[-79.93132,42.20674],[-79.76195,42.26986],[-79.76137,41.99907],[-75.35958,41.99945],[-75.27909,41.93892],[-75.26301,41.88511],[-75.1144,41.84358],[-75.05343,41.75254],[-75.05308,41.61855],[-75.04049,41.56969],[-74.98423,41.5063],[-74.91252,41.47561],[-74.87672,41.44034],[-74.75256,41.42652],[-74.69113,41.36732],[-74.69491,41.35742],[-74.79585,41.31895],[-74.83006,41.2872],[-74.86168,41.24157],[-74.88214,41.18084],[-74.97434,41.10391],[-74.96839,41.0878],[-75.03698,41.0347],[-75.13057,40.99109],[-75.13553,40.97381],[-75.12044,40.9683],[-75.05103,40.86566],[-75.1085,40.79109],[-75.1344,40.77376],[-75.17159,40.77775],[-75.19653,40.75163],[-75.20392,40.6915],[-75.19016,40.58932],[-75.10032,40.56781],[-75.06861,40.54222],[-75.07057,40.45517],[-75.05885,40.41806],[-75.02478,40.40346],[-74.77071,40.21491],[-74.7216,40.15381],[-74.74061,40.13521],[-74.97471,40.04871],[-75.07202,39.98061],[-75.18495,39.88161],[-75.23503,39.85661],[-75.3065,39.84981],[-75.41504,39.80179],[-75.49884,39.83331],[-75.57985,39.83853],[-75.63471,39.83016],[-75.71697,39.792],[-75.78836,39.72181],[-79.47666,39.72108]]]}},{"type":"Feature","properties":{"code":"47","nom":"Tennessee"},"geometry":{"type":"Polygon","coordinates":[[[-83.47211,36.59728],[-81.93414,36.59421],[-81.92264,36.61621],[-81.6469,36.61192],[-81.67754,36.58812],[-81.70796,36.53621],[-81.69591,36.49158],[-81.71508,36.45336],[-81.72594,36.34036],[-81.76493,36.33867],[-81.78971,36.34832],[-81.79369,36.36043],[-81.85501,36.33726],[-81.90814,36.30201],[-82.02664,36.13022],[-82.08014,36.10572],[-82.12715,36.10442],[-82.14795,36.14952],[-82.21125,36.15901],[-82.23774,36.13919],[-82.34842,36.11593],[-82.40946,36.08341],[-82.46296,36.00731],[-82.55753,35.95467],[-82.61126,35.97315],[-82.60288,36.03983],[-82.63716,36.0658],[-82.75446,36.0043],[-82.83011,35.93297],[-82.85255,35.94909],[-82.89851,35.9451],[-82.91334,35.92411],[-82.89798,35.88128],[-82.91836,35.84547],[-82.98397,35.77801],[-83.10033,35.7748],[-83.16491,35.75997],[-83.25125,35.71992],[-83.25423,35.69581],[-83.29715,35.65775],[-83.4458,35.6118],[-83.49833,35.56298],[-83.67627,35.57029],[-83.75692,35.5636],[-83.88007,35.51875],[-83.93388,35.47244],[-83.96105,35.46414],[-84.00225,35.42255],[-84.02476,35.3539],[-84.03808,35.34836],[-84.02141,35.30138],[-84.05571,35.26818],[-84.09751,35.24738],[-84.20288,35.25577],[-84.22372,35.26908],[-84.29024,35.22557],[-84.32187,34.98841],[-85.36392,34.98338],[-88.18245,35.00771],[-88.20006,34.99563],[-90.3093,34.99569],[-90.2956,35.04009],[-90.19386,35.06165],[-90.17459,35.11668],[-90.16006,35.12883],[-90.14279,35.13509],[-90.10059,35.11669],[-90.06539,35.13769],[-90.07741,35.22548],[-90.10509,35.25429],[-90.15209,35.25599],[-90.16887,35.282],[-90.15891,35.30064],[-90.11489,35.30389],[-90.08669,35.36993],[-90.09359,35.39333],[-90.14363,35.37474],[-90.16625,35.37474],[-90.17927,35.38519],[-90.169,35.42185],[-90.10772,35.47693],[-90.07442,35.47252],[-90.05907,35.45789],[-90.03401,35.46882],[-90.03294,35.55344],[-90.01731,35.556],[-89.95735,35.52868],[-89.9098,35.53791],[-89.88493,35.65511],[-89.90615,35.65114],[-89.93738,35.66571],[-89.95575,35.69062],[-89.95625,35.73339],[-89.91,35.7594],[-89.86563,35.74658],[-89.82122,35.75672],[-89.70387,35.82028],[-89.70926,35.83891],[-89.76941,35.86156],[-89.77356,35.8717],[-89.76569,35.8913],[-89.73361,35.9047],[-89.68814,35.89695],[-89.68692,35.94772],[-89.71997,35.97462],[-89.7331,36.00061],[-89.70693,36.00098],[-89.68444,36.05172],[-89.594,36.12719],[-89.59161,36.1441],[-89.607,36.17118],[-89.69982,36.24838],[-89.60237,36.23811],[-89.53475,36.25258],[-89.53949,36.27737],[-89.57849,36.28832],[-89.62026,36.32301],[-89.60567,36.34223],[-89.53182,36.33925],[-89.51318,36.3599],[-89.5195,36.47542],[-89.5391,36.4982],[-89.48511,36.49769],[-89.4932,36.47012],[-89.47172,36.457],[-89.44847,36.46442],[-89.41729,36.49903],[-89.2823,36.50678],[-88.05321,36.49713],[-88.03249,36.54066],[-88.07053,36.67812],[-87.84957,36.6637],[-87.8532,36.63325],[-86.60504,36.65212],[-86.56414,36.63347],[-86.4685,36.65184],[-85.78861,36.62185],[-85.50861,36.61502],[-85.27628,36.62651],[-84.78534,36.60337],[-84.26133,36.59198],[-83.69071,36.58258],[-83.67541,36.60081],[-83.47211,36.59728]]]}},{"type":"Feature","properties":{"code":"51","nom":"Virginia"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-75.24227,38.02721],[-75.35904,37.86414],[-75.37464,37.85945],[-75.40054,37.87486],[-75.43787,37.87232],[-75.51492,37.79915],[-75.58133,37.68359],[-75.61081,37.60591],[-75.61224,37.5856],[-75.59404,37.5697],[-75.66618,37.47212],[-75.66596,37.43921],[-75.72074,37.37313],[-75.73583,37.33543],[-75.77882,37.29718],[-75.79845,37.29628],[-75.78993,37.22813],[-75.80075,37.1973],[-75.8973,37.11804],[-75.91231,37.11515],[-75.92552,37.1336],[-75.97043,37.11861],[-76.02575,37.25741],[-76.01865,37.31782],[-75.98712,37.36855],[-75.98162,37.43412],[-75.96088,37.46756],[-75.92476,37.60021],[-75.86848,37.66822],[-75.85926,37.70311],[-75.83768,37.71299],[-75.80304,37.76246],[-75.81812,37.7917],[-75.7846,37.80683],[-75.7431,37.80666],[-75.68984,37.86182],[-75.68758,37.88634],[-75.70963,37.90062],[-75.75305,37.89661],[-75.75769,37.90391],[-75.71206,37.93608],[-75.69394,37.93036],[-75.62434,37.99421],[-75.24227,38.02721]]],[[[-75.97361,37.83582],[-75.9873,37.80492],[-75.9983,37.81263],[-75.99966,37.8482],[-75.97361,37.83582]]],[[[-75.99474,37.9535],[-76.03249,37.91501],[-76.04653,37.95359],[-75.99474,37.9535]]],[[[-78.86928,38.76299],[-78.78803,38.88512],[-78.71981,38.92264],[-78.71095,38.91018],[-78.60165,38.9646],[-78.55422,39.01967],[-78.5719,39.032],[-78.50813,39.08863],[-78.45987,39.11335],[-78.41838,39.15666],[-78.41074,39.17198],[-78.43865,39.19805],[-78.39967,39.24387],[-78.34048,39.35349],[-78.36227,39.35778],[-78.34709,39.46601],[-77.82816,39.13233],[-77.75027,39.28928],[-77.71903,39.32113],[-77.59274,39.30129],[-77.46021,39.22836],[-77.4786,39.18917],[-77.51643,39.17089],[-77.52728,39.14624],[-77.51993,39.12092],[-77.4582,39.07372],[-77.34029,39.06299],[-77.2614,39.03101],[-77.2498,38.98591],[-77.2215,38.97131],[-77.14818,38.965],[-77.1012,38.91111],[-77.0682,38.89981],[-77.0317,38.85051],[-77.0414,38.76391],[-77.0746,38.71102],[-77.1325,38.67382],[-77.1302,38.63502],[-77.1575,38.63642],[-77.202,38.61722],[-77.2163,38.63782],[-77.2467,38.63522],[-77.247,38.59062],[-77.26443,38.58284],[-77.26083,38.56533],[-77.31033,38.49393],[-77.32544,38.44885],[-77.31072,38.39767],[-77.31729,38.38358],[-77.29608,38.3698],[-77.27963,38.33944],[-77.24007,38.3316],[-77.16269,38.34599],[-77.13822,38.36792],[-77.08481,38.3683],[-77.04353,38.40055],[-77.01183,38.37455],[-77.03068,38.31162],[-76.96215,38.25649],[-76.96231,38.21408],[-76.8388,38.16348],[-76.76024,38.16658],[-76.72172,38.13764],[-76.7013,38.15572],[-76.61394,38.14859],[-76.60094,38.11008],[-76.54315,38.07697],[-76.51655,38.02657],[-76.46934,38.01354],[-76.4163,37.96683],[-76.34385,37.94734],[-76.23673,37.88917],[-76.25136,37.83307],[-76.27518,37.81266],[-76.29353,37.82272],[-76.30748,37.81235],[-76.31286,37.72034],[-76.30007,37.69536],[-76.33989,37.65597],[-76.33256,37.64582],[-76.29253,37.6361],[-76.28037,37.61371],[-76.30917,37.62189],[-76.36232,37.61037],[-76.38111,37.627],[-76.47239,37.66577],[-76.48958,37.6662],[-76.51019,37.64232],[-76.53655,37.66357],[-76.53723,37.69889],[-76.58429,37.76889],[-76.65141,37.79624],[-76.6802,37.82565],[-76.70161,37.82268],[-76.74755,37.87586],[-76.76571,37.87927],[-76.78462,37.86957],[-76.72386,37.7885],[-76.68377,37.78139],[-76.677,37.7561],[-76.61971,37.7448],[-76.61997,37.73127],[-76.59721,37.71727],[-76.57405,37.64678],[-76.54267,37.61686],[-76.43547,37.61281],[-76.41078,37.58181],[-76.30014,37.56173],[-76.3306,37.53639],[-76.34899,37.53655],[-76.36047,37.51924],[-76.32947,37.49492],[-76.30695,37.49749],[-76.2936,37.5165],[-76.26506,37.48136],[-76.24528,37.38684],[-76.27555,37.30996],[-76.30858,37.32937],[-76.33748,37.36401],[-76.41517,37.40213],[-76.41818,37.38506],[-76.44533,37.36646],[-76.40639,37.33292],[-76.38107,37.28534],[-76.34949,37.27396],[-76.41717,37.26395],[-76.42914,37.25331],[-76.48284,37.25483],[-76.50364,37.23386],[-76.4718,37.21602],[-76.38979,37.22298],[-76.39966,37.16027],[-76.38138,37.15571],[-76.34866,37.17065],[-76.33402,37.14422],[-76.29234,37.12662],[-76.27126,37.08454],[-76.30427,37.00138],[-76.31501,37.00168],[-76.31807,37.01385],[-76.34067,37.01525],[-76.38337,36.99335],[-76.41177,36.96285],[-76.42887,36.96995],[-76.46447,37.02755],[-76.51824,37.05535],[-76.5262,37.07777],[-76.53687,37.08394],[-76.56422,37.07751],[-76.61825,37.11935],[-76.62225,37.14215],[-76.60448,37.16003],[-76.62329,37.19874],[-76.64987,37.22091],[-76.73095,37.21381],[-76.75047,37.1901],[-76.78053,37.20934],[-76.80251,37.19831],[-76.73032,37.1454],[-76.71529,37.14804],[-76.68561,37.19885],[-76.66377,37.17388],[-76.67159,37.14206],[-76.65689,37.10984],[-76.66982,37.06426],[-76.66256,37.04575],[-76.58649,37.02874],[-76.50035,36.96521],[-76.48756,36.95237],[-76.48337,36.89624],[-76.46991,36.8829],[-76.45469,36.88408],[-76.4416,36.90612],[-76.38757,36.89955],[-76.38587,36.92325],[-76.32886,36.91845],[-76.32737,36.95945],[-76.31587,36.95535],[-76.29766,36.96815],[-76.09551,36.90882],[-76.03345,36.93195],[-75.99625,36.92205],[-75.94955,36.76115],[-75.86704,36.55075],[-80.16953,36.54319],[-81.67754,36.58812],[-81.6469,36.61192],[-81.92264,36.61621],[-81.93414,36.59421],[-83.67541,36.60081],[-83.52721,36.66598],[-83.46081,36.66488],[-83.1997,36.73749],[-83.13639,36.74309],[-83.12565,36.76141],[-83.13169,36.78149],[-83.07259,36.85459],[-82.97339,36.8591],[-82.91169,36.87425],[-82.86194,36.92424],[-82.85571,36.95381],[-82.87023,36.9655],[-82.86754,36.97752],[-82.72247,37.0451],[-82.72194,37.10569],[-82.56533,37.19612],[-82.35095,37.26708],[-81.9683,37.5378],[-81.92787,37.51212],[-81.99658,37.47671],[-81.98701,37.45488],[-81.93562,37.4384],[-81.92564,37.35732],[-81.89377,37.33011],[-81.87871,37.33175],[-81.84317,37.28559],[-81.75763,37.274],[-81.74429,37.24418],[-81.6786,37.20247],[-81.55732,37.2077],[-81.50732,37.2338],[-81.50417,37.25012],[-81.40973,37.28484],[-81.38813,37.3199],[-81.37735,37.31845],[-81.36216,37.33769],[-81.2251,37.23487],[-81.1126,37.2785],[-80.96656,37.29216],[-80.90054,37.315],[-80.84945,37.34691],[-80.87259,37.37235],[-80.85956,37.42957],[-80.81164,37.40751],[-80.77008,37.37236],[-80.51139,37.48167],[-80.49487,37.43507],[-80.46482,37.42614],[-80.31481,37.50094],[-80.33031,37.53624],[-80.28877,37.58196],[-80.22339,37.62318],[-80.26745,37.64611],[-80.29614,37.69178],[-80.26394,37.71914],[-80.25741,37.75608],[-80.1622,37.87512],[-80.00251,37.99277],[-79.93103,38.1014],[-79.93839,38.13056],[-79.9212,38.18038],[-79.78894,38.2687],[-79.80871,38.30943],[-79.73166,38.37414],[-79.68954,38.44251],[-79.69901,38.47515],[-79.66913,38.51088],[-79.64907,38.59152],[-79.53687,38.55092],[-79.47664,38.45723],[-79.31228,38.41188],[-79.28026,38.42547],[-79.21003,38.49423],[-79.14697,38.62564],[-79.05725,38.76141],[-79.05535,38.78221],[-78.99975,38.84616],[-78.86928,38.76299]]]]}},{"type":"Feature","properties":{"code":"72","nom":"Puerto Rico"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-65.28076,18.28827],[-65.28726,18.27774],[-65.2997,18.30218],[-65.28076,18.28827]]],[[[-65.31637,18.30966],[-65.34207,18.34529],[-65.3357,18.34953],[-65.30441,18.33205],[-65.27732,18.33258],[-65.24442,18.30349],[-65.26394,18.29068],[-65.2805,18.3062],[-65.30254,18.31049],[-65.30703,18.30164],[-65.31637,18.30966]]],[[[-65.3277,18.29584],[-65.33745,18.30831],[-65.33019,18.316],[-65.3277,18.29584]]],[[[-65.58297,18.24675],[-65.59815,18.2476],[-65.59963,18.2557],[-65.58489,18.25638],[-65.58297,18.24675]]],[[[-67.89174,18.11397],[-67.86155,18.12214],[-67.84361,18.0851],[-67.87146,18.0578],[-67.89592,18.05234],[-67.9408,18.07972],[-67.93219,18.11322],[-67.91088,18.11967],[-67.89174,18.11397]]],[[[-67.47798,18.37895],[-67.48935,18.38744],[-67.4822,18.39147],[-67.47798,18.37895]]],[[[-66.52348,17.89618],[-66.50978,17.90047],[-66.52857,17.88481],[-66.52348,17.89618]]],[[[-66.34965,18.48634],[-66.31548,18.47472],[-66.28368,18.4722],[-66.2698,18.48028],[-66.2418,18.46874],[-66.19266,18.46621],[-66.17231,18.45146],[-66.13945,18.46239],[-66.12794,18.44463],[-66.12502,18.47043],[-66.03944,18.45444],[-66.02322,18.44387],[-66.00652,18.44435],[-65.99079,18.46042],[-65.92567,18.44488],[-65.90499,18.45093],[-65.83882,18.43186],[-65.79456,18.40284],[-65.77053,18.41294],[-65.74215,18.38046],[-65.66885,18.36194],[-65.63443,18.36983],[-65.61823,18.3865],[-65.63583,18.28827],[-65.62311,18.24801],[-65.58995,18.22822],[-65.62673,18.23548],[-65.63818,18.22912],[-65.63528,18.19997],[-65.66413,18.20714],[-65.69075,18.19499],[-65.69102,18.179],[-65.718,18.19018],[-65.73466,18.18037],[-65.77758,18.12924],[-65.80183,18.05853],[-65.81711,18.06338],[-65.83109,18.05066],[-65.83243,18.01492],[-65.87033,18.0066],[-65.88494,17.98852],[-65.92474,17.97609],[-65.97661,17.96767],[-66.01731,17.97958],[-66.04903,17.95456],[-66.08141,17.96655],[-66.15539,17.92941],[-66.20696,17.93227],[-66.21337,17.94461],[-66.18555,17.941],[-66.17484,17.94821],[-66.20681,17.96331],[-66.23152,17.94391],[-66.23201,17.93115],[-66.26068,17.93608],[-66.2709,17.9471],[-66.29078,17.94649],[-66.32366,17.97854],[-66.36251,17.96823],[-66.38506,17.939],[-66.46134,17.99027],[-66.4914,17.99026],[-66.58323,17.96123],[-66.63194,17.98275],[-66.67282,17.96645],[-66.71696,17.99034],[-66.74625,17.99035],[-66.76449,18.00632],[-66.80687,17.98379],[-66.80568,17.97505],[-66.7893,17.98079],[-66.78724,17.97291],[-66.83858,17.94993],[-66.85647,17.95655],[-66.89964,17.9483],[-66.92453,17.97281],[-66.93041,17.96313],[-66.90936,17.94988],[-66.93264,17.94],[-66.92383,17.92692],[-66.98052,17.95165],[-66.99674,17.9729],[-67.06248,17.97382],[-67.10998,17.94581],[-67.17857,17.96479],[-67.18872,17.95099],[-67.18346,17.93114],[-67.19478,17.93283],[-67.21527,17.98346],[-67.17214,18.02142],[-67.20989,18.03544],[-67.19669,18.06649],[-67.18394,18.06991],[-67.19821,18.07683],[-67.19931,18.09114],[-67.18218,18.10851],[-67.18082,18.16805],[-67.15266,18.20349],[-67.19606,18.29044],[-67.23514,18.29994],[-67.27135,18.36233],[-67.1566,18.41898],[-67.16902,18.47849],[-67.14283,18.50549],[-67.09375,18.51576],[-67.02028,18.5106],[-66.95773,18.48913],[-66.90687,18.48356],[-66.79932,18.49278],[-66.71074,18.47261],[-66.62462,18.4942],[-66.58407,18.48429],[-66.5585,18.48999],[-66.47029,18.46907],[-66.42092,18.48864],[-66.34965,18.48634]]],[[[-65.30872,18.14517],[-65.28796,18.1481],[-65.27621,18.13194],[-65.32279,18.12659],[-65.34204,18.11138],[-65.36473,18.12038],[-65.45138,18.0861],[-65.47979,18.09635],[-65.54209,18.08118],[-65.57686,18.10322],[-65.57558,18.11567],[-65.43706,18.15766],[-65.39952,18.16193],[-65.30872,18.14517]]]]}},{"type":"Feature","properties":{"code":"10","nom":"Delaware"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-75.55587,39.60582],[-75.57176,39.62358],[-75.55945,39.62981],[-75.55587,39.60582]]],[[[-75.59485,39.83729],[-75.49884,39.83331],[-75.41504,39.80179],[-75.44813,39.77397],[-75.50974,39.68611],[-75.52974,39.69261],[-75.61315,39.62096],[-75.61187,39.59741],[-75.56303,39.56224],[-75.57036,39.52722],[-75.56073,39.52047],[-75.58773,39.49635],[-75.5899,39.46202],[-75.53851,39.4165],[-75.49169,39.34396],[-75.43903,39.31338],[-75.40296,39.25463],[-75.40572,39.22383],[-75.39302,39.20451],[-75.41062,39.15625],[-75.40203,39.06688],[-75.34576,39.02486],[-75.31835,38.98819],[-75.30408,38.91316],[-75.19055,38.80686],[-75.13402,38.78224],[-75.0971,38.7887],[-75.0972,38.8031],[-75.08947,38.7972],[-75.06551,38.66103],[-75.04894,38.45126],[-75.69352,38.46013],[-75.78836,39.72181],[-75.68599,39.81105],[-75.59485,39.83729]]]]}},{"type":"Feature","properties":{"code":"54","nom":"West Virginia"},"geometry":{"type":"Polygon","coordinates":[[[-78.5719,39.032],[-78.55422,39.01967],[-78.60165,38.9646],[-78.71095,38.91018],[-78.71981,38.92264],[-78.78803,38.88512],[-78.86928,38.76299],[-78.99975,38.84616],[-79.05535,38.78221],[-79.05725,38.76141],[-79.14697,38.62564],[-79.21003,38.49423],[-79.29776,38.41644],[-79.31228,38.41188],[-79.47664,38.45723],[-79.53687,38.55092],[-79.64907,38.59152],[-79.66913,38.51088],[-79.69901,38.47515],[-79.68954,38.44251],[-79.73166,38.37414],[-79.80871,38.30943],[-79.78894,38.2687],[-79.9212,38.18038],[-79.93839,38.13056],[-79.93103,38.1014],[-80.00251,37.99277],[-80.1622,37.87512],[-80.25741,37.75608],[-80.26394,37.71914],[-80.29614,37.69178],[-80.26745,37.64611],[-80.22098,37.62777],[-80.28877,37.58196],[-80.33031,37.53624],[-80.31481,37.50094],[-80.4756,37.42295],[-80.49487,37.43507],[-80.51139,37.48167],[-80.77008,37.37236],[-80.81164,37.40751],[-80.85956,37.42957],[-80.87259,37.37235],[-80.84945,37.34691],[-80.90054,37.315],[-80.96656,37.29216],[-81.1126,37.2785],[-81.2251,37.23487],[-81.36216,37.33769],[-81.37735,37.31845],[-81.38813,37.3199],[-81.40973,37.28484],[-81.50417,37.25012],[-81.50732,37.2338],[-81.56063,37.20666],[-81.6786,37.20247],[-81.74429,37.24418],[-81.75763,37.274],[-81.85406,37.29135],[-81.87871,37.33175],[-81.89377,37.33011],[-81.92659,37.35894],[-81.93562,37.4384],[-81.99227,37.46092],[-81.99292,37.48297],[-81.92787,37.51212],[-81.9683,37.5378],[-81.99818,37.54308],[-82.00827,37.53336],[-82.04852,37.53108],[-82.11658,37.55959],[-82.14181,37.59505],[-82.29701,37.68727],[-82.32574,37.7358],[-82.31902,37.75889],[-82.32987,37.7759],[-82.41768,37.87066],[-82.50039,37.93652],[-82.46547,37.98478],[-82.51967,38.00854],[-82.54728,38.06109],[-82.60013,38.11739],[-82.63647,38.13786],[-82.64474,38.16549],[-82.60423,38.2473],[-82.584,38.24637],[-82.57466,38.26387],[-82.57188,38.31578],[-82.59538,38.38271],[-82.59367,38.42181],[-82.56066,38.40434],[-82.52018,38.40758],[-82.33034,38.4445],[-82.31394,38.46808],[-82.29127,38.57898],[-82.26207,38.59818],[-82.19382,38.5931],[-82.17727,38.60378],[-82.18827,38.73408],[-82.22157,38.78719],[-82.13928,38.86641],[-82.09316,38.97098],[-82.05156,38.99438],[-82.03596,39.02548],[-82.00226,39.02788],[-81.93562,38.9895],[-81.89847,38.9296],[-81.92835,38.89537],[-81.90865,38.87846],[-81.87486,38.88117],[-81.76,38.92583],[-81.76425,39.01528],[-81.80335,39.04768],[-81.81415,39.07348],[-81.81235,39.08208],[-81.74725,39.09538],[-81.74985,39.18649],[-81.69572,39.24286],[-81.60582,39.27585],[-81.54235,39.35287],[-81.45614,39.40927],[-81.41271,39.39462],[-81.39379,39.35171],[-81.37596,39.3417],[-81.34757,39.34577],[-81.27072,39.38591],[-81.21562,39.3886],[-81.02005,39.55541],[-80.94378,39.60693],[-80.88036,39.62071],[-80.82976,39.71184],[-80.80872,39.91257],[-80.74013,39.97079],[-80.7331,40.05877],[-80.70548,40.15305],[-80.5999,40.31767],[-80.6192,40.38177],[-80.59919,40.48257],[-80.66796,40.5825],[-80.62717,40.61994],[-80.56072,40.62368],[-80.51899,40.6388],[-80.51934,39.7214],[-79.47666,39.72108],[-79.48687,39.20596],[-79.40291,39.25011],[-79.25688,39.35608],[-79.21319,39.3679],[-79.08445,39.47136],[-79.04244,39.47934],[-78.969,39.44154],[-78.87474,39.52261],[-78.78746,39.62749],[-78.7605,39.60998],[-78.76749,39.58749],[-78.68945,39.54577],[-78.56593,39.51944],[-78.46864,39.51679],[-78.43694,39.53896],[-78.43203,39.56105],[-78.45846,39.58116],[-78.43025,39.62329],[-78.35522,39.64058],[-78.27112,39.61964],[-78.17663,39.69597],[-78.0746,39.66669],[-78.00999,39.60289],[-77.94644,39.58491],[-77.90265,39.5878],[-77.86542,39.51647],[-77.84511,39.49829],[-77.80782,39.49024],[-77.7392,39.38573],[-77.76059,39.33886],[-77.71903,39.32113],[-77.75027,39.28928],[-77.82816,39.13233],[-78.34709,39.46601],[-78.36227,39.35778],[-78.34048,39.35349],[-78.39967,39.24387],[-78.43865,39.19805],[-78.41074,39.17198],[-78.41838,39.15666],[-78.45987,39.11335],[-78.50813,39.08863],[-78.5719,39.032]]]}},{"type":"Feature","properties":{"code":"55","nom":"Wisconsin"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-90.45668,47.01674],[-90.44907,47.06601],[-90.39537,47.07717],[-90.41343,47.01317],[-90.46408,46.99464],[-90.45668,47.01674]]],[[[-90.63672,46.86132],[-90.62205,46.87287],[-90.60255,46.87271],[-90.56887,46.84725],[-90.67613,46.81899],[-90.68575,46.805],[-90.65531,46.79917],[-90.65718,46.7888],[-90.71646,46.78542],[-90.76365,46.75493],[-90.78852,46.75331],[-90.79023,46.7861],[-90.733,46.80022],[-90.72093,46.8159],[-90.63672,46.86132]]],[[[-90.57957,46.91823],[-90.63712,46.90672],[-90.6548,46.91926],[-90.63451,46.94294],[-90.5288,46.9685],[-90.51162,46.96141],[-90.54587,46.91667],[-90.57957,46.91823]]],[[[-86.94596,45.40767],[-86.93428,45.42115],[-86.91769,45.40789],[-86.8775,45.41398],[-86.85314,45.40555],[-86.83035,45.41085],[-86.82866,45.42854],[-86.80587,45.4129],[-86.86356,45.36489],[-86.86904,45.33322],[-86.89505,45.32903],[-86.89989,45.29518],[-86.95613,45.34227],[-86.94596,45.40767]]],[[[-87.76262,44.9658],[-87.81952,44.95111],[-87.83903,44.93172],[-87.83276,44.88094],[-87.86624,44.84048],[-87.90114,44.82737],[-87.94145,44.75608],[-87.98349,44.7202],[-87.99011,44.66846],[-88.00208,44.66403],[-88.00977,44.63708],[-87.99872,44.60929],[-88.04241,44.56659],[-88.00552,44.53922],[-87.9707,44.53029],[-87.929,44.53599],[-87.90118,44.56893],[-87.90118,44.58454],[-87.86688,44.60843],[-87.75603,44.64913],[-87.71978,44.69325],[-87.72089,44.72455],[-87.61006,44.83838],[-87.58131,44.85179],[-87.531,44.85744],[-87.51514,44.8696],[-87.47849,44.86357],[-87.43708,44.89272],[-87.42033,44.8876],[-87.41002,44.86199],[-87.38482,44.86553],[-87.3854,44.88996],[-87.40501,44.91181],[-87.32212,45.0342],[-87.26488,45.08136],[-87.23822,45.16726],[-87.22197,45.17504],[-87.19521,45.16311],[-87.16317,45.18533],[-87.11997,45.1911],[-87.12282,45.223],[-87.10874,45.257],[-87.07832,45.26572],[-87.05763,45.29284],[-87.0439,45.28477],[-87.01704,45.29925],[-86.97778,45.29068],[-86.97035,45.27846],[-86.98498,45.25867],[-86.97302,45.2464],[-86.98597,45.21587],[-87.00281,45.21177],[-87.00754,45.22213],[-87.03255,45.22227],[-87.04091,45.21153],[-87.04523,45.1584],[-87.02885,45.14637],[-87.05434,45.11997],[-87.04821,45.08912],[-87.07955,45.07078],[-87.08187,45.0591],[-87.12116,45.05831],[-87.13938,45.01257],[-87.16353,45.00489],[-87.18941,44.96863],[-87.18837,44.94808],[-87.1717,44.93148],[-87.21598,44.9066],[-87.20454,44.87559],[-87.26744,44.84685],[-87.28256,44.81473],[-87.31375,44.79377],[-87.35379,44.70191],[-87.40163,44.63119],[-87.43749,44.60507],[-87.46809,44.55192],[-87.5176,44.3757],[-87.54538,44.32138],[-87.50842,44.22967],[-87.5129,44.19281],[-87.56318,44.1442],[-87.64658,44.10469],[-87.65608,44.05179],[-87.68336,44.02014],[-87.73618,43.88042],[-87.72641,43.81045],[-87.70025,43.76735],[-87.70988,43.7358],[-87.70269,43.6876],[-87.79014,43.56305],[-87.79324,43.49278],[-87.8725,43.38018],[-87.91179,43.25041],[-87.88108,43.17061],[-87.90049,43.12591],[-87.86648,43.07441],[-87.89508,43.04231],[-87.89578,43.01581],[-87.84518,42.96202],[-87.84778,42.88922],[-87.82328,42.83532],[-87.76668,42.7849],[-87.78217,42.74772],[-87.78237,42.70822],[-87.81967,42.61582],[-87.80048,42.49192],[-90.64093,42.5083],[-90.64563,42.5441],[-90.7092,42.63608],[-90.94921,42.68557],[-91.05373,42.73824],[-91.10057,42.88308],[-91.14556,42.90798],[-91.17517,43.04127],[-91.17825,43.12498],[-91.05792,43.25537],[-91.10724,43.31365],[-91.21023,43.37206],[-91.21771,43.50055],[-91.26875,43.61535],[-91.26244,43.79217],[-91.28414,43.84707],[-91.43738,43.99996],[-91.59207,44.03137],[-91.72155,44.13034],[-91.80806,44.15926],[-91.87516,44.20058],[-91.91863,44.32267],[-91.9636,44.36211],[-92.1153,44.41606],[-92.2339,44.44633],[-92.291,44.48546],[-92.31407,44.53801],[-92.34006,44.55527],[-92.54968,44.576],[-92.6321,44.64903],[-92.73726,44.71715],[-92.8024,44.74517],[-92.76546,44.8362],[-92.75065,44.9373],[-92.76861,45.00802],[-92.79121,45.0457],[-92.79287,45.07849],[-92.76062,45.27883],[-92.70479,45.32653],[-92.6641,45.39331],[-92.68023,45.46434],[-92.72623,45.53108],[-92.80343,45.5625],[-92.88375,45.57548],[-92.88399,45.65487],[-92.86919,45.71757],[-92.78462,45.7642],[-92.73404,45.86811],[-92.7077,45.8949],[-92.65613,45.92444],[-92.29403,46.07438],[-92.29219,46.66324],[-92.26995,46.65193],[-92.20709,46.65194],[-92.18759,46.67894],[-92.19657,46.7021],[-92.18909,46.71754],[-92.11659,46.74864],[-92.08949,46.74924],[-92.03399,46.70894],[-91.96189,46.68254],[-91.79013,46.69467],[-91.59068,46.75433],[-91.51108,46.75745],[-91.4118,46.78964],[-91.36882,46.79384],[-91.31481,46.82682],[-91.2567,46.83689],[-91.2268,46.86361],[-91.20752,46.86583],[-91.17829,46.84426],[-91.14016,46.8732],[-91.13495,46.85899],[-91.10549,46.85762],[-91.09092,46.88267],[-91.05299,46.88132],[-90.96842,46.94391],[-90.92181,46.93132],[-90.85587,46.96223],[-90.78561,46.92643],[-90.75103,46.88796],[-90.77017,46.8763],[-90.79894,46.82314],[-90.83561,46.78976],[-90.85653,46.78889],[-90.86233,46.76814],[-90.88502,46.75634],[-90.85383,46.69346],[-90.91128,46.66308],[-90.92449,46.62542],[-90.95154,46.60062],[-90.94193,46.58842],[-90.90557,46.58352],[-90.77019,46.63613],[-90.75529,46.64629],[-90.7565,46.66459],[-90.73726,46.69227],[-90.55814,46.58638],[-90.53796,46.58108],[-90.50591,46.58961],[-90.4376,46.56149],[-90.41814,46.56609],[-90.40043,46.54438],[-90.35768,46.54027],[-90.31389,46.5162],[-90.28454,46.51871],[-90.20457,46.479],[-90.17786,46.44055],[-90.16692,46.43985],[-90.11969,46.35975],[-90.12049,46.33685],[-89.12514,46.14453],[-88.81563,46.02232],[-88.76971,46.01897],[-88.73999,46.02731],[-88.67913,46.01354],[-88.66606,45.98819],[-88.61641,45.9877],[-88.53241,46.02121],[-88.50719,46.0183],[-88.48961,45.99138],[-88.42344,45.98193],[-88.37645,45.98946],[-88.29556,45.95146],[-88.25013,45.96315],[-88.23967,45.94898],[-88.17553,45.9449],[-88.1026,45.90989],[-88.07313,45.87195],[-88.13364,45.82313],[-88.13043,45.81002],[-88.07209,45.78026],[-87.99145,45.79539],[-87.86811,45.74948],[-87.78081,45.68035],[-87.82367,45.65982],[-87.8241,45.64714],[-87.79202,45.61676],[-87.79277,45.49997],[-87.81298,45.46416],[-87.86043,45.4235],[-87.88805,45.3547],[-87.85013,45.34043],[-87.83261,45.35225],[-87.75145,45.35175],[-87.69396,45.38989],[-87.65735,45.36875],[-87.64773,45.35072],[-87.74173,45.1982],[-87.73139,45.17099],[-87.65995,45.10751],[-87.59021,45.09526],[-87.58799,45.08527],[-87.61039,45.07562],[-87.62575,45.04516],[-87.6303,44.97686],[-87.76262,44.9658]]]]}},{"type":"Feature","properties":{"code":"56","nom":"Wyoming"},"geometry":{"type":"Polygon","coordinates":[[[-104.05508,43.93653],[-104.05325,41.00141],[-111.04672,40.99796],[-111.04417,43.18924],[-111.05689,44.86666],[-111.04427,45.00135],[-110.55243,44.99224],[-110.1101,45.00391],[-109.10344,45.0059],[-109.08301,44.99961],[-106.26359,44.99379],[-104.0577,44.99743],[-104.05508,43.93653]]]}},{"type":"Feature","properties":{"code":"01","nom":"Alabama"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-88.12466,30.28364],[-88.07586,30.24614],[-88.16657,30.24926],[-88.31332,30.23002],[-88.14114,30.25502],[-88.12466,30.28364]]],[[[-86.78363,34.99193],[-85.60516,34.98468],[-85.18413,32.87053],[-85.12342,32.77225],[-85.13714,32.74517],[-85.10479,32.64254],[-85.06958,32.58393],[-85.00132,32.51297],[-84.97943,32.41224],[-85.0071,32.32836],[-84.93868,32.30071],[-84.90905,32.26354],[-84.92165,32.23331],[-84.96483,32.19495],[-84.99593,32.18485],[-85.04787,32.14203],[-85.05021,32.0242],[-85.08213,31.94466],[-85.13293,31.88826],[-85.14183,31.83986],[-85.14133,31.78316],[-85.12523,31.76706],[-85.11893,31.73266],[-85.12553,31.69496],[-85.08703,31.64097],[-85.05747,31.61862],[-85.0413,31.54099],[-85.08765,31.30868],[-85.11187,31.25839],[-85.10752,31.18645],[-85.10021,31.16549],[-85.07663,31.15693],[-85.03562,31.10819],[-85.00237,31.00068],[-86.05621,30.99313],[-87.59893,30.99746],[-87.60135,30.93629],[-87.63494,30.86589],[-87.62414,30.84571],[-87.53261,30.74349],[-87.40712,30.6718],[-87.39422,30.6417],[-87.44992,30.51469],[-87.43058,30.4911],[-87.41918,30.4102],[-87.45138,30.3672],[-87.45238,30.3002],[-87.65689,30.24971],[-87.80056,30.22937],[-88.0284,30.22113],[-88.02399,30.23039],[-87.96685,30.23562],[-87.93604,30.26147],[-87.87934,30.23859],[-87.78775,30.25424],[-87.75526,30.27729],[-87.77276,30.3117],[-87.80927,30.3327],[-87.84513,30.37745],[-87.90891,30.41424],[-87.93336,30.48736],[-87.90171,30.55088],[-87.91253,30.61579],[-87.93672,30.65743],[-88.0084,30.68496],[-88.03459,30.65371],[-88.062,30.64489],[-88.054,30.61249],[-88.08549,30.56326],[-88.08279,30.52871],[-88.10377,30.5009],[-88.09687,30.47105],[-88.10727,30.37725],[-88.13617,30.32073],[-88.15578,30.32718],[-88.19154,30.317],[-88.19836,30.33882],[-88.18853,30.34812],[-88.20006,30.36238],[-88.26069,30.38238],[-88.31161,30.36891],[-88.33228,30.38844],[-88.36402,30.38801],[-88.39502,30.36942],[-88.47121,31.85139],[-88.27742,33.51244],[-88.09789,34.8922],[-88.12504,34.90223],[-88.20006,34.99563],[-88.18245,35.00771],[-86.78363,34.99193]]]]}},{"type":"Feature","properties":{"code":"02","nom":"Alaska"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-162.25503,54.97835],[-162.23567,54.9626],[-162.23296,54.89098],[-162.28294,54.84122],[-162.32109,54.82793],[-162.34931,54.83605],[-162.42524,54.88502],[-162.43547,54.92925],[-162.32681,54.98533],[-162.25503,54.97835]]],[[[-159.32436,54.92833],[-159.2787,54.94851],[-159.20567,54.92744],[-159.20323,54.91484],[-159.23607,54.87648],[-159.30586,54.8637],[-159.32787,54.88475],[-159.31206,54.9096],[-159.32436,54.92833]]],[[[-160.0179,55.15613],[-160.06147,55.20038],[-160.02526,55.20391],[-159.9835,55.18038],[-159.95435,55.18929],[-159.88917,55.28714],[-159.87969,55.29018],[-159.84862,55.26755],[-159.84462,55.24383],[-159.8553,55.23038],[-159.88652,55.22915],[-159.89533,55.21787],[-159.90536,55.16469],[-159.885,55.1456],[-159.86089,55.14934],[-159.86079,55.17709],[-159.81642,55.17805],[-159.83089,55.12647],[-159.86858,55.09489],[-159.90661,55.11254],[-159.94758,55.10522],[-159.95113,55.06664],[-160.05209,55.00578],[-160.11578,54.98508],[-160.18347,54.91568],[-160.20083,54.87528],[-160.22697,54.86407],[-160.25476,54.89597],[-160.25081,54.92982],[-160.22341,54.93912],[-160.13217,55.01374],[-160.07787,55.0376],[-160.09429,55.053],[-160.13342,55.04395],[-160.17437,55.05258],[-160.18726,55.11838],[-160.10986,55.16078],[-160.0596,55.13366],[-160.05564,55.11158],[-160.03033,55.11611],[-160.00517,55.12938],[-160.0179,55.15613]]],[[[-159.45531,55.06145],[-159.34528,55.0594],[-159.33177,54.9746],[-159.42661,54.94227],[-159.458,54.94573],[-159.45125,54.97528],[-159.41679,55.0003],[-159.41799,55.02201],[-159.45543,55.03581],[-159.45531,55.06145]]],[[[-159.53346,55.18476],[-159.4995,55.17399],[-159.4934,55.15505],[-159.49477,55.13605],[-159.5303,55.10619],[-159.53363,55.08399],[-159.48498,55.05405],[-159.50967,55.04141],[-159.53546,55.05873],[-159.57236,55.06012],[-159.6389,55.03874],[-159.65086,55.06579],[-159.63541,55.11665],[-159.58607,55.15765],[-159.5192,55.25369],[-159.50527,55.22227],[-159.53346,55.18476]]],[[[-161.71861,55.15417],[-161.6971,55.13713],[-161.65156,55.13092],[-161.57664,55.10383],[-161.5499,55.08256],[-161.55036,55.06573],[-161.59107,55.06082],[-161.60636,55.07026],[-161.60251,55.09827],[-161.63239,55.1049],[-161.67454,55.09591],[-161.73792,55.05405],[-161.76417,55.05951],[-161.81498,55.09864],[-161.81987,55.11397],[-161.85115,55.12638],[-161.88628,55.12693],[-161.90069,55.14214],[-161.88894,55.16072],[-161.82784,55.17847],[-161.71861,55.15417]]],[[[-160.50693,55.32773],[-160.53494,55.34354],[-160.56443,55.3325],[-160.58067,55.3072],[-160.56593,55.27314],[-160.52762,55.25637],[-160.48617,55.19362],[-160.52523,55.12987],[-160.65558,55.16026],[-160.67587,55.17362],[-160.69029,55.21047],[-160.75659,55.19514],[-160.7942,55.1344],[-160.82447,55.12015],[-160.80756,55.16816],[-160.84192,55.20444],[-160.84122,55.29396],[-160.85662,55.31849],[-160.79715,55.38152],[-160.7103,55.40308],[-160.66593,55.39903],[-160.64621,55.38314],[-160.65101,55.34365],[-160.61426,55.34802],[-160.56738,55.39008],[-160.51751,55.37938],[-160.51896,55.36155],[-160.42566,55.33888],[-160.34437,55.36296],[-160.32646,55.35319],[-160.30655,55.30327],[-160.34122,55.2518],[-160.3726,55.25991],[-160.39042,55.28658],[-160.4419,55.29826],[-160.48154,55.29178],[-160.52695,55.31904],[-160.50693,55.32773]]],[[[-160.21178,55.45586],[-160.13703,55.45071],[-160.14799,55.37758],[-160.20361,55.39174],[-160.32113,55.39368],[-160.34953,55.42048],[-160.32324,55.44463],[-160.26683,55.46279],[-160.21178,55.45586]]],[[[-165.79052,54.17176],[-165.74261,54.15835],[-165.7142,54.12082],[-165.66732,54.13212],[-165.65557,54.1191],[-165.67148,54.09624],[-165.76717,54.06594],[-165.81075,54.07476],[-165.87513,54.03642],[-165.89726,54.06063],[-165.93024,54.06655],[-166.04644,54.04419],[-166.11224,54.12253],[-166.08203,54.17518],[-165.9832,54.22118],[-165.86819,54.21488],[-165.86587,54.20001],[-165.88046,54.18365],[-165.86352,54.16616],[-165.83242,54.16133],[-165.79715,54.18325],[-165.79052,54.17176]]],[[[-165.27105,54.09566],[-165.23436,54.06542],[-165.24583,54.05611],[-165.36577,54.07332],[-165.45818,54.06631],[-165.48337,54.07504],[-165.27105,54.09566]]],[[[-164.9762,54.13459],[-164.93777,54.13668],[-164.92131,54.12857],[-164.92146,54.11108],[-164.96058,54.07603],[-165.04432,54.06663],[-165.20341,54.08775],[-165.22087,54.10157],[-165.19875,54.11647],[-165.14098,54.13108],[-165.02307,54.12192],[-165.00791,54.13493],[-164.9762,54.13459]]],[[[-165.52347,54.29989],[-165.47845,54.29533],[-165.47775,54.28371],[-165.55758,54.25414],[-165.55325,54.2396],[-165.51278,54.21293],[-165.40538,54.21284],[-165.38372,54.19673],[-165.39998,54.17774],[-165.47619,54.1827],[-165.54922,54.1122],[-165.57565,54.10862],[-165.62973,54.13256],[-165.63708,54.19944],[-165.5798,54.22957],[-165.61208,54.24654],[-165.62561,54.23376],[-165.66938,54.22904],[-165.68411,54.24991],[-165.63638,54.29757],[-165.58651,54.28436],[-165.52347,54.29989]]],[[[-162.80186,54.48944],[-162.58888,54.45006],[-162.55667,54.42462],[-162.55162,54.39222],[-162.61189,54.36808],[-162.7228,54.40034],[-162.75947,54.37112],[-162.78124,54.37508],[-162.86005,54.42545],[-162.82762,54.49086],[-162.80186,54.48944]]],[[[-173.11691,60.516],[-173.09809,60.53337],[-173.09809,60.57399],[-173.04185,60.6115],[-172.99966,60.6115],[-172.97153,60.60525],[-172.91527,60.51462],[-172.89535,60.49975],[-172.70647,60.42518],[-172.35262,60.38144],[-172.33305,60.36436],[-172.25482,60.33408],[-172.25482,60.32647],[-172.29129,60.32119],[-172.49153,60.33487],[-172.54758,60.31709],[-172.61298,60.31931],[-172.62232,60.33042],[-172.75779,60.37488],[-172.95148,60.47865],[-173.119,60.50007],[-173.11691,60.516]]],[[[-165.72139,60.16962],[-165.71912,60.15352],[-165.67537,60.14936],[-165.66786,60.11468],[-165.68458,60.05524],[-165.64932,59.99184],[-165.58887,59.96601],[-165.53937,59.96518],[-165.53448,59.95128],[-165.55041,59.92001],[-165.57582,59.90467],[-165.69598,59.89351],[-165.75185,59.89995],[-166.0102,59.84706],[-166.07246,59.80546],[-166.03228,59.77373],[-166.03695,59.75786],[-166.06285,59.74859],[-166.15707,59.74889],[-166.20329,59.79168],[-166.38199,59.84909],[-166.43975,59.85782],[-166.61685,59.85071],[-166.6782,59.88125],[-166.76418,59.89206],[-166.86653,59.94954],[-166.99575,59.9935],[-167.12487,59.9917],[-167.24763,60.05886],[-167.3427,60.0724],[-167.33386,60.09407],[-167.34787,60.13114],[-167.42305,60.19507],[-167.42149,60.20543],[-167.31262,60.23845],[-167.10598,60.23289],[-166.93797,60.20587],[-166.84744,60.21359],[-166.81248,60.22778],[-166.80347,60.2428],[-166.83288,60.27545],[-166.76252,60.30984],[-166.66211,60.32299],[-166.57831,60.32185],[-166.56208,60.35902],[-166.49354,60.39239],[-166.3666,60.35823],[-166.31065,60.37761],[-166.17491,60.401],[-166.1632,60.43264],[-166.12438,60.41425],[-166.13493,60.40013],[-166.08479,60.32529],[-165.92796,60.32159],[-165.91683,60.338],[-165.88346,60.3439],[-165.71451,60.3105],[-165.68614,60.26781],[-165.69834,60.21068],[-165.72139,60.16962]]],[[[-134.71399,58.22075],[-134.70373,58.16679],[-134.68952,58.15883],[-134.63143,58.1622],[-134.55924,58.19512],[-134.51964,58.17577],[-134.44666,58.17358],[-134.32736,58.14388],[-134.2597,58.15771],[-134.17747,58.15964],[-134.16633,58.13256],[-134.19272,58.10768],[-134.18937,58.08344],[-134.09865,58.01875],[-134.08757,57.99647],[-134.10112,57.98407],[-133.99995,57.91481],[-133.96379,57.85463],[-133.90487,57.80741],[-133.89685,57.68552],[-133.82167,57.63389],[-133.80829,57.6096],[-133.806,57.58346],[-133.8176,57.56835],[-133.84084,57.57686],[-133.86311,57.6237],[-133.99496,57.71982],[-134.03082,57.81865],[-134.09863,57.85055],[-134.13215,57.89619],[-134.17661,57.90973],[-134.20235,57.90633],[-134.20687,57.8959],[-134.10541,57.79597],[-134.1009,57.77678],[-134.14634,57.76026],[-134.1277,57.73922],[-134.02017,57.65673],[-133.93598,57.61441],[-133.94342,57.56155],[-133.85737,57.46396],[-133.92754,57.46957],[-133.86728,57.36206],[-133.96849,57.30394],[-134.03456,57.32764],[-134.09489,57.3264],[-134.0805,57.29768],[-134.11032,57.24995],[-134.15539,57.208],[-134.29276,57.13705],[-134.37836,57.11502],[-134.3708,57.09992],[-134.38605,57.08739],[-134.48117,57.04601],[-134.48429,57.03648],[-134.56569,57.02374],[-134.60141,57.03381],[-134.63457,57.10986],[-134.64677,57.22633],[-134.60503,57.273],[-134.51728,57.31457],[-134.54339,57.33741],[-134.57411,57.34117],[-134.57851,57.40029],[-134.52759,57.40533],[-134.52787,57.38987],[-134.48602,57.37249],[-134.46403,57.39218],[-134.60756,57.51304],[-134.59598,57.53411],[-134.61118,57.56314],[-134.67444,57.61441],[-134.70052,57.69597],[-134.7318,57.72192],[-134.72879,57.75664],[-134.70902,57.7805],[-134.70587,57.82893],[-134.74611,57.89853],[-134.75883,57.98021],[-134.7968,58.05886],[-134.78493,58.09679],[-134.85722,58.17629],[-134.88586,58.18403],[-134.91486,58.21493],[-134.94833,58.28132],[-134.96919,58.36754],[-134.9559,58.4103],[-134.80612,58.32128],[-134.80239,58.30107],[-134.77935,58.28128],[-134.72986,58.27351],[-134.71399,58.22075]]],[[[-131.24602,54.98956],[-131.25742,54.97901],[-131.24277,54.92964],[-131.19541,54.91825],[-131.26605,54.85937],[-131.35323,54.85901],[-131.4915,54.93039],[-131.48268,54.95266],[-131.40974,54.97115],[-131.26608,54.99881],[-131.24602,54.98956]]],[[[-131.7599,55.38184],[-131.66674,55.32749],[-131.64724,55.30614],[-131.68864,55.28211],[-131.69449,55.22374],[-131.71847,55.2001],[-131.74833,55.12859],[-131.82959,55.19192],[-131.86216,55.28928],[-131.87057,55.36455],[-131.85233,55.42378],[-131.8117,55.41405],[-131.7599,55.38184]]],[[[-157.02607,56.55976],[-156.9729,56.5365],[-157.11319,56.55266],[-157.16878,56.53021],[-157.3289,56.52815],[-157.29863,56.56005],[-157.2501,56.58214],[-157.09115,56.58113],[-157.02607,56.55976]]],[[[-169.2676,63.34399],[-168.99924,63.34125],[-168.68515,63.29643],[-168.78324,63.18413],[-168.85875,63.14696],[-168.98302,63.16967],[-169.10581,63.1788],[-169.26204,63.16994],[-169.37567,63.15127],[-169.56113,63.05518],[-169.57697,63.02703],[-169.56802,62.97688],[-169.63831,62.93753],[-169.75725,62.96009],[-169.73494,62.97662],[-169.78847,63.04301],[-169.88123,63.10585],[-170.1013,63.1793],[-170.15407,63.1864],[-170.19369,63.17743],[-170.26303,63.17915],[-170.28139,63.18682],[-170.27772,63.20882],[-170.30363,63.23869],[-170.36481,63.2856],[-170.55895,63.35499],[-170.86541,63.41423],[-171.10085,63.42342],[-171.26925,63.38539],[-171.28716,63.37664],[-171.29032,63.35538],[-171.33309,63.33539],[-171.46445,63.30691],[-171.56226,63.33459],[-171.73932,63.36611],[-171.81826,63.42945],[-171.84998,63.48504],[-171.83368,63.58007],[-171.74398,63.6549],[-171.75434,63.71896],[-171.73321,63.72033],[-171.72575,63.73474],[-171.7434,63.78297],[-171.6733,63.78807],[-171.63899,63.75923],[-171.65291,63.73922],[-171.64992,63.70254],[-171.60944,63.67983],[-171.38168,63.63065],[-170.95082,63.57013],[-170.89758,63.57468],[-170.69816,63.64678],[-170.48819,63.69672],[-170.37387,63.68732],[-170.31584,63.69192],[-170.28199,63.68502],[-170.17641,63.62549],[-170.09583,63.6127],[-170.04092,63.52341],[-170.04711,63.49014],[-170.02695,63.4807],[-169.85708,63.44197],[-169.64317,63.4278],[-169.52052,63.36594],[-169.2676,63.34399]]],[[[-162.61462,63.62183],[-162.54139,63.63573],[-162.49818,63.62207],[-162.45193,63.62127],[-162.42421,63.63621],[-162.4012,63.63437],[-162.37424,63.62642],[-162.34189,63.59406],[-162.34518,63.55179],[-162.37799,63.54381],[-162.61495,63.5406],[-162.68097,63.55686],[-162.70756,63.57761],[-162.61462,63.62183]]],[[[-168.21012,64.99896],[-168.16909,65.02407],[-168.12911,65.03457],[-168.07611,65.04329],[-168.00487,65.0389],[-167.95308,65.02348],[-167.9243,65.00273],[-167.91383,64.96994],[-167.97615,64.92287],[-168.03703,64.90928],[-168.09088,64.91111],[-168.18704,64.9349],[-168.21011,64.95137],[-168.21012,64.99896]]],[[[-168.95277,65.75891],[-168.90223,65.76967],[-168.89322,65.7447],[-168.93122,65.73894],[-168.95277,65.75891]]],[[[-166.03187,66.26464],[-166.01992,66.25275],[-166.09697,66.23783],[-166.13839,66.21009],[-166.17847,66.22802],[-166.12965,66.25281],[-166.03187,66.26464]]],[[[-134.28331,55.92518],[-134.23061,55.90563],[-134.15222,55.92092],[-134.11806,55.91464],[-134.13054,55.89751],[-134.20825,55.87671],[-134.28245,55.82867],[-134.34442,55.8432],[-134.34815,55.89282],[-134.33606,55.92661],[-134.28331,55.92518]]],[[[-134.12151,56.06985],[-134.10722,56.04816],[-134.13091,56.0001],[-134.19086,56.05654],[-134.23045,56.06834],[-134.26222,56.13322],[-134.23826,56.14086],[-134.22794,56.16284],[-134.25748,56.22141],[-134.24631,56.26777],[-134.29829,56.29199],[-134.29235,56.35264],[-134.19392,56.40991],[-134.19639,56.4398],[-134.24663,56.45714],[-134.22281,56.4754],[-134.14614,56.41107],[-134.06747,56.39099],[-134.04623,56.40228],[-134.04094,56.42153],[-134.0896,56.47258],[-134.13389,56.48783],[-134.25239,56.56086],[-134.28109,56.58555],[-134.27674,56.62029],[-134.30987,56.65051],[-134.36903,56.67802],[-134.40141,56.72542],[-134.41979,56.83839],[-134.37697,56.88005],[-134.31687,56.90909],[-134.28682,56.90653],[-134.17167,56.85122],[-134.14716,56.85936],[-134.15094,56.88496],[-134.22,56.90508],[-134.27311,56.93382],[-134.24933,56.93737],[-134.15811,56.91503],[-134.13624,56.92884],[-134.14139,56.95089],[-134.08329,56.93158],[-133.97226,56.82693],[-133.92565,56.75891],[-133.9418,56.73349],[-133.88078,56.7214],[-133.86933,56.73408],[-133.86506,56.77324],[-133.89001,56.79247],[-133.89081,56.80798],[-133.86147,56.80884],[-133.74813,56.77392],[-133.744,56.74977],[-133.76614,56.72889],[-133.76278,56.68718],[-133.75965,56.67591],[-133.74567,56.67403],[-133.71333,56.5983],[-133.73162,56.5723],[-133.84821,56.57306],[-133.89575,56.51122],[-133.89859,56.48988],[-133.86863,56.47092],[-133.83924,56.43202],[-133.89304,56.42736],[-133.93351,56.37543],[-133.85031,56.34742],[-133.83467,56.32238],[-133.91299,56.20835],[-133.95747,56.20258],[-133.93735,56.16613],[-133.95641,56.09548],[-133.98936,56.08135],[-134.02103,56.08875],[-134.03869,56.10581],[-134.0245,56.14816],[-134.03096,56.19321],[-134.0585,56.22721],[-134.08732,56.22542],[-134.1051,56.18094],[-134.16197,56.17015],[-134.19037,56.15257],[-134.11076,56.14105],[-134.10924,56.07873],[-134.12151,56.06985]]],[[[-132.54646,56.60656],[-132.54128,56.58457],[-132.79663,56.49647],[-133.04173,56.51836],[-133.07183,56.55348],[-133.0755,56.57868],[-133.02509,56.60505],[-133.11033,56.66973],[-133.18436,56.70653],[-133.24469,56.79265],[-133.27735,56.81643],[-133.32539,56.79186],[-133.33431,56.7734],[-133.31986,56.73769],[-133.30375,56.72988],[-133.27296,56.73365],[-133.25069,56.75143],[-133.21968,56.70689],[-133.23368,56.64929],[-133.15144,56.63767],[-133.10632,56.61839],[-133.08921,56.52392],[-133.13831,56.53292],[-133.14248,56.5197],[-133.12473,56.51144],[-133.12224,56.49202],[-133.161,56.46026],[-133.20358,56.44766],[-133.3485,56.46957],[-133.37189,56.49369],[-133.4018,56.49636],[-133.4178,56.49415],[-133.46063,56.45412],[-133.51268,56.43702],[-133.65547,56.44228],[-133.67584,56.52271],[-133.66263,56.59892],[-133.70582,56.65839],[-133.70958,56.68342],[-133.68099,56.79521],[-133.69,56.83942],[-133.76532,56.80749],[-133.86904,56.84594],[-133.91636,56.91445],[-133.90363,56.92727],[-133.92145,56.96151],[-134.04922,57.0292],[-134.03398,57.06328],[-133.88796,57.09774],[-133.61391,57.05798],[-133.34422,57.00183],[-133.30832,57.01476],[-133.10461,57.0057],[-132.98137,56.92738],[-132.94708,56.87096],[-132.93526,56.82294],[-132.90321,56.80361],[-132.82056,56.79379],[-132.76296,56.75323],[-132.74321,56.71372],[-132.62279,56.66871],[-132.6282,56.64564],[-132.59518,56.61331],[-132.54646,56.60656]]],[[[-131.56956,55.28411],[-131.48225,55.25411],[-131.4627,55.22344],[-131.39769,55.21092],[-131.34141,55.16566],[-131.36232,55.1559],[-131.35631,55.04121],[-131.38857,55.01222],[-131.48499,55.01045],[-131.53214,55.03795],[-131.60566,55.0044],[-131.64103,55.02658],[-131.64628,55.03558],[-131.62074,55.04926],[-131.58939,55.08894],[-131.6053,55.10744],[-131.59498,55.1255],[-131.5586,55.12551],[-131.54809,55.14314],[-131.59845,55.17957],[-131.60738,55.24044],[-131.58907,55.27395],[-131.56956,55.28411]]],[[[-133.34485,55.56933],[-133.28532,55.53531],[-133.28985,55.50187],[-133.35899,55.45383],[-133.39651,55.47317],[-133.42652,55.4667],[-133.47405,55.43715],[-133.4653,55.42337],[-133.41665,55.42215],[-133.41938,55.38611],[-133.49703,55.36816],[-133.57681,55.3248],[-133.60907,55.24149],[-133.62346,55.24257],[-133.69094,55.3087],[-133.68916,55.32028],[-133.63301,55.3613],[-133.62242,55.39647],[-133.63629,55.42842],[-133.73908,55.47232],[-133.78905,55.45789],[-133.75913,55.53737],[-133.73303,55.55876],[-133.61562,55.55078],[-133.58433,55.53971],[-133.59016,55.50724],[-133.63298,55.49166],[-133.6442,55.47082],[-133.63867,55.4589],[-133.61837,55.45705],[-133.54409,55.49178],[-133.52912,55.5277],[-133.48096,55.51274],[-133.44367,55.51864],[-133.45458,55.53242],[-133.4361,55.56087],[-133.4135,55.57038],[-133.34485,55.56933]]],[[[-133.62492,56.34391],[-133.58212,56.35251],[-133.41837,56.33213],[-133.23535,56.32428],[-133.19701,56.33302],[-133.16321,56.31744],[-133.09498,56.25058],[-133.07823,56.2468],[-133.04098,56.18454],[-133.05999,56.15076],[-133.05552,56.12526],[-132.9273,56.03446],[-132.89767,56.02017],[-132.83759,56.02433],[-132.61846,55.91148],[-132.59208,55.87715],[-132.4707,55.78216],[-132.46253,55.67385],[-132.38251,55.66534],[-132.35856,55.64876],[-132.32928,55.57894],[-132.30112,55.55096],[-132.18877,55.50844],[-132.14606,55.47035],[-132.14294,55.45794],[-132.17861,55.45283],[-132.24733,55.49295],[-132.32573,55.51539],[-132.3421,55.50467],[-132.28444,55.44217],[-132.47969,55.42092],[-132.39078,55.40174],[-132.2735,55.41919],[-132.25806,55.41614],[-132.22596,55.37492],[-132.16686,55.36304],[-132.1264,55.28842],[-132.09853,55.28056],[-132.10953,55.26024],[-132.14274,55.23821],[-132.21491,55.2457],[-132.22996,55.23808],[-132.20743,55.21827],[-132.10438,55.2009],[-132.0751,55.22239],[-132.07592,55.24628],[-132.03712,55.27514],[-131.99591,55.25905],[-131.9774,55.18095],[-131.98881,55.16546],[-132.03901,55.14407],[-132.03898,55.12501],[-132.01693,55.12097],[-132.039,55.08696],[-132.09402,55.03945],[-132.19761,55.00516],[-132.19258,54.98965],[-132.14326,54.98463],[-132.03922,55.03677],[-131.98459,55.02798],[-131.98289,54.85307],[-131.9659,54.83554],[-131.95791,54.79124],[-132.02975,54.70119],[-132.16518,54.69405],[-132.25609,54.73462],[-132.2796,54.72823],[-132.2818,54.71529],[-132.30794,54.71871],[-132.351,54.81818],[-132.31415,54.83512],[-132.30921,54.84753],[-132.38749,54.91366],[-132.48458,54.8993],[-132.60979,54.96573],[-132.6099,54.99152],[-132.575,54.99832],[-132.5418,55.09776],[-132.5505,55.11425],[-132.59457,55.10538],[-132.63331,55.05495],[-132.62452,55.11442],[-132.58113,55.16608],[-132.60522,55.19406],[-132.62012,55.19962],[-132.63793,55.18608],[-132.63576,55.15251],[-132.73565,55.13422],[-132.68401,55.0456],[-132.69292,55.02506],[-132.74885,54.99601],[-132.91641,55.04447],[-132.93117,55.07415],[-132.90936,55.08128],[-132.86983,55.1241],[-132.89428,55.16937],[-132.93545,55.2099],[-132.98217,55.21588],[-133.00816,55.2057],[-133.04075,55.23297],[-133.04394,55.24857],[-133.10471,55.2638],[-133.11929,55.2514],[-133.07338,55.18449],[-133.01227,55.12806],[-132.99086,55.07911],[-132.9904,55.06673],[-133.01974,55.04837],[-133.01418,55.0355],[-132.95951,55.02105],[-132.90971,54.92359],[-132.91465,54.91401],[-132.82834,54.86875],[-132.80453,54.87094],[-132.81739,54.92364],[-132.80078,54.93378],[-132.73093,54.93948],[-132.65,54.90439],[-132.62861,54.88332],[-132.61485,54.77717],[-132.63903,54.75325],[-132.68116,54.7737],[-132.70115,54.81101],[-132.72354,54.82513],[-132.75978,54.817],[-132.67587,54.67281],[-132.77573,54.67484],[-132.86635,54.70039],[-132.8656,54.72891],[-132.89155,54.76819],[-132.95025,54.78833],[-133.12394,54.94006],[-133.15976,54.95876],[-133.16893,55.03089],[-133.21042,55.04027],[-133.2397,55.09242],[-133.2181,55.10104],[-133.1287,55.10143],[-133.15478,55.12811],[-133.21509,55.13688],[-133.23691,55.18333],[-133.18252,55.20196],[-133.22379,55.22932],[-133.25448,55.23115],[-133.34126,55.2057],[-133.37661,55.22829],[-133.42287,55.21066],[-133.45378,55.2185],[-133.47287,55.26787],[-133.45282,55.31998],[-133.43635,55.33016],[-133.33236,55.34536],[-133.2924,55.29138],[-133.24434,55.29187],[-133.23357,55.30882],[-133.27927,55.33326],[-133.26907,55.35934],[-133.22684,55.38185],[-133.18328,55.37939],[-133.1043,55.42691],[-133.13813,55.45837],[-133.1577,55.49778],[-133.13329,55.50251],[-133.13241,55.51358],[-133.17676,55.58672],[-133.26304,55.56879],[-133.43818,55.64386],[-133.40843,55.66792],[-133.39449,55.66688],[-133.38643,55.69337],[-133.41655,55.73965],[-133.49143,55.76408],[-133.51263,55.7559],[-133.49088,55.72658],[-133.49244,55.70652],[-133.52739,55.69511],[-133.5545,55.69835],[-133.64332,55.72904],[-133.69455,55.7806],[-133.62753,55.83163],[-133.56197,55.83554],[-133.42206,55.78882],[-133.34792,55.80394],[-133.32366,55.81863],[-133.34657,55.87581],[-133.4188,55.88328],[-133.47104,55.94738],[-133.49505,56.01709],[-133.54104,55.97732],[-133.63812,55.92098],[-133.6999,55.91221],[-133.79993,55.92535],[-133.82624,55.94875],[-133.83437,55.96358],[-133.77785,55.98288],[-133.69377,56.07056],[-133.5488,56.14284],[-133.54283,56.16079],[-133.55345,56.16902],[-133.63928,56.19881],[-133.66422,56.3105],[-133.65642,56.32691],[-133.64318,56.32446],[-133.62492,56.34391]]],[[[-133.84613,55.90462],[-133.8403,55.88677],[-133.86699,55.84589],[-133.90318,55.8481],[-133.94562,55.89622],[-133.9403,55.91751],[-133.89185,55.93668],[-133.85429,55.93158],[-133.84613,55.90462]]],[[[-135.58796,57.89732],[-135.59677,57.8897],[-135.51888,57.85738],[-135.5035,57.84086],[-135.37776,57.80221],[-135.36422,57.77535],[-135.32889,57.74842],[-135.29156,57.73747],[-135.20146,57.72817],[-135.09842,57.7549],[-135.02484,57.74299],[-134.97812,57.76313],[-134.92973,57.7592],[-134.91817,57.68227],[-134.85639,57.59897],[-134.82489,57.50007],[-134.83712,57.48276],[-134.90268,57.45935],[-135.02515,57.45432],[-135.08434,57.46467],[-135.13406,57.49768],[-135.24285,57.5463],[-135.57161,57.6744],[-135.6507,57.65252],[-135.68495,57.67751],[-135.71232,57.67265],[-135.69742,57.64971],[-135.6609,57.6292],[-135.59278,57.60247],[-135.54614,57.61383],[-135.51101,57.59591],[-135.58748,57.56883],[-135.57822,57.51644],[-135.54963,57.48202],[-135.5539,57.45487],[-135.61045,57.44223],[-135.62656,57.40996],[-135.66445,57.40723],[-135.66942,57.3893],[-135.7114,57.36776],[-135.84381,57.3909],[-135.89213,57.40805],[-135.89698,57.44072],[-135.94377,57.45878],[-136.01453,57.50623],[-136.03046,57.52154],[-136.00172,57.5445],[-136.06175,57.59207],[-136.13061,57.62461],[-136.1879,57.62573],[-136.20788,57.63811],[-136.31463,57.7587],[-136.30943,57.77947],[-136.36505,57.82856],[-136.45883,57.8539],[-136.48426,57.89646],[-136.57205,57.91847],[-136.55625,58.07702],[-136.53871,58.09348],[-136.50012,58.10479],[-136.46927,58.09687],[-136.42045,58.13186],[-136.37534,58.20871],[-136.38711,58.25241],[-136.37733,58.26833],[-136.28777,58.26737],[-136.27748,58.20886],[-136.23525,58.15442],[-136.19016,58.1613],[-136.20364,58.17442],[-136.16211,58.21872],[-136.03616,58.21921],[-136.03303,58.20546],[-135.97639,58.20203],[-135.91418,58.24407],[-135.82356,58.28298],[-135.78338,58.28671],[-135.7351,58.24021],[-135.5892,58.21368],[-135.49791,58.16888],[-135.54071,58.10175],[-135.65137,58.03648],[-135.63849,57.99451],[-135.62158,57.98462],[-135.58175,57.99757],[-135.56431,58.01501],[-135.56343,58.04349],[-135.49674,58.08621],[-135.45144,58.13435],[-135.41178,58.14547],[-135.2758,58.09702],[-135.1089,58.08827],[-135.08483,58.08087],[-135.0707,58.06124],[-134.96772,58.04762],[-134.935,58.02164],[-134.91285,57.97929],[-134.9264,57.92192],[-135.00495,57.88434],[-135.14067,57.92611],[-135.17371,57.9194],[-135.14672,57.89166],[-135.06572,57.86945],[-134.95455,57.81578],[-134.94944,57.80503],[-135.02337,57.78054],[-135.22516,57.77778],[-135.31378,57.80574],[-135.41852,57.86051],[-135.5528,57.90271],[-135.58796,57.89732]]],[[[-134.66659,56.16995],[-134.70501,56.17572],[-134.80616,56.23553],[-134.83941,56.3094],[-134.9457,56.38971],[-135.02378,56.49998],[-135.05824,56.52945],[-135.05676,56.57061],[-135.04505,56.58339],[-135.00525,56.60225],[-134.98588,56.59584],[-134.96716,56.60303],[-134.97939,56.62768],[-135.02975,56.62892],[-135.06569,56.60785],[-135.11871,56.59773],[-135.14776,56.65193],[-135.17583,56.67788],[-135.27491,56.70163],[-135.30508,56.72638],[-135.31808,56.74869],[-135.28161,56.75853],[-135.28088,56.76836],[-135.31016,56.77809],[-135.35218,56.7712],[-135.39868,56.7792],[-135.40854,56.82601],[-135.3689,56.89259],[-135.33236,56.91395],[-135.37973,56.95304],[-135.38338,56.98154],[-135.36023,57.00223],[-135.32949,57.00451],[-135.31278,57.04498],[-135.3741,57.04539],[-135.36571,57.06606],[-135.40172,57.09865],[-135.40529,57.13815],[-135.42275,57.16772],[-135.37244,57.19806],[-135.37202,57.228],[-135.35871,57.24378],[-135.47768,57.25682],[-135.55257,57.23319],[-135.6023,57.28571],[-135.60178,57.30077],[-135.67469,57.33675],[-135.69556,57.35746],[-135.6877,57.36748],[-135.63956,57.37188],[-135.62802,57.38339],[-135.63365,57.3991],[-135.55455,57.42664],[-135.56223,57.44272],[-135.53422,57.45025],[-135.53207,57.48112],[-135.54879,57.50898],[-135.52604,57.5097],[-135.4434,57.55688],[-135.41921,57.56416],[-135.35575,57.55357],[-135.29449,57.51084],[-135.30846,57.4952],[-135.29778,57.48372],[-135.20912,57.48875],[-135.16102,57.46071],[-135.16806,57.45421],[-135.14595,57.43905],[-135.06505,57.41897],[-134.92652,57.42227],[-134.84948,57.40967],[-134.80635,57.34189],[-134.81277,57.29977],[-134.82936,57.2941],[-134.88478,57.33],[-134.95127,57.32866],[-134.95501,57.30943],[-134.87954,57.28818],[-134.84177,57.24859],[-134.73788,57.00993],[-134.74014,56.94848],[-134.69574,56.90079],[-134.6991,56.85086],[-134.67424,56.82518],[-134.634,56.72872],[-134.61596,56.63729],[-134.62694,56.55387],[-134.63973,56.53883],[-134.67105,56.5412],[-134.64531,56.47221],[-134.63651,56.40563],[-134.63467,56.26583],[-134.66659,56.16995]]],[[[-135.70346,57.32204],[-135.68823,57.27614],[-135.65727,57.26203],[-135.65636,57.24304],[-135.62135,57.22369],[-135.59692,57.1612],[-135.60206,57.14916],[-135.56571,57.14731],[-135.57469,57.09434],[-135.65054,57.01514],[-135.75368,57.00826],[-135.82191,56.98821],[-135.85413,56.99504],[-135.83489,57.09139],[-135.756,57.12123],[-135.7354,57.1554],[-135.76224,57.17334],[-135.80082,57.17365],[-135.82439,57.19286],[-135.82883,57.30198],[-135.86056,57.33085],[-135.76147,57.34263],[-135.70346,57.32204]]],[[[-147.5628,60.57982],[-147.55171,60.55961],[-147.56578,60.53471],[-147.60776,60.50692],[-147.62384,60.46588],[-147.61997,60.43682],[-147.69077,60.40505],[-147.68189,60.38817],[-147.63008,60.38955],[-147.61891,60.36885],[-147.7036,60.28559],[-147.70473,60.22787],[-147.76068,60.1564],[-147.84568,60.19543],[-147.82896,60.20744],[-147.95623,60.22867],[-147.79282,60.47619],[-147.77827,60.48401],[-147.76583,60.47651],[-147.77933,60.45708],[-147.75086,60.44098],[-147.71531,60.44792],[-147.72664,60.47222],[-147.72182,60.50863],[-147.61384,60.56591],[-147.5628,60.57982]]],[[[-147.44447,60.69965],[-147.38478,60.71002],[-147.30292,60.66067],[-147.34449,60.62854],[-147.48604,60.61935],[-147.5016,60.65477],[-147.48648,60.68658],[-147.44447,60.69965]]],[[[-147.95204,60.74188],[-147.90602,60.73551],[-147.84818,60.69812],[-147.86807,60.67083],[-147.93293,60.65571],[-147.97068,60.6738],[-148.02026,60.72495],[-147.96542,60.752],[-147.95204,60.74188]]],[[[-147.13132,60.91293],[-147.07179,60.89383],[-147.08964,60.87469],[-147.1418,60.85399],[-147.21775,60.86974],[-147.32564,60.87715],[-147.2263,60.91042],[-147.1934,60.90295],[-147.13132,60.91293]]],[[[-147.2177,60.2935],[-147.18328,60.32068],[-147.21531,60.32711],[-147.21468,60.34379],[-147.11267,60.38098],[-147.0919,60.37497],[-147.10401,60.35673],[-147.09548,60.34196],[-147.00384,60.34031],[-147.01531,60.32255],[-147.10312,60.28019],[-147.08046,60.26535],[-146.96263,60.31191],[-146.91177,60.30981],[-146.91138,60.29759],[-147.00207,60.23245],[-147.20242,60.15113],[-147.36542,60.04287],[-147.38869,60.0043],[-147.49978,59.95107],[-147.49963,59.9263],[-147.44368,59.91354],[-147.45236,59.88052],[-147.46692,59.8701],[-147.53304,59.8524],[-147.57128,59.86871],[-147.62198,59.86648],[-147.65174,59.85122],[-147.67714,59.82137],[-147.74542,59.82184],[-147.8741,59.78326],[-147.92491,59.79971],[-147.89541,59.86915],[-147.85669,59.88666],[-147.80827,59.88815],[-147.79721,59.90948],[-147.80903,59.92348],[-147.80425,59.9365],[-147.73963,59.96801],[-147.68628,59.96448],[-147.65957,59.98006],[-147.64704,60.00565],[-147.406,60.11263],[-147.31972,60.19058],[-147.32284,60.21478],[-147.24979,60.22859],[-147.21911,60.25351],[-147.20615,60.26951],[-147.2177,60.2935]]],[[[-179.06918,51.26287],[-179.09762,51.22613],[-179.12686,51.21986],[-179.14734,51.27678],[-179.1135,51.3008],[-179.09466,51.30123],[-179.06918,51.26287]]],[[[-178.95434,51.33925],[-178.99068,51.31165],[-178.99209,51.38131],[-178.96432,51.40249],[-178.92687,51.38364],[-178.90888,51.34058],[-178.95434,51.33925]]],[[[178.78582,51.63343],[178.90391,51.61491],[178.91914,51.60555],[178.92083,51.58614],[179.0029,51.55249],[179.0768,51.49852],[179.14366,51.46944],[179.19108,51.46294],[179.23625,51.40961],[179.38622,51.4044],[179.46758,51.37163],[179.39947,51.35943],[179.36679,51.37184],[179.26162,51.35769],[179.2065,51.39328],[179.06035,51.45488],[178.95163,51.54196],[178.84363,51.57864],[178.78506,51.57187],[178.70605,51.59318],[178.63402,51.62398],[178.62554,51.6373],[178.66401,51.66193],[178.6899,51.64442],[178.73802,51.63273],[178.78582,51.63343]]],[[[-176.76248,51.86788],[-176.81043,51.92709],[-176.78956,51.95721],[-176.73655,51.96981],[-176.63051,51.97035],[-176.6036,51.99706],[-176.57997,52.00324],[-176.5544,51.99066],[-176.54487,51.92724],[-176.55838,51.90872],[-176.56968,51.95132],[-176.57893,51.95133],[-176.62001,51.89563],[-176.62546,51.85982],[-176.57638,51.84228],[-176.5176,51.83956],[-176.39806,51.86784],[-176.29073,51.87214],[-176.26649,51.81772],[-176.26824,51.7855],[-176.28992,51.74168],[-176.34376,51.73152],[-176.47413,51.74721],[-176.50966,51.76333],[-176.58293,51.69182],[-176.71306,51.68333],[-176.75182,51.63502],[-176.80167,51.61349],[-176.82625,51.64093],[-176.81444,51.66025],[-176.83751,51.68274],[-176.86306,51.68492],[-176.93095,51.59247],[-176.98433,51.60213],[-176.98449,51.65741],[-176.93087,51.6972],[-176.89697,51.70042],[-176.871,51.72941],[-176.88202,51.76663],[-176.90503,51.77153],[-176.91807,51.788],[-176.91102,51.8076],[-176.8562,51.81837],[-176.79016,51.81722],[-176.76248,51.86788]]],[[[-177.80065,51.77829],[-177.79631,51.77083],[-177.84227,51.73248],[-177.827,51.70597],[-177.84141,51.68956],[-177.86796,51.67937],[-177.89942,51.69256],[-177.91881,51.67439],[-177.92902,51.65052],[-177.90308,51.6065],[-177.90919,51.59667],[-177.94496,51.61154],[-177.96385,51.65023],[-178.06982,51.67068],[-178.0863,51.66362],[-178.11786,51.67783],[-178.10429,51.70154],[-178.02182,51.70691],[-177.95644,51.72286],[-177.94665,51.75268],[-177.957,51.77254],[-178.03934,51.77893],[-178.08607,51.80805],[-178.21512,51.8578],[-178.22782,51.87353],[-178.19709,51.90546],[-178.14533,51.91722],[-178.00234,51.90997],[-177.96372,51.91792],[-177.91327,51.87975],[-177.92157,51.85388],[-177.85976,51.82694],[-177.75964,51.8312],[-177.61531,51.85508],[-177.64921,51.82073],[-177.79772,51.7933],[-177.80065,51.77829]]],[[[-177.36041,51.72753],[-177.41768,51.73087],[-177.49,51.70511],[-177.54039,51.69875],[-177.61675,51.70398],[-177.63152,51.69684],[-177.63588,51.65954],[-177.65139,51.6536],[-177.7078,51.70327],[-177.63998,51.73606],[-177.53698,51.72147],[-177.4612,51.75072],[-177.23818,51.79852],[-177.20568,51.82064],[-177.19976,51.92482],[-177.18127,51.94317],[-177.09927,51.93612],[-177.05477,51.90894],[-177.04509,51.89861],[-177.08101,51.8555],[-177.12862,51.83384],[-177.13698,51.81449],[-177.12058,51.73982],[-177.14568,51.70729],[-177.27512,51.68051],[-177.3165,51.69035],[-177.32298,51.71142],[-177.36041,51.72753]]],[[[-178.79241,51.74607],[-178.81576,51.74918],[-178.87302,51.78262],[-178.85825,51.82097],[-178.81946,51.83958],[-178.7677,51.82318],[-178.73335,51.78395],[-178.75041,51.75775],[-178.79241,51.74607]]],[[[178.38074,51.76391],[178.36368,51.77395],[178.30856,51.7757],[178.23693,51.82821],[178.3103,51.81999],[178.38074,51.76391]]],[[[-175.97156,51.88863],[-175.95755,51.89346],[-175.95325,51.88138],[-175.96304,51.84625],[-175.98374,51.85235],[-176.04789,51.84631],[-176.12396,51.80275],[-176.21696,51.81271],[-176.23554,51.82316],[-176.20607,51.88309],[-176.17387,51.88245],[-176.14091,51.85956],[-176.09914,51.85553],[-176.08044,51.85857],[-176.07343,51.87031],[-176.11549,51.88701],[-176.06529,51.90299],[-175.99265,51.91266],[-175.97156,51.88863]]],[[[177.60164,52.01638],[177.53273,51.97007],[177.54353,51.95618],[177.60754,51.95472],[177.601,51.92225],[177.56051,51.91636],[177.40954,51.93082],[177.37393,51.91976],[177.32678,51.87364],[177.33402,51.84444],[177.31177,51.82597],[177.27337,51.85712],[177.204,51.88053],[177.20332,51.89656],[177.29131,51.91943],[177.34558,51.96301],[177.49744,51.99333],[177.50532,52.03877],[177.5456,52.10109],[177.5634,52.12196],[177.60267,52.13732],[177.66161,52.11275],[177.67595,52.09217],[177.65945,52.06944],[177.63255,52.06484],[177.60164,52.01638]]],[[[179.75899,51.9466],[179.74301,51.91175],[179.63908,51.87193],[179.52187,51.89677],[179.47557,51.93746],[179.48246,51.98283],[179.52674,51.98116],[179.58286,52.01684],[179.64764,52.02626],[179.77392,51.97069],[179.77716,51.9587],[179.75899,51.9466]]],[[[178.44696,51.97822],[178.47859,51.98755],[178.55261,51.97397],[178.59025,51.94546],[178.5394,51.90325],[178.50249,51.89964],[178.46804,51.93163],[178.44696,51.97822]]],[[[-175.68014,51.96897],[-175.65319,51.96167],[-175.71744,51.9337],[-175.74744,51.9462],[-175.73548,51.97333],[-175.68014,51.96897]]],[[[-176.01809,52.0201],[-176.044,52.00933],[-176.02184,51.98485],[-176.02767,51.97511],[-176.07918,51.96888],[-176.18036,52.00043],[-176.21186,52.06553],[-176.14391,52.1161],[-176.0581,52.10647],[-175.98865,52.03551],[-176.01809,52.0201]]],[[[178.1176,52.04861],[178.14169,52.05103],[178.17578,52.03678],[178.19096,52.00355],[178.17447,51.99168],[178.13255,51.98698],[178.10587,51.99836],[178.09461,52.03329],[178.1176,52.04861]]],[[[-174.30182,52.27895],[-174.36875,52.28041],[-174.45598,52.31369],[-174.43285,52.328],[-174.35862,52.31419],[-174.3177,52.34487],[-174.33049,52.36644],[-174.32494,52.3781],[-174.18535,52.41779],[-174.06825,52.39033],[-173.9852,52.3176],[-173.98792,52.29534],[-174.06045,52.22533],[-174.17768,52.23364],[-174.19862,52.21924],[-174.1901,52.19032],[-174.13522,52.16851],[-174.08281,52.13207],[-174.09447,52.10427],[-174.14226,52.12545],[-174.20635,52.11655],[-174.21847,52.10488],[-174.33442,52.1152],[-174.36567,52.09724],[-174.41126,52.04876],[-174.45276,52.06105],[-174.50782,52.05495],[-174.55628,52.03673],[-174.59364,52.04525],[-174.61594,52.03267],[-174.73659,52.00731],[-174.78319,52.03229],[-174.88555,52.043],[-174.96791,52.0372],[-175.01475,52.02058],[-175.01481,52.007],[-175.09551,52.0008],[-175.27485,52.01862],[-175.32332,52.00749],[-175.34162,52.02159],[-175.13263,52.05922],[-175.09287,52.03479],[-175.04434,52.05752],[-174.99231,52.0586],[-174.9375,52.07833],[-174.9223,52.09158],[-174.92755,52.10142],[-174.90541,52.11651],[-174.83972,52.09134],[-174.65629,52.10796],[-174.5684,52.13843],[-174.55467,52.1604],[-174.52708,52.17472],[-174.46519,52.18071],[-174.41529,52.16938],[-174.40546,52.18356],[-174.4578,52.20283],[-174.45375,52.21882],[-174.29904,52.21467],[-174.24985,52.24369],[-174.25583,52.27415],[-174.30182,52.27895]]],[[[-173.60245,52.15377],[-173.49702,52.10364],[-173.46788,52.11642],[-173.37523,52.10823],[-173.3575,52.09613],[-173.1245,52.10942],[-173.10737,52.09928],[-172.95852,52.09365],[-173.03317,52.07461],[-173.10793,52.07883],[-173.54838,52.02931],[-173.61201,52.05115],[-173.718,52.06307],[-173.79957,52.05365],[-173.83156,52.04076],[-173.90107,52.04944],[-173.93724,52.05751],[-173.97133,52.09943],[-174.01134,52.09886],[-174.0523,52.1304],[-173.89073,52.12547],[-173.81828,52.10536],[-173.60245,52.15377]]],[[[177.35521,52.0714],[177.32137,52.08043],[177.2906,52.10215],[177.28181,52.13513],[177.3293,52.16667],[177.38366,52.17428],[177.43792,52.14687],[177.44656,52.11445],[177.4288,52.09174],[177.35521,52.0714]]],[[[-172.63315,52.26622],[-172.62026,52.29875],[-172.57415,52.34532],[-172.44818,52.39144],[-172.40524,52.38944],[-172.32644,52.36647],[-172.30239,52.34236],[-172.31313,52.3207],[-172.41442,52.27674],[-172.5281,52.25434],[-172.60894,52.25301],[-172.63315,52.26622]]],[[[175.91129,52.33483],[175.87332,52.36114],[175.87435,52.371],[175.90673,52.37565],[175.96652,52.35973],[175.94418,52.33644],[175.91129,52.33483]]],[[[173.58755,52.47678],[173.62388,52.50695],[173.7728,52.50991],[173.70774,52.47738],[173.6916,52.44593],[173.71232,52.42103],[173.7257,52.35658],[173.64479,52.3576],[173.60677,52.37825],[173.58879,52.40097],[173.48384,52.38349],[173.35693,52.40387],[173.38006,52.43184],[173.44011,52.45366],[173.50102,52.44093],[173.5301,52.44997],[173.55,52.46707],[173.5453,52.476],[173.58755,52.47678]]],[[[-171.29455,52.4511],[-171.30417,52.44995],[-171.31266,52.4935],[-171.27716,52.52263],[-171.25205,52.52995],[-171.19601,52.50011],[-171.20892,52.46902],[-171.23684,52.45053],[-171.29455,52.4511]]],[[[-170.84194,52.55817],[-170.81794,52.63627],[-170.72772,52.67998],[-170.67155,52.69808],[-170.63375,52.69747],[-170.56273,52.67478],[-170.56361,52.64071],[-170.60386,52.60173],[-170.69649,52.59836],[-170.7885,52.54024],[-170.84194,52.55817]]],[[[174.06919,52.73489],[174.09665,52.74348],[174.13315,52.73379],[174.15925,52.70739],[174.07184,52.71829],[174.06919,52.73489]]],[[[-170.17068,52.78492],[-170.12871,52.78742],[-170.05344,52.76908],[-170.07029,52.7243],[-170.11409,52.71617],[-170.18456,52.72194],[-170.17068,52.78492]]],[[[174.00483,52.71986],[173.9726,52.72942],[173.95407,52.75141],[174.00365,52.74428],[174.0217,52.73029],[174.00483,52.71986]]],[[[173.93293,52.74665],[173.89475,52.75078],[173.86165,52.77358],[173.89745,52.77178],[173.93155,52.75857],[173.93293,52.74665]]],[[[172.76337,52.82366],[172.76669,52.86267],[172.75424,52.87749],[172.64037,52.92544],[172.513,52.90518],[172.46902,52.91134],[172.46167,52.92716],[172.64327,53.00498],[172.74657,53.01075],[173.10725,52.99323],[173.15965,52.97416],[173.21175,52.93949],[173.25133,52.94436],[173.2954,52.92699],[173.42168,52.84548],[173.42767,52.83076],[173.30233,52.82329],[173.22405,52.8564],[173.18795,52.8315],[173.1669,52.79523],[173.14268,52.78625],[172.99847,52.79698],[172.90363,52.76167],[172.80939,52.78929],[172.76337,52.82366]]],[[[-169.94352,52.8611],[-169.90563,52.85324],[-169.86021,52.85838],[-169.7735,52.89445],[-169.70474,52.88627],[-169.66651,52.86435],[-169.7041,52.79394],[-169.75014,52.79058],[-169.83823,52.81728],[-169.87987,52.81609],[-169.89708,52.80213],[-169.96288,52.78988],[-169.99542,52.80468],[-170.01249,52.83116],[-169.99015,52.85627],[-169.94352,52.8611]]],[[[-168.2117,53.25618],[-168.27074,53.24281],[-168.31238,53.21523],[-168.34168,53.18591],[-168.34447,53.15521],[-168.43373,53.09393],[-168.4571,53.05584],[-168.49749,53.0354],[-168.58781,53.02717],[-168.68847,52.9664],[-168.907,52.88401],[-169.10246,52.82435],[-169.05424,52.86327],[-168.95898,52.88605],[-168.78524,53.04504],[-168.75969,53.08146],[-168.80203,53.10823],[-168.8049,53.12002],[-168.79233,53.15572],[-168.76333,53.18281],[-168.61714,53.26098],[-168.5394,53.25167],[-168.44508,53.26533],[-168.36652,53.25202],[-168.34399,53.26215],[-168.36539,53.30911],[-168.40653,53.34639],[-168.38689,53.4315],[-168.34213,53.47599],[-168.20044,53.53408],[-168.00462,53.56605],[-167.96272,53.55407],[-167.96504,53.53891],[-167.93898,53.52691],[-167.78916,53.51933],[-167.78807,53.49241],[-167.85834,53.43791],[-167.83952,53.41033],[-167.85222,53.37829],[-168.03976,53.30428],[-168.2117,53.25618]]],[[[-169.99671,52.89147],[-170.01551,52.87026],[-170.05027,52.85743],[-170.09533,52.87085],[-170.11285,52.90204],[-170.08399,52.92364],[-170.04656,52.92385],[-170.00207,52.91004],[-169.99671,52.89147]]],[[[-169.72174,52.94712],[-169.7411,52.95151],[-169.76073,52.97156],[-169.74574,53.02147],[-169.68003,53.03507],[-169.66358,53.02126],[-169.66608,52.99707],[-169.69827,52.95827],[-169.72174,52.94712]]],[[[-166.72892,54.00311],[-166.67664,54.01742],[-166.61975,54.00126],[-166.58739,53.95983],[-166.62198,53.95374],[-166.64679,53.92379],[-166.619,53.89351],[-166.57509,53.87924],[-166.4437,53.90973],[-166.43708,53.95564],[-166.37369,54.01003],[-166.35461,53.99904],[-166.35993,53.97714],[-166.3199,53.96013],[-166.27941,53.98253],[-166.21096,53.93356],[-166.21121,53.91233],[-166.23651,53.88134],[-166.352,53.85853],[-166.4049,53.80935],[-166.54744,53.7494],[-166.55208,53.7285],[-166.54053,53.71593],[-166.46911,53.73593],[-166.42047,53.76209],[-166.2126,53.81713],[-166.19875,53.8361],[-166.11992,53.85505],[-166.09415,53.8392],[-166.11132,53.77686],[-166.1667,53.7334],[-166.26297,53.70371],[-166.28327,53.68422],[-166.44491,53.64065],[-166.46758,53.64657],[-166.55398,53.62345],[-166.58101,53.53045],[-166.66228,53.48535],[-166.74305,53.51482],[-166.77265,53.49637],[-166.78906,53.4531],[-166.86312,53.44388],[-166.87809,53.42988],[-166.95908,53.45575],[-166.99433,53.4292],[-167.0361,53.44929],[-167.07539,53.42498],[-167.11201,53.41678],[-167.13413,53.42645],[-167.29183,53.3641],[-167.30813,53.33433],[-167.38698,53.34067],[-167.4428,53.32102],[-167.48821,53.26912],[-167.59843,53.28805],[-167.6099,53.2853],[-167.62217,53.25036],[-167.64418,53.25084],[-167.79898,53.28476],[-167.85151,53.30867],[-167.85233,53.3156],[-167.79093,53.33552],[-167.69448,53.38803],[-167.62209,53.38533],[-167.48825,53.42],[-167.45737,53.44279],[-167.39398,53.43975],[-167.35562,53.4245],[-167.27883,53.47857],[-167.19997,53.46304],[-167.15852,53.50375],[-167.10231,53.51508],[-167.10582,53.54051],[-167.13569,53.55123],[-167.1632,53.61381],[-167.10784,53.63306],[-167.07008,53.61986],[-167.00964,53.63534],[-167.01786,53.64861],[-167.07182,53.66556],[-167.05769,53.69886],[-167.02239,53.71547],[-166.89498,53.71775],[-166.85902,53.67444],[-166.86177,53.65923],[-166.80587,53.66573],[-166.77999,53.71913],[-166.78732,53.73458],[-166.96068,53.77684],[-167.00578,53.75545],[-167.02498,53.75724],[-167.14197,53.82693],[-167.14099,53.86677],[-167.03125,53.9452],[-166.75168,54.01605],[-166.72892,54.00311]]],[[[-169.55394,56.60868],[-169.50742,56.6107],[-169.47155,56.59886],[-169.58262,56.53694],[-169.65014,56.54423],[-169.68364,56.58334],[-169.75575,56.59192],[-169.78966,56.61822],[-169.55394,56.60868]]],[[[-170.28632,57.12817],[-170.30396,57.15491],[-170.42187,57.1612],[-170.42041,57.19176],[-170.33188,57.21749],[-170.26766,57.21065],[-170.16165,57.22966],[-170.15081,57.22317],[-170.17085,57.1811],[-170.28632,57.12817]]],[[[-155.62056,55.90751],[-155.56821,55.90751],[-155.56059,55.89704],[-155.5844,55.8485],[-155.56441,55.80947],[-155.56632,55.78949],[-155.58916,55.76189],[-155.61104,55.75998],[-155.64911,55.77616],[-155.7186,55.77236],[-155.75,55.82185],[-155.74312,55.83149],[-155.66337,55.86049],[-155.62056,55.90751]]],[[[-154.40401,56.57229],[-154.39248,56.55405],[-154.63359,56.47182],[-154.73655,56.40385],[-154.77577,56.40407],[-154.80548,56.42749],[-154.70614,56.52127],[-154.53473,56.60054],[-154.44996,56.60036],[-154.40229,56.58054],[-154.40401,56.57229]]],[[[-153.94051,56.55832],[-153.87876,56.56593],[-153.86846,56.55149],[-153.88768,56.53364],[-153.95296,56.50717],[-153.99391,56.5018],[-154.16399,56.50784],[-154.23246,56.49105],[-154.3431,56.51017],[-154.36138,56.52564],[-154.36236,56.54251],[-154.31091,56.58545],[-154.22376,56.61295],[-154.18482,56.60377],[-154.09583,56.61779],[-154.04157,56.55621],[-153.94051,56.55832]]],[[[-152.41742,57.81546],[-152.35115,57.83477],[-152.32428,57.82444],[-152.31093,57.78345],[-152.34267,57.76231],[-152.35723,57.77392],[-152.44379,57.77614],[-152.49731,57.7386],[-152.46768,57.68139],[-152.44303,57.66805],[-152.39447,57.68467],[-152.46776,57.59822],[-152.43967,57.5904],[-152.38714,57.61243],[-152.32273,57.6234],[-152.15239,57.61948],[-152.164,57.58461],[-152.29147,57.5171],[-152.32368,57.46786],[-152.32613,57.44151],[-152.36159,57.42776],[-152.49522,57.45238],[-152.517,57.43218],[-152.60038,57.46883],[-152.68441,57.4666],[-152.71677,57.47847],[-152.74308,57.50571],[-152.80904,57.4945],[-152.95494,57.52045],[-152.96722,57.50999],[-152.94901,57.49821],[-152.92175,57.5014],[-152.76268,57.45756],[-152.67325,57.41325],[-152.62038,57.4016],[-152.60115,57.38217],[-152.63044,57.32267],[-152.70777,57.27605],[-152.77416,57.29043],[-152.81819,57.26537],[-152.88638,57.29134],[-152.90905,57.32422],[-153.00852,57.33973],[-153.07929,57.32196],[-153.11628,57.29731],[-153.10132,57.2869],[-153.01599,57.30023],[-152.97091,57.28262],[-152.94346,57.25696],[-153.05697,57.21476],[-153.12548,57.21184],[-153.20172,57.22168],[-153.2138,57.20506],[-153.166,57.18064],[-153.12386,57.17545],[-153.07398,57.18709],[-152.94933,57.18735],[-152.88032,57.1648],[-152.8698,57.15085],[-152.91137,57.12681],[-152.99725,57.11949],[-153.11867,57.09103],[-153.14636,57.10088],[-153.18001,57.09452],[-153.22095,57.06824],[-153.20538,57.05615],[-153.20432,57.03364],[-153.23528,57.0074],[-153.30114,56.99119],[-153.34871,57.00837],[-153.32426,57.04331],[-153.36524,57.07208],[-153.39692,57.0604],[-153.40426,57.08051],[-153.38039,57.12047],[-153.32821,57.14199],[-153.28401,57.17387],[-153.28635,57.18429],[-153.31014,57.19443],[-153.36818,57.18534],[-153.36652,57.17671],[-153.48652,57.08591],[-153.49885,57.06536],[-153.57701,57.09318],[-153.6545,57.0846],[-153.67598,57.06983],[-153.67574,57.05478],[-153.60129,57.05666],[-153.58083,57.04905],[-153.54343,56.99524],[-153.55676,56.96886],[-153.60066,56.94263],[-153.7012,56.92639],[-153.73071,56.894],[-153.71526,56.87844],[-153.6959,56.88101],[-153.69669,56.86152],[-153.7782,56.83439],[-153.80735,56.84858],[-153.84929,56.83892],[-153.92404,56.76722],[-153.97178,56.74486],[-154.01621,56.74347],[-154.02261,56.75595],[-154.05052,56.76352],[-154.10656,56.74557],[-154.14874,56.74568],[-154.06742,56.8453],[-154.0305,56.85505],[-153.98455,56.88963],[-153.89456,56.92699],[-153.85046,56.95728],[-153.9028,56.96845],[-153.97687,56.95514],[-153.97687,56.99683],[-153.93222,57.06297],[-153.80479,57.11316],[-153.77671,57.14286],[-153.77909,57.15882],[-153.80629,57.15742],[-153.86171,57.11922],[-153.98279,57.06628],[-154.07662,56.97059],[-154.16541,56.94324],[-154.21211,56.90975],[-154.23177,56.87229],[-154.30571,56.84687],[-154.3,56.89225],[-154.31289,56.91867],[-154.40749,56.96833],[-154.5247,56.99162],[-154.51521,57.07798],[-154.52984,57.16888],[-154.57434,57.23992],[-154.61372,57.2678],[-154.69186,57.28411],[-154.74016,57.27652],[-154.79384,57.28886],[-154.74309,57.31477],[-154.7006,57.40116],[-154.69331,57.44608],[-154.62968,57.5102],[-154.54092,57.53962],[-154.52206,57.57779],[-154.46833,57.57034],[-154.34424,57.6309],[-154.19696,57.66464],[-154.08613,57.64905],[-154.03159,57.66085],[-153.98301,57.64984],[-153.9822,57.55316],[-153.97111,57.53944],[-153.92926,57.53325],[-153.8958,57.42211],[-153.7953,57.34905],[-153.77427,57.36024],[-153.77319,57.37244],[-153.81151,57.41237],[-153.87418,57.44782],[-153.88889,57.50468],[-153.87595,57.54277],[-153.81314,57.58858],[-153.87776,57.62953],[-153.87429,57.64611],[-153.66726,57.63901],[-153.64869,57.65413],[-153.67672,57.66966],[-153.86289,57.70694],[-153.93028,57.69679],[-153.93522,57.81305],[-153.82339,57.86501],[-153.75505,57.88356],[-153.72118,57.89061],[-153.6488,57.8801],[-153.57136,57.8321],[-153.55082,57.78689],[-153.55423,57.72245],[-153.51521,57.7165],[-153.4934,57.72832],[-153.46989,57.76654],[-153.46246,57.79529],[-153.48038,57.81466],[-153.47946,57.84202],[-153.35358,57.80973],[-153.32269,57.83619],[-153.32814,57.84985],[-153.39581,57.85877],[-153.46201,57.88059],[-153.5287,57.92172],[-153.53652,57.93077],[-153.52039,57.96339],[-153.4846,57.9765],[-153.46942,57.97728],[-153.27368,57.89041],[-153.23695,57.89182],[-153.12251,57.85664],[-153.08942,57.86523],[-153.19862,57.92992],[-153.27033,57.95857],[-153.29901,57.98563],[-153.29776,57.99643],[-153.23473,57.99697],[-153.12949,57.94655],[-153.06986,57.93443],[-153.02443,57.95695],[-152.8762,57.93245],[-152.85628,57.94738],[-152.8551,57.9945],[-152.72342,57.99172],[-152.75198,57.93347],[-152.90263,57.83015],[-152.91633,57.77122],[-152.90431,57.75082],[-152.8745,57.73796],[-152.85034,57.74004],[-152.85,57.82146],[-152.82254,57.8432],[-152.79021,57.85806],[-152.75344,57.83445],[-152.7253,57.8354],[-152.62561,57.88123],[-152.64181,57.9025],[-152.63538,57.91861],[-152.5877,57.92696],[-152.58598,57.9081],[-152.54966,57.90014],[-152.47034,57.9621],[-152.42141,57.97568],[-152.41162,57.96928],[-152.43742,57.93698],[-152.3241,57.9166],[-152.36478,57.88392],[-152.41498,57.90223],[-152.44824,57.90261],[-152.46851,57.88862],[-152.43365,57.82431],[-152.41742,57.81546]]],[[[-152.24289,58.24119],[-152.28063,58.24234],[-152.31142,58.22111],[-152.26511,58.13573],[-152.27361,58.12563],[-152.34352,58.11917],[-152.48267,58.12981],[-152.51479,58.11432],[-152.53039,58.08777],[-152.55446,58.08462],[-152.56959,58.1148],[-152.55988,58.17094],[-152.58422,58.18748],[-152.59751,58.17969],[-152.63121,58.08192],[-152.6568,58.06105],[-152.70683,58.05058],[-152.7713,58.04688],[-152.79204,58.07267],[-152.95868,58.11644],[-152.98386,58.13436],[-153.07575,58.09957],[-153.02059,58.0452],[-152.9647,58.03465],[-152.87184,57.99927],[-152.94755,57.98352],[-153.09746,58.00452],[-153.20253,58.03012],[-153.21812,58.04391],[-153.2897,58.05033],[-153.36557,58.03905],[-153.41978,58.05964],[-153.31613,58.14039],[-153.28187,58.14755],[-153.26264,58.1451],[-153.19912,58.102],[-153.1564,58.09009],[-153.14874,58.10612],[-153.16761,58.12782],[-153.22371,58.16212],[-153.2028,58.20808],[-153.1701,58.2167],[-153.06085,58.1945],[-153.00058,58.21177],[-153.00698,58.22185],[-153.06168,58.23565],[-153.10184,58.25794],[-153.04432,58.30634],[-152.94127,58.27961],[-152.87886,58.28853],[-152.86981,58.30491],[-152.91245,58.30719],[-152.93644,58.33492],[-152.89541,58.34531],[-152.82196,58.3285],[-152.77405,58.36683],[-152.83923,58.37248],[-152.88886,58.40938],[-152.81221,58.40346],[-152.77451,58.41972],[-152.73385,58.46066],[-152.68994,58.45986],[-152.61095,58.47577],[-152.60053,58.49495],[-152.65367,58.50657],[-152.666,58.56449],[-152.61613,58.60185],[-152.56771,58.6213],[-152.54501,58.59425],[-152.50282,58.59345],[-152.45382,58.61852],[-152.35471,58.63828],[-152.32984,58.6321],[-152.33721,58.5891],[-152.37232,58.53117],[-152.41827,58.51524],[-152.50552,58.44188],[-152.51248,58.42735],[-152.49399,58.35468],[-152.36468,58.36461],[-152.34486,58.39163],[-152.35609,58.42347],[-152.32806,58.43437],[-152.27951,58.41587],[-152.22783,58.37642],[-152.23472,58.36202],[-152.22496,58.35737],[-152.20095,58.35533],[-152.12534,58.3964],[-152.08925,58.36764],[-152.13829,58.29571],[-152.14652,58.24912],[-152.11657,58.24854],[-152.10763,58.28024],[-152.08234,58.30994],[-151.98617,58.35041],[-151.96382,58.329],[-151.97205,58.2307],[-152.08108,58.15427],[-152.1122,58.14856],[-152.19483,58.17413],[-152.22317,58.19479],[-152.2037,58.21205],[-152.23383,58.24333],[-152.24289,58.24119]]],[[[-132.97716,56.43967],[-132.92766,56.45686],[-132.87192,56.45704],[-132.81926,56.43951],[-132.73447,56.45851],[-132.66813,56.44028],[-132.62859,56.41628],[-132.62061,56.3912],[-132.68411,56.34567],[-132.65547,56.30376],[-132.66208,56.27479],[-132.72125,56.25846],[-132.87758,56.24032],[-133.04538,56.32078],[-133.06756,56.33357],[-133.07086,56.35419],[-133.00657,56.41588],[-133.01082,56.42426],[-132.97716,56.43967]]],[[[-135.44738,58.39989],[-135.5124,58.38576],[-135.63043,58.42858],[-135.72805,58.39707],[-135.91792,58.38124],[-135.89726,58.41613],[-135.89717,58.45],[-135.91611,58.46386],[-135.93993,58.4516],[-135.98756,58.46442],[-135.99953,58.48028],[-135.89315,58.51393],[-135.89509,58.53408],[-135.914,58.54058],[-135.92857,58.57292],[-135.91219,58.6188],[-136.01223,58.71225],[-136.01167,58.74328],[-136.0896,58.81573],[-136.04528,58.83607],[-136.05035,58.91343],[-136.12031,58.96842],[-136.16272,58.97726],[-136.1503,58.94711],[-136.12449,58.92454],[-136.107,58.86444],[-136.15077,58.75727],[-136.21366,58.75115],[-136.24734,58.75294],[-136.39732,58.81302],[-136.49372,58.83896],[-136.52816,58.92848],[-136.52652,58.95452],[-136.5449,58.96731],[-136.57216,58.95729],[-136.58629,58.90936],[-136.6305,58.89026],[-136.6769,58.89497],[-136.72499,58.92351],[-136.78291,58.93666],[-136.80283,58.92312],[-136.84099,58.91974],[-136.87783,58.96239],[-136.91853,58.94722],[-136.93484,58.91634],[-136.92864,58.90013],[-136.76793,58.87061],[-136.74451,58.87663],[-136.58343,58.83883],[-136.46326,58.78161],[-136.35679,58.69258],[-136.37277,58.66741],[-136.48239,58.61674],[-136.45944,58.60788],[-136.38333,58.62999],[-136.34283,58.64503],[-136.31719,58.67123],[-136.24637,58.66318],[-136.22331,58.67503],[-136.1816,58.53502],[-136.1003,58.50067],[-136.10393,58.478],[-136.08355,58.44711],[-136.06216,58.43579],[-136.04182,58.38016],[-136.11193,58.34253],[-136.27677,58.31389],[-136.30512,58.32869],[-136.27393,58.36341],[-136.33673,58.37757],[-136.38204,58.36269],[-136.35711,58.32884],[-136.37098,58.30164],[-136.38996,58.29707],[-136.47202,58.30636],[-136.55,58.34037],[-136.6135,58.34789],[-136.63863,58.32846],[-136.5768,58.27795],[-136.56796,58.24515],[-136.59192,58.21789],[-136.61982,58.2099],[-136.65864,58.20732],[-136.70125,58.21942],[-136.73089,58.2565],[-136.71709,58.27351],[-136.73022,58.28615],[-136.78433,58.2905],[-136.85761,58.31636],[-136.84899,58.32899],[-136.94666,58.39319],[-137.01841,58.40914],[-137.1118,58.39259],[-137.18003,58.42994],[-137.29579,58.46618],[-137.56822,58.58799],[-137.67169,58.61552],[-137.68763,58.66499],[-137.79504,58.72485],[-137.92816,58.78053],[-137.94496,58.80465],[-137.92762,58.82719],[-137.93259,58.86849],[-137.9852,58.90953],[-138.13625,58.98903],[-138.11885,59.02131],[-138.6367,59.13059],[-138.8475,59.22483],[-139.42017,59.37976],[-139.85557,59.53666],[-139.86131,59.54668],[-139.83782,59.56198],[-139.80716,59.55433],[-139.78507,59.56404],[-139.76867,59.59761],[-139.71896,59.64116],[-139.65522,59.6335],[-139.65643,59.62121],[-139.67631,59.61125],[-139.65458,59.59801],[-139.58713,59.60596],[-139.58579,59.64276],[-139.51818,59.68781],[-139.52401,59.71251],[-139.55265,59.70683],[-139.59336,59.7215],[-139.54611,59.75267],[-139.59043,59.81023],[-139.62466,59.88439],[-139.61691,59.912],[-139.52746,59.94005],[-139.4887,59.99503],[-139.48603,60.01241],[-139.50539,60.03943],[-139.55516,60.03924],[-139.60579,59.9556],[-139.70533,59.93483],[-139.76954,59.87811],[-139.76861,59.85116],[-139.8012,59.83259],[-140.16466,59.74188],[-140.25635,59.70305],[-140.3144,59.6983],[-140.63664,59.71141],[-140.92722,59.74571],[-141.1565,59.81358],[-141.44202,59.87332],[-141.46753,59.97127],[-141.53029,59.97765],[-141.70905,59.94894],[-141.96618,60.01913],[-142.10006,60.02677],[-142.53753,60.08395],[-142.87525,60.09243],[-143.13562,60.06208],[-143.62415,60.03726],[-143.89143,59.9958],[-143.93121,59.99834],[-143.98924,60.00883],[-144.01382,60.0244],[-144.04354,60.02517],[-144.05242,60.047],[-144.03332,60.05953],[-144.1405,60.1144],[-144.2298,60.14279],[-144.25388,60.16589],[-144.25398,60.18293],[-144.35877,60.18813],[-144.37922,60.16909],[-144.44194,60.16307],[-144.50106,60.18982],[-144.53489,60.18942],[-144.55816,60.1778],[-144.59626,60.18167],[-144.6549,60.20488],[-144.66613,60.24388],[-144.75345,60.28352],[-144.78252,60.29197],[-144.89282,60.29282],[-144.91402,60.28093],[-144.94213,60.28973],[-144.91271,60.36318],[-144.83406,60.44375],[-144.84866,60.45519],[-144.88734,60.45605],[-144.9033,60.44258],[-145.01241,60.44792],[-145.12555,60.42939],[-145.18104,60.40753],[-145.20289,60.37492],[-145.16993,60.32999],[-145.1122,60.2962],[-145.12244,60.28988],[-145.2229,60.29791],[-145.3643,60.33596],[-145.50331,60.38795],[-145.51046,60.40899],[-145.50235,60.42081],[-145.59416,60.45183],[-145.73594,60.47466],[-145.85347,60.44563],[-145.9574,60.4611],[-145.96051,60.46751],[-145.9144,60.49235],[-145.80239,60.52017],[-145.71289,60.58325],[-145.73649,60.59521],[-145.76405,60.59159],[-145.82066,60.55005],[-146.10971,60.47035],[-146.21679,60.45023],[-146.31735,60.46061],[-146.35129,60.45429],[-146.3501,60.40778],[-146.13396,60.43152],[-146.09425,60.4103],[-146.13306,60.38377],[-146.19868,60.35993],[-146.30217,60.34923],[-146.39286,60.32748],[-146.60729,60.24118],[-146.65045,60.24298],[-146.69315,60.28459],[-146.64986,60.30506],[-146.57162,60.32176],[-146.52419,60.35067],[-146.57544,60.35727],[-146.65589,60.34046],[-146.71715,60.3496],[-146.72511,60.35994],[-146.72108,60.39642],[-146.61044,60.48561],[-146.52885,60.49213],[-146.50545,60.47696],[-146.45505,60.46532],[-146.368,60.48067],[-146.28969,60.51569],[-146.15589,60.5263],[-145.95134,60.57678],[-145.84423,60.58651],[-145.79474,60.60112],[-145.83232,60.61485],[-145.89778,60.61365],[-145.89714,60.65121],[-145.84454,60.69017],[-145.89921,60.67112],[-145.93707,60.63049],[-146.00575,60.61685],[-145.9992,60.64083],[-145.89916,60.70564],[-145.90128,60.71537],[-146.0164,60.66722],[-146.14724,60.63141],[-146.25838,60.62629],[-146.27025,60.64804],[-146.04374,60.74364],[-146.06456,60.77694],[-146.16022,60.72638],[-146.20874,60.74439],[-146.23951,60.71689],[-146.3034,60.71321],[-146.3173,60.72112],[-146.31228,60.7344],[-146.34657,60.73575],[-146.38689,60.7146],[-146.40287,60.69308],[-146.47414,60.68154],[-146.57881,60.69021],[-146.62327,60.68042],[-146.66775,60.69276],[-146.7036,60.7419],[-146.60501,60.75861],[-146.56673,60.7512],[-146.50068,60.77211],[-146.46482,60.77072],[-146.30444,60.79804],[-146.25541,60.80996],[-146.18316,60.84697],[-146.1719,60.86282],[-146.26257,60.86779],[-146.31376,60.82783],[-146.39437,60.81227],[-146.55058,60.8094],[-146.62042,60.86902],[-146.66437,60.87085],[-146.71813,60.83567],[-146.71979,60.81448],[-146.80061,60.80516],[-146.81902,60.81635],[-146.8163,60.85563],[-146.77416,60.87622],[-146.72723,60.86627],[-146.69769,60.87253],[-146.74676,60.93545],[-146.74554,60.95758],[-146.70136,60.98701],[-146.65343,61.04775],[-146.66152,61.06078],[-146.69055,61.06408],[-146.78373,61.04294],[-146.84811,61.00059],[-146.86883,60.97145],[-146.97307,60.93483],[-147.05575,60.94547],[-147.07055,60.96331],[-147.04709,60.99121],[-147.06267,61.00434],[-147.09486,61.01019],[-147.13688,60.98097],[-147.14464,60.96349],[-147.13557,60.94625],[-147.17162,60.93288],[-147.22081,60.95312],[-147.22162,60.98354],[-147.27365,60.9746],[-147.28044,60.91696],[-147.37809,60.87785],[-147.45157,60.89422],[-147.45341,60.94147],[-147.47309,60.95755],[-147.49155,60.958],[-147.50727,60.92724],[-147.49381,60.91238],[-147.51742,60.89482],[-147.54976,60.90801],[-147.53403,61.03109],[-147.50232,61.07206],[-147.51378,61.09613],[-147.5582,61.0998],[-147.55723,61.0814],[-147.6188,60.97004],[-147.58731,60.87446],[-147.60241,60.84998],[-147.66859,60.84156],[-147.67729,60.86996],[-147.66296,60.87495],[-147.66585,60.88377],[-147.73039,60.91126],[-147.76084,60.91323],[-147.78712,60.87351],[-147.76696,60.85354],[-147.75021,60.85214],[-147.72942,60.81825],[-147.77716,60.81102],[-147.9134,60.82515],[-147.92045,60.81244],[-148.03395,60.7832],[-148.13399,60.79127],[-148.14435,60.79709],[-148.1483,60.8287],[-148.08522,60.91861],[-147.94779,61.04062],[-147.97339,61.06739],[-147.99124,61.06953],[-148.06551,61.00398],[-148.09009,61.00511],[-148.12513,61.0707],[-148.14902,61.07667],[-148.16597,61.06928],[-148.17765,60.99961],[-148.21895,60.95357],[-148.24166,60.93774],[-148.26558,60.93633],[-148.28125,60.91779],[-148.30971,60.83774],[-148.35046,60.80399],[-148.38952,60.80562],[-148.42656,60.82711],[-148.45012,60.79641],[-148.43108,60.77184],[-148.39596,60.7797],[-148.36641,60.76583],[-148.38409,60.68775],[-148.37402,60.67264],[-148.34788,60.68033],[-148.26952,60.75739],[-148.22976,60.76414],[-148.14766,60.75854],[-148.10699,60.73977],[-148.09373,60.66153],[-148.1426,60.62263],[-148.25485,60.59512],[-148.33325,60.53046],[-148.34638,60.48873],[-148.32899,60.47618],[-148.25543,60.49341],[-148.23855,60.52144],[-148.19203,60.55737],[-148.10275,60.59803],[-148.08638,60.59552],[-147.97902,60.51915],[-147.96362,60.50275],[-147.97725,60.48094],[-147.94171,60.44403],[-148.0256,60.27903],[-148.11586,60.27952],[-148.15013,60.29621],[-148.15023,60.32418],[-148.19267,60.3391],[-148.21692,60.33159],[-148.21515,60.30101],[-148.32557,60.26182],[-148.3621,60.22185],[-148.33265,60.214],[-148.27575,60.24927],[-148.20833,60.25934],[-148.1883,60.24857],[-148.19257,60.24183],[-148.22893,60.23591],[-148.23423,60.22369],[-148.19053,60.20696],[-148.1651,60.20617],[-148.15304,60.23553],[-148.13987,60.24108],[-148.09024,60.21586],[-148.13362,60.18839],[-148.12629,60.16706],[-148.08019,60.17157],[-148.08579,60.19004],[-148.05192,60.20206],[-148.00343,60.17617],[-148.02887,60.15052],[-148.0644,60.14851],[-148.09723,60.12012],[-148.1218,60.07355],[-148.09572,60.06594],[-148.01227,60.12473],[-147.9617,60.1409],[-147.91282,60.13258],[-147.89232,60.11951],[-147.89258,60.10116],[-147.97311,60.06464],[-147.99866,60.06231],[-148.02382,60.00711],[-147.98616,59.99934],[-147.86061,60.07636],[-147.82204,60.06696],[-147.82374,60.04503],[-147.86393,60.00662],[-147.91754,59.986],[-148.03177,59.95586],[-148.05071,59.96891],[-148.05637,59.99042],[-148.15374,59.95464],[-148.2511,59.95242],[-148.2135,59.99464],[-148.14761,59.99495],[-148.12869,60.00344],[-148.17581,60.02634],[-148.27384,60.01332],[-148.31794,60.02873],[-148.30572,60.05447],[-148.29037,60.06],[-148.29282,60.15129],[-148.31685,60.16544],[-148.35819,60.15651],[-148.4012,59.9976],[-148.44559,59.96375],[-148.48017,59.97965],[-148.48044,59.99939],[-148.50883,60.00288],[-148.54413,60.00281],[-148.55525,59.98066],[-148.59912,59.95089],[-148.63584,59.93966],[-148.67617,59.94722],[-148.66271,59.97183],[-148.72587,59.96373],[-148.75537,59.98924],[-148.80122,59.97584],[-148.8383,59.9499],[-148.88426,59.95539],[-148.91268,59.99289],[-148.93833,59.99907],[-149.01679,59.97613],[-149.02842,59.97882],[-149.03127,59.99849],[-149.06783,59.98218],[-149.09507,59.98302],[-149.10172,59.99415],[-149.07272,60.01965],[-149.0416,60.03073],[-149.04036,60.04874],[-149.0587,60.06142],[-149.09662,60.04463],[-149.13312,60.04492],[-149.20485,60.00921],[-149.23539,59.93879],[-149.28759,59.90651],[-149.32703,59.98703],[-149.34158,60.07676],[-149.36041,60.10166],[-149.39317,60.09985],[-149.41683,60.08893],[-149.41683,59.99793],[-149.43503,59.99065],[-149.46285,59.95015],[-149.50743,59.96452],[-149.58425,59.86691],[-149.5424,59.82323],[-149.51146,59.80685],[-149.52784,59.75044],[-149.59881,59.7559],[-149.64067,59.79957],[-149.70618,59.91058],[-149.7535,59.86145],[-149.73894,59.73224],[-149.77802,59.68593],[-149.7983,59.67755],[-149.84267,59.7013],[-149.83903,59.75225],[-149.88999,59.78501],[-149.97734,59.80139],[-150.0283,59.78865],[-150.04285,59.77227],[-149.97916,59.74498],[-149.94822,59.71768],[-149.96278,59.69766],[-150.00282,59.6831],[-150.02284,59.6558],[-150.03194,59.61395],[-150.09563,59.64852],[-150.10837,59.60303],[-150.16842,59.56117],[-150.25396,59.52114],[-150.31037,59.5084],[-150.34313,59.51204],[-150.31583,59.56299],[-150.31765,59.59939],[-150.35549,59.59841],[-150.41245,59.55463],[-150.47874,59.4585],[-150.4989,59.4563],[-150.52154,59.46792],[-150.51629,59.48678],[-150.53612,59.49846],[-150.55024,59.52703],[-150.53306,59.56308],[-150.53725,59.58111],[-150.55611,59.59033],[-150.60223,59.54589],[-150.63954,59.54715],[-150.63158,59.52157],[-150.58964,59.50008],[-150.5796,59.47954],[-150.58118,59.44523],[-150.60116,59.42566],[-150.65005,59.42088],[-150.65633,59.45444],[-150.66721,59.4579],[-150.71656,59.45085],[-150.76985,59.37297],[-150.83463,59.35198],[-150.87745,59.31812],[-150.9116,59.31161],[-150.88782,59.26792],[-150.94221,59.23314],[-150.97516,59.23614],[-151.0012,59.22415],[-151.00881,59.24579],[-150.99906,59.27108],[-151.0231,59.26904],[-151.05776,59.30172],[-151.0719,59.28106],[-151.10564,59.26314],[-151.1024,59.22871],[-151.12625,59.20992],[-151.18625,59.20281],[-151.20605,59.21932],[-151.26164,59.2203],[-151.28054,59.23048],[-151.30572,59.20954],[-151.37961,59.24202],[-151.4072,59.27935],[-151.44921,59.24846],[-151.52513,59.22495],[-151.49959,59.20784],[-151.50266,59.19507],[-151.57466,59.19533],[-151.58035,59.16523],[-151.74845,59.1586],[-151.76491,59.17551],[-151.7613,59.22133],[-151.87436,59.21193],[-151.91568,59.22752],[-151.90511,59.24708],[-151.97875,59.25378],[-151.99162,59.31362],[-151.96313,59.34496],[-151.90302,59.36045],[-151.8871,59.38253],[-151.90802,59.39527],[-151.88651,59.42103],[-151.77087,59.44792],[-151.72849,59.43968],[-151.69473,59.46837],[-151.63447,59.48244],[-151.54235,59.46706],[-151.50589,59.47705],[-151.47099,59.47225],[-151.46963,59.50281],[-151.42097,59.53773],[-151.27246,59.55582],[-151.26481,59.5686],[-151.2748,59.59699],[-151.20168,59.5915],[-151.20836,59.56206],[-151.1928,59.56243],[-151.15825,59.59414],[-151.18803,59.60869],[-151.20546,59.63028],[-151.20319,59.64599],[-151.12612,59.66834],[-151.11649,59.69613],[-151.09825,59.70944],[-151.01889,59.75659],[-150.92731,59.79343],[-150.983,59.78354],[-151.02776,59.7962],[-151.06376,59.79315],[-151.32981,59.68364],[-151.42484,59.67052],[-151.44867,59.64817],[-151.50382,59.63366],[-151.64306,59.64697],[-151.68649,59.66086],[-151.82914,59.72015],[-151.85933,59.74957],[-151.86771,59.77841],[-151.81362,59.8443],[-151.80306,59.87853],[-151.75769,59.91764],[-151.7029,60.03225],[-151.4217,60.21293],[-151.38792,60.26707],[-151.37728,60.36552],[-151.29978,60.38548],[-151.28099,60.51263],[-151.26446,60.54326],[-151.33041,60.58054],[-151.35015,60.63466],[-151.40445,60.695],[-151.40927,60.72056],[-151.27964,60.74768],[-151.2529,60.77399],[-151.03701,60.79365],[-150.70581,60.93779],[-150.67844,60.95827],[-150.40186,61.03623],[-150.3537,61.03182],[-150.24407,60.93859],[-150.04557,60.91],[-150.03987,60.92078],[-149.91217,60.93784],[-149.85369,60.9674],[-149.75308,60.96206],[-149.73538,60.98781],[-149.73969,61.01696],[-149.83192,61.0762],[-150.07545,61.15627],[-149.987,61.22275],[-149.98587,61.23752],[-150.07479,61.2535],[-150.20489,61.25955],[-150.46881,61.24463],[-150.56167,61.28149],[-150.60696,61.27773],[-150.6558,61.29817],[-150.6799,61.26589],[-150.71129,61.25109],[-150.8959,61.20891],[-150.94194,61.20995],[-150.96011,61.19404],[-151.0249,61.17839],[-151.16661,61.0464],[-151.29362,61.03572],[-151.349,61.01],[-151.4803,61.0109],[-151.621,60.95745],[-151.67952,60.92249],[-151.71391,60.91655],[-151.73602,60.89151],[-151.80026,60.85367],[-151.78739,60.82231],[-151.7038,60.73238],[-151.71044,60.71266],[-151.74432,60.7124],[-151.80381,60.729],[-151.85197,60.75407],[-151.86496,60.75046],[-151.84861,60.73398],[-151.87047,60.72728],[-151.91691,60.71792],[-151.91876,60.73227],[-151.94444,60.73305],[-151.94829,60.72248],[-151.96838,60.72834],[-152.07943,60.6928],[-152.13616,60.57847],[-152.19508,60.56967],[-152.2615,60.53824],[-152.30922,60.50638],[-152.33137,60.47353],[-152.33026,60.44313],[-152.31223,60.4204],[-152.2342,60.39389],[-152.31585,60.35907],[-152.36621,60.3533],[-152.39201,60.30211],[-152.41128,60.28786],[-152.48179,60.27468],[-152.55675,60.22422],[-152.62465,60.21869],[-152.6704,60.24432],[-152.74703,60.23331],[-152.75488,60.2029],[-152.73425,60.1748],[-152.67809,60.1635],[-152.68637,60.13772],[-152.59678,60.10107],[-152.56912,60.07175],[-152.57515,60.04826],[-152.6086,60.02543],[-152.61165,60.00852],[-152.6794,59.96805],[-152.70643,59.91528],[-152.79358,59.89672],[-152.81006,59.87832],[-152.95066,59.87676],[-153.01998,59.88623],[-153.14475,59.85983],[-153.21286,59.86278],[-153.27881,59.82807],[-153.27854,59.81092],[-153.19735,59.82483],[-153.14437,59.80762],[-153.08852,59.83338],[-153.00908,59.83064],[-152.99213,59.81003],[-152.99447,59.79126],[-153.05156,59.69156],[-153.12174,59.67801],[-153.15502,59.65434],[-153.21416,59.63427],[-153.25341,59.63842],[-153.28653,59.67025],[-153.31512,59.6649],[-153.2982,59.63634],[-153.30884,59.62571],[-153.34294,59.62131],[-153.3816,59.63803],[-153.40942,59.63633],[-153.41551,59.65092],[-153.38489,59.66719],[-153.37478,59.73159],[-153.45497,59.7921],[-153.44121,59.70132],[-153.46456,59.65171],[-153.54247,59.63024],[-153.58652,59.65154],[-153.61074,59.62834],[-153.59219,59.61084],[-153.55829,59.60579],[-153.55316,59.59705],[-153.57783,59.55599],[-153.76148,59.54341],[-153.76624,59.52234],[-153.73385,59.50575],[-153.69903,59.4636],[-153.72755,59.43535],[-153.80712,59.41947],[-153.89658,59.41849],[-153.94554,59.38606],[-153.95989,59.39685],[-153.99,59.39678],[-154.00721,59.38253],[-154.05215,59.38714],[-154.0878,59.36797],[-154.11767,59.36551],[-154.12139,59.3531],[-154.10301,59.34272],[-154.0337,59.344],[-154.03081,59.32704],[-154.11358,59.29963],[-154.13684,59.26267],[-154.14119,59.2166],[-154.13058,59.2105],[-154.17294,59.1725],[-154.26329,59.13846],[-154.25123,59.11124],[-154.22724,59.12541],[-154.17367,59.1202],[-154.16641,59.09058],[-154.19742,59.06115],[-154.15983,59.0106],[-154.06349,59.07214],[-153.85024,59.05292],[-153.80278,59.07222],[-153.75094,59.05284],[-153.7462,59.0652],[-153.70416,59.07578],[-153.61607,59.00674],[-153.52352,58.97922],[-153.47994,58.99529],[-153.43814,58.96991],[-153.39848,58.96606],[-153.36537,58.92775],[-153.33478,58.92052],[-153.30243,58.87121],[-153.28616,58.86308],[-153.26741,58.86722],[-153.25225,58.85585],[-153.35096,58.84355],[-153.36939,58.82126],[-153.38513,58.76617],[-153.42664,58.72113],[-153.445,58.70931],[-153.47776,58.71277],[-153.55265,58.68718],[-153.60126,58.63463],[-153.6776,58.6116],[-153.89715,58.60624],[-153.91913,58.51666],[-153.90959,58.51456],[-153.93047,58.49748],[-153.96037,58.48783],[-154.06512,58.48643],[-154.07523,58.45811],[-154.05576,58.41878],[-154.04001,58.4043],[-153.98542,58.39088],[-153.99932,58.37637],[-154.09725,58.34532],[-154.168,58.35838],[-154.17716,58.32147],[-154.14907,58.31454],[-154.10341,58.28016],[-154.14528,58.21093],[-154.17765,58.18983],[-154.21975,58.18463],[-154.24187,58.15633],[-154.21008,58.13606],[-154.26903,58.12877],[-154.29116,58.13568],[-154.34045,58.09092],[-154.42657,58.1449],[-154.46012,58.14607],[-154.44921,58.09322],[-154.46293,58.05835],[-154.50125,58.05011],[-154.53937,58.05589],[-154.58155,58.01929],[-154.64397,58.03315],[-154.64622,58.06014],[-154.66889,58.06527],[-154.71616,58.05526],[-154.73073,58.02184],[-154.77472,58.00217],[-154.81952,58.00349],[-154.82823,58.01885],[-154.87656,58.02772],[-154.99043,58.01342],[-155.11865,57.95392],[-155.06181,57.90433],[-155.08214,57.87225],[-155.23793,57.82713],[-155.33815,57.82538],[-155.33494,57.78069],[-155.28469,57.75739],[-155.30581,57.72405],[-155.37861,57.71077],[-155.50653,57.76097],[-155.54568,57.78677],[-155.59686,57.78354],[-155.61719,57.76971],[-155.63532,57.71544],[-155.6152,57.68807],[-155.62991,57.65638],[-155.72417,57.63345],[-155.73278,57.54973],[-155.87786,57.54717],[-155.91526,57.53533],[-155.96789,57.54443],[-156.01082,57.57138],[-156.03381,57.56988],[-156.04403,57.56446],[-156.04858,57.50081],[-156.03672,57.47094],[-156.0144,57.45529],[-156.02187,57.43966],[-156.09167,57.43983],[-156.13748,57.47173],[-156.19574,57.48006],[-156.21088,57.47441],[-156.22689,57.44067],[-156.33943,57.41764],[-156.48163,57.3387],[-156.53354,57.32853],[-156.55124,57.2908],[-156.53868,57.28304],[-156.5073,57.28116],[-156.33643,57.33608],[-156.32191,57.29337],[-156.34294,57.24806],[-156.37651,57.25228],[-156.40149,57.23317],[-156.38859,57.20662],[-156.3344,57.1823],[-156.36852,57.14999],[-156.43511,57.12743],[-156.4565,57.10604],[-156.4416,57.08516],[-156.53559,57.04791],[-156.56283,57.02031],[-156.54767,57.00463],[-156.55052,56.98461],[-156.63784,56.9939],[-156.75364,56.99123],[-156.7869,56.96504],[-156.79731,56.91172],[-156.82598,56.89767],[-156.87632,56.94283],[-156.88289,56.96258],[-156.9188,56.96358],[-156.93569,56.95487],[-156.93563,56.92009],[-157.01567,56.89849],[-157.07345,56.83834],[-157.15949,56.83348],[-157.16327,56.82354],[-157.14028,56.79087],[-157.18364,56.76908],[-157.20172,56.76751],[-157.28376,56.80077],[-157.29828,56.81857],[-157.37877,56.8617],[-157.43693,56.85852],[-157.47241,56.83336],[-157.45762,56.80429],[-157.41856,56.79982],[-157.41344,56.76919],[-157.51748,56.76084],[-157.54486,56.73895],[-157.5638,56.70343],[-157.54229,56.67532],[-157.47915,56.67008],[-157.45216,56.64322],[-157.4665,56.62327],[-157.53649,56.61532],[-157.60523,56.62132],[-157.67459,56.60951],[-157.70538,56.62878],[-157.7368,56.67562],[-157.75414,56.67947],[-157.92004,56.65864],[-158.04201,56.59674],[-158.04284,56.58185],[-158.00104,56.5721],[-157.97522,56.58572],[-157.90665,56.59092],[-157.83842,56.56076],[-157.81783,56.51421],[-157.82307,56.50198],[-157.85977,56.48367],[-157.95462,56.51584],[-158.02762,56.51178],[-158.11228,56.52132],[-158.13173,56.50194],[-158.1116,56.49011],[-158.12744,56.46081],[-158.24614,56.46612],[-158.2847,56.48109],[-158.3288,56.48421],[-158.40295,56.45519],[-158.49884,56.38011],[-158.48955,56.34186],[-158.43279,56.34351],[-158.39734,56.32892],[-158.32256,56.32524],[-158.20739,56.29435],[-158.20308,56.28383],[-158.25333,56.25312],[-158.33451,56.23294],[-158.33976,56.21781],[-158.26479,56.2096],[-158.17493,56.23623],[-158.11272,56.24029],[-158.1178,56.23074],[-158.37432,56.13452],[-158.396,56.10983],[-158.39832,56.06296],[-158.42445,56.0689],[-158.43864,56.09367],[-158.43223,56.10288],[-158.46181,56.10664],[-158.47271,56.08758],[-158.44841,56.05528],[-158.41789,56.0368],[-158.40772,56.01452],[-158.43147,55.99445],[-158.4457,55.99758],[-158.46733,56.02722],[-158.50197,56.02517],[-158.49511,55.98921],[-158.50984,55.97962],[-158.59562,56.04525],[-158.59419,56.11044],[-158.57466,56.11864],[-158.6004,56.13044],[-158.65974,56.09855],[-158.66091,56.03493],[-158.63669,56.00501],[-158.65321,55.95862],[-158.67325,55.95148],[-158.74856,55.95936],[-158.72957,56.00285],[-158.74731,56.00991],[-158.85413,56.00334],[-158.9094,55.93489],[-159.37484,55.87152],[-159.4001,55.85236],[-159.41151,55.78891],[-159.43479,55.79291],[-159.47022,55.82891],[-159.45395,55.89682],[-159.49388,55.90011],[-159.53441,55.8813],[-159.49802,55.8553],[-159.4944,55.7658],[-159.55143,55.71154],[-159.53012,55.66539],[-159.61777,55.5958],[-159.72933,55.56965],[-159.7445,55.60002],[-159.7352,55.61093],[-159.63962,55.61792],[-159.62677,55.62941],[-159.64466,55.65247],[-159.6792,55.6559],[-159.67676,55.73736],[-159.62748,55.80325],[-159.60215,55.805],[-159.64374,55.83042],[-159.71282,55.84639],[-159.83898,55.85241],[-159.85846,55.84179],[-159.84736,55.80253],[-159.86248,55.78763],[-159.89232,55.7851],[-159.93709,55.80331],[-160.02628,55.7923],[-160.05253,55.76643],[-160.05844,55.72173],[-160.18571,55.65864],[-160.27983,55.64138],[-160.42185,55.6627],[-160.43302,55.63998],[-160.39259,55.60277],[-160.43586,55.57369],[-160.4643,55.53324],[-160.46275,55.50665],[-160.50135,55.47852],[-160.53665,55.47494],[-160.55417,55.52296],[-160.59577,55.57554],[-160.61531,55.57552],[-160.66697,55.54442],[-160.7371,55.55545],[-160.76624,55.54756],[-160.77143,55.52943],[-160.66012,55.51848],[-160.6463,55.49285],[-160.66692,55.45978],[-160.79599,55.45495],[-160.83673,55.47313],[-160.84341,55.48978],[-160.82177,55.50622],[-160.82827,55.51611],[-160.86538,55.52697],[-160.90963,55.52414],[-160.94427,55.50782],[-160.98272,55.45433],[-161.01366,55.431],[-161.23154,55.35745],[-161.32532,55.35986],[-161.31495,55.37923],[-161.34608,55.38578],[-161.46039,55.35907],[-161.50766,55.36279],[-161.51421,55.38525],[-161.48459,55.41799],[-161.47711,55.48519],[-161.3761,55.56979],[-161.35569,55.60638],[-161.36338,55.61848],[-161.41624,55.63232],[-161.48206,55.63398],[-161.58705,55.62006],[-161.61293,55.60616],[-161.69886,55.5194],[-161.69672,55.42331],[-161.6865,55.40804],[-161.82754,55.28787],[-161.85342,55.27763],[-161.87561,55.24992],[-161.87808,55.2236],[-161.90341,55.20494],[-161.97879,55.23613],[-162.04569,55.23277],[-162.00171,55.16924],[-161.96697,55.15483],[-161.94988,55.12669],[-161.96087,55.10673],[-162.05328,55.07421],[-162.11874,55.10291],[-162.13188,55.12278],[-162.11903,55.14112],[-162.14108,55.15734],[-162.17743,55.1544],[-162.21819,55.1189],[-162.22353,55.10221],[-162.18925,55.06026],[-162.21933,55.02898],[-162.26775,55.02155],[-162.30038,55.04293],[-162.41351,55.03656],[-162.47136,55.05193],[-162.5121,55.08623],[-162.52099,55.11542],[-162.46096,55.12584],[-162.4168,55.1041],[-162.40619,55.1205],[-162.44518,55.15152],[-162.48098,55.16127],[-162.51044,55.25018],[-162.58487,55.29839],[-162.6261,55.30409],[-162.66196,55.29429],[-162.6824,55.27645],[-162.71808,55.21991],[-162.69231,55.19731],[-162.63879,55.19477],[-162.57977,55.13694],[-162.60445,55.12603],[-162.61892,55.0971],[-162.56929,55.01587],[-162.56929,54.97124],[-162.64647,54.99716],[-162.68813,54.99613],[-162.7204,54.98022],[-162.7072,54.97202],[-162.70845,54.95848],[-162.77098,54.93274],[-162.84547,54.92699],[-162.91368,54.95027],[-162.97063,55.00104],[-162.95783,55.03183],[-163.00155,55.08004],[-163.07901,55.11165],[-163.18843,55.0909],[-163.22509,55.04968],[-163.21902,55.03028],[-163.17483,55.0131],[-163.14862,55.01402],[-163.06701,54.9793],[-163.03606,54.94254],[-163.2144,54.84749],[-163.29981,54.82923],[-163.37321,54.80084],[-163.37281,54.79094],[-163.32285,54.75028],[-163.22839,54.75351],[-163.18429,54.77491],[-163.14409,54.7615],[-163.05723,54.6881],[-163.05909,54.66107],[-163.12574,54.66818],[-163.14093,54.69483],[-163.28063,54.69537],[-163.318,54.71994],[-163.33152,54.74752],[-163.36463,54.74946],[-163.39197,54.74198],[-163.42838,54.71482],[-163.43936,54.65593],[-163.48886,54.65511],[-163.58597,54.61164],[-163.67084,54.62783],[-163.80359,54.6365],[-164.08489,54.62013],[-164.25759,54.57272],[-164.33754,54.52426],[-164.33653,54.48098],[-164.3527,54.46502],[-164.41682,54.43171],[-164.64046,54.39117],[-164.78936,54.40201],[-164.84493,54.41758],[-164.87607,54.44349],[-164.91006,54.50754],[-164.94464,54.5329],[-164.94879,54.57988],[-164.91876,54.60531],[-164.74182,54.64544],[-164.70946,54.66152],[-164.5769,54.82456],[-164.56155,54.85083],[-164.56405,54.87554],[-164.48678,54.92244],[-164.4273,54.93285],[-164.37344,54.91535],[-164.34353,54.89414],[-164.20707,54.92758],[-164.1192,54.96942],[-164.0868,54.9634],[-164.03071,54.96982],[-163.8947,55.03912],[-163.85426,55.0378],[-163.77409,55.05578],[-163.64683,55.04447],[-163.53296,55.04888],[-163.53009,55.01666],[-163.44285,54.96988],[-163.41804,54.9385],[-163.39829,54.90237],[-163.41469,54.85609],[-163.33423,54.87295],[-163.31888,54.88012],[-163.31916,54.89903],[-163.34773,54.92509],[-163.33839,54.95619],[-163.31459,54.95886],[-163.27959,54.94485],[-163.23741,54.95929],[-163.29321,55.00686],[-163.31465,55.12631],[-163.20087,55.16606],[-163.10501,55.18398],[-163.07049,55.17411],[-162.95718,55.17127],[-162.88229,55.18325],[-162.84014,55.22404],[-162.85184,55.24732],[-162.88089,55.23956],[-162.90045,55.24642],[-162.88812,55.27042],[-162.70475,55.3203],[-162.64991,55.36415],[-162.58052,55.44651],[-162.48369,55.49524],[-162.24697,55.68001],[-162.14706,55.71842],[-162.07968,55.7634],[-161.89896,55.83346],[-161.80783,55.89195],[-161.71228,55.90423],[-161.5856,55.93732],[-161.29078,55.98313],[-161.26276,55.95873],[-161.23044,55.94747],[-161.09662,55.95475],[-161.07638,55.94208],[-160.87323,56.00145],[-160.8142,55.95383],[-160.8182,55.91075],[-160.84966,55.91623],[-160.92386,55.90057],[-160.95156,55.85277],[-160.93059,55.81436],[-160.80601,55.73824],[-160.76523,55.75717],[-160.6681,55.72356],[-160.65556,55.73004],[-160.66304,55.74549],[-160.7577,55.78584],[-160.76916,55.85827],[-160.73418,55.871],[-160.63909,55.8583],[-160.50843,55.86938],[-160.47789,55.8411],[-160.47935,55.82236],[-160.43874,55.78961],[-160.38588,55.79644],[-160.27738,55.76586],[-160.26457,55.77572],[-160.26893,55.78428],[-160.31783,55.81898],[-160.27253,55.83167],[-160.27318,55.85688],[-160.53576,55.93962],[-160.52929,55.9861],[-160.5596,55.99684],[-160.58349,55.98647],[-160.48221,56.08523],[-160.38309,56.25135],[-160.34025,56.29127],[-160.2746,56.31715],[-160.14625,56.40018],[-160.08259,56.41109],[-159.97676,56.45395],[-159.82805,56.54393],[-159.53496,56.62653],[-159.32442,56.67036],[-159.26487,56.70314],[-159.27989,56.71567],[-159.03835,56.80601],[-158.95747,56.85118],[-158.91073,56.8148],[-158.85329,56.79262],[-158.78359,56.78075],[-158.6603,56.78901],[-158.64229,56.81285],[-158.64284,56.83661],[-158.69979,56.92736],[-158.65994,57.03458],[-158.51843,57.16055],[-158.37625,57.26554],[-158.14971,57.34492],[-158.06004,57.38746],[-158.03425,57.39023],[-157.99467,57.41423],[-157.93162,57.47621],[-157.7725,57.54706],[-157.67889,57.56389],[-157.68042,57.53773],[-157.64939,57.50033],[-157.58691,57.48716],[-157.57347,57.52273],[-157.59964,57.60795],[-157.69129,57.61113],[-157.71064,57.63995],[-157.70378,57.72177],[-157.67106,57.77287],[-157.64223,57.86878],[-157.5966,58.08867],[-157.58364,58.12431],[-157.55656,58.14845],[-157.53333,58.16034],[-157.39735,58.17338],[-157.35232,58.2191],[-157.37451,58.23212],[-157.42333,58.21136],[-157.54156,58.27188],[-157.55686,58.33071],[-157.53618,58.3916],[-157.46088,58.49969],[-157.35849,58.53388],[-157.25146,58.62079],[-157.07791,58.7081],[-157.00823,58.81714],[-157.01239,58.87589],[-156.96665,58.90407],[-156.97595,58.9409],[-157.02952,58.9562],[-157.04063,58.91339],[-157.07058,58.88782],[-157.18955,58.84772],[-157.27545,58.83614],[-157.42953,58.79107],[-157.48406,58.78596],[-157.53265,58.77264],[-157.5506,58.75451],[-157.69647,58.72998],[-157.8554,58.67828],[-158.03659,58.63425],[-158.19028,58.61371],[-158.27304,58.63347],[-158.32704,58.65984],[-158.35148,58.72769],[-158.40048,58.76118],[-158.53852,58.78839],[-158.56483,58.80271],[-158.56572,58.87583],[-158.61968,58.91105],[-158.71744,58.87246],[-158.74531,58.8741],[-158.76775,58.86426],[-158.79079,58.80842],[-158.77125,58.76511],[-158.80096,58.73284],[-158.84823,58.72274],[-158.86121,58.69558],[-158.82785,58.62643],[-158.70405,58.48276],[-158.79532,58.40803],[-158.88093,58.39067],[-159.06335,58.42314],[-159.24229,58.61907],[-159.39066,58.76236],[-159.50177,58.8243],[-159.64355,58.84506],[-159.58981,58.89036],[-159.58697,58.90031],[-159.61612,58.9316],[-159.65736,58.93871],[-159.73293,58.93074],[-159.75375,58.85572],[-159.80878,58.86154],[-159.79292,58.82397],[-159.80631,58.80559],[-159.90839,58.7799],[-159.99567,58.8483],[-159.98535,58.87046],[-160.05405,58.887],[-160.09311,58.8608],[-160.15053,58.86606],[-160.15448,58.91687],[-160.23279,58.90113],[-160.28635,58.94501],[-160.32292,58.95395],[-160.25659,58.99448],[-160.31778,59.07048],[-160.47658,59.02605],[-160.64178,58.96449],[-160.75307,58.91043],[-160.83536,58.82349],[-160.85519,58.88252],[-160.99974,58.85666],[-161.33798,58.74291],[-161.37271,58.70796],[-161.37231,58.66617],[-161.52135,58.63314],[-161.55054,58.61116],[-161.62645,58.60258],[-161.68291,58.56467],[-161.752,58.55184],[-161.7663,58.59922],[-161.87122,58.63748],[-162.06627,58.6208],[-162.17172,58.64844],[-161.99464,58.68883],[-161.93916,58.65561],[-161.87721,58.66614],[-161.85906,58.70864],[-161.7695,58.77494],[-161.75662,58.82648],[-161.78398,58.96942],[-161.82817,59.0627],[-161.98196,59.151],[-162.04858,59.25418],[-162.01898,59.29228],[-161.94299,59.26383],[-161.95653,59.36177],[-161.82813,59.42819],[-161.79038,59.4682],[-161.73831,59.46701],[-161.70253,59.49091],[-161.85475,59.64621],[-161.91116,59.74174],[-162.09236,59.8811],[-162.10856,59.95386],[-162.17176,59.98416],[-162.20722,60.02183],[-162.23404,60.09134],[-162.20214,60.11645],[-162.18844,60.15651],[-162.21637,60.17419],[-162.25256,60.17862],[-162.28709,60.12217],[-162.32148,60.10797],[-162.36019,60.14736],[-162.37103,60.17862],[-162.42634,60.18533],[-162.44573,60.17645],[-162.49235,60.1218],[-162.47676,60.04769],[-162.50365,59.99923],[-162.62257,59.97181],[-162.73859,59.97632],[-162.76001,59.95801],[-162.97498,59.90644],[-163.17263,59.84506],[-163.38767,59.81588],[-163.70479,59.7948],[-163.9308,59.80385],[-164.11512,59.83669],[-164.16032,59.86468],[-164.20181,59.91612],[-164.20984,59.94287],[-164.17871,59.96181],[-164.12543,59.96463],[-164.11508,59.97317],[-164.13181,59.99118],[-164.1916,60.0245],[-164.33611,60.05553],[-164.38547,60.07719],[-164.49856,60.17055],[-164.49432,60.18483],[-164.50568,60.1943],[-164.6195,60.23494],[-164.69889,60.2963],[-164.77723,60.29383],[-164.8993,60.31679],[-165.00558,60.35981],[-165.1294,60.43371],[-165.12073,60.4512],[-165.04907,60.46152],[-164.99787,60.48046],[-164.96144,60.50839],[-164.96549,60.5367],[-165.05744,60.54463],[-165.19045,60.498],[-165.24444,60.4963],[-165.36298,60.50687],[-165.42035,60.55069],[-165.36768,60.58116],[-165.26872,60.57949],[-165.06315,60.68865],[-165.02754,60.68601],[-164.97125,60.71143],[-164.96541,60.72431],[-165.0239,60.75313],[-165.04258,60.78443],[-164.97766,60.79036],[-164.92418,60.80933],[-164.93931,60.82346],[-165.02143,60.81509],[-165.03018,60.83805],[-165.00368,60.87558],[-164.9039,60.94221],[-164.94007,60.94537],[-165.0071,60.92206],[-165.03204,60.90399],[-165.01694,60.89107],[-165.08091,60.86022],[-165.13249,60.85014],[-165.17677,60.84715],[-165.17753,60.85887],[-165.22348,60.89645],[-165.21694,60.91432],[-165.15711,60.91736],[-165.15523,60.92919],[-165.19494,60.9739],[-165.19027,60.98307],[-165.11568,61.0161],[-165.02026,61.01115],[-164.96153,61.02417],[-164.92783,61.08439],[-164.87045,61.07956],[-164.86801,61.09639],[-164.89129,61.10825],[-164.99127,61.10723],[-164.9957,61.05803],[-165.02955,61.05401],[-165.11978,61.07864],[-165.17532,61.12093],[-165.16586,61.13657],[-165.17299,61.14692],[-165.30798,61.18182],[-165.32555,61.16931],[-165.34439,61.12369],[-165.34344,61.07056],[-165.40301,61.06706],[-165.54961,61.08816],[-165.59068,61.11117],[-165.632,61.22071],[-165.62332,61.27843],[-165.66289,61.29457],[-165.78744,61.31006],[-165.83137,61.30672],[-165.8796,61.33504],[-165.91545,61.38769],[-165.91861,61.41909],[-165.76723,61.45695],[-165.7485,61.47645],[-165.75432,61.4987],[-165.80763,61.52917],[-165.9125,61.5562],[-165.96403,61.55592],[-165.99954,61.53972],[-166.07552,61.53267],[-166.08868,61.52289],[-166.05824,61.50042],[-166.10827,61.49247],[-166.16523,61.55062],[-166.18269,61.58848],[-166.15898,61.70044],[-166.14376,61.72435],[-166.13302,61.72192],[-166.13941,61.63231],[-165.80993,61.67303],[-165.81,61.68936],[-165.85679,61.69073],[-165.99385,61.7231],[-166.09208,61.80073],[-166.09431,61.81386],[-165.95526,61.83241],[-165.75841,61.82544],[-165.73044,61.84208],[-165.64022,61.84804],[-165.60004,61.85966],[-165.70348,61.92157],[-165.75681,62.00634],[-165.74352,62.06228],[-165.67204,62.13989],[-165.33772,62.35903],[-165.26927,62.42735],[-165.09616,62.52245],[-165.04604,62.54042],[-164.77023,62.59208],[-164.77724,62.60908],[-164.89374,62.59967],[-164.94046,62.61843],[-164.93214,62.65107],[-164.91291,62.6575],[-164.8659,62.64582],[-164.85711,62.63551],[-164.81711,62.6367],[-164.85718,62.76883],[-164.8773,62.78432],[-164.87564,62.80625],[-164.83632,62.85217],[-164.76825,62.87133],[-164.74213,62.92014],[-164.74551,62.94487],[-164.76612,62.95823],[-164.71684,63.00626],[-164.58373,63.05846],[-164.5802,63.07013],[-164.61162,63.07767],[-164.64119,63.07268],[-164.63394,63.09782],[-164.42345,63.21198],[-164.20947,63.25147],[-164.03656,63.2612],[-163.88506,63.22231],[-163.73265,63.21326],[-163.61627,63.14121],[-163.59012,63.14609],[-163.52994,63.1354],[-163.50722,63.11368],[-163.3162,63.03776],[-163.13085,63.04939],[-163.0405,63.06215],[-162.9983,63.08929],[-162.84456,63.15419],[-162.83493,63.16462],[-162.83917,63.193],[-162.82112,63.2056],[-162.66261,63.22991],[-162.43706,63.37784],[-162.42874,63.40105],[-162.38462,63.4358],[-162.27109,63.48771],[-162.29673,63.54011],[-162.25241,63.54175],[-162.12325,63.51281],[-162.07316,63.51377],[-162.04169,63.48965],[-162.05054,63.47059],[-162.02555,63.44754],[-161.8399,63.44731],[-161.67653,63.465],[-161.55308,63.44922],[-161.31018,63.47131],[-161.13676,63.50453],[-161.10272,63.5478],[-160.92488,63.64481],[-160.7833,63.75289],[-160.76556,63.77355],[-160.76629,63.83519],[-160.8108,63.90465],[-160.89246,63.98594],[-160.93374,64.04973],[-160.95164,64.09007],[-160.95642,64.19173],[-160.94686,64.20416],[-160.97604,64.23576],[-161.22894,64.37075],[-161.26352,64.39817],[-161.41038,64.42211],[-161.46303,64.42007],[-161.49293,64.40785],[-161.5049,64.42307],[-161.46905,64.50657],[-161.38862,64.53278],[-161.19803,64.49663],[-161.02418,64.49972],[-161.0151,64.50212],[-161.01714,64.51712],[-161.05306,64.5285],[-161.04915,64.54095],[-160.94049,64.55],[-160.80205,64.61035],[-160.79161,64.62305],[-160.7834,64.71716],[-160.86957,64.7838],[-160.93597,64.82237],[-161.07972,64.86955],[-161.13306,64.89822],[-161.14965,64.91199],[-161.14572,64.92053],[-161.17601,64.92716],[-161.1952,64.91818],[-161.19859,64.8944],[-161.21376,64.88332],[-161.29305,64.85324],[-161.35787,64.80592],[-161.36748,64.77891],[-161.41349,64.76272],[-161.51821,64.75325],[-161.63029,64.77129],[-161.66726,64.78898],[-161.90243,64.70385],[-162.16852,64.68029],[-162.21662,64.65621],[-162.23448,64.61934],[-162.54,64.53093],[-162.61422,64.4707],[-162.60302,64.44867],[-162.63224,64.38573],[-162.71922,64.35997],[-162.79017,64.32518],[-162.81,64.35265],[-162.80227,64.39533],[-162.85856,64.47486],[-162.85756,64.49978],[-162.94078,64.54242],[-162.96925,64.54687],[-163.04262,64.54005],[-163.02716,64.47795],[-163.09149,64.43774],[-163.10746,64.40919],[-163.15079,64.39725],[-163.17534,64.39933],[-163.22921,64.43002],[-163.25303,64.4695],[-163.4129,64.52499],[-163.59783,64.56336],[-163.82974,64.57497],[-163.97435,64.55137],[-164.14706,64.56455],[-164.30727,64.56149],[-164.49133,64.52982],[-164.80775,64.44943],[-165.01652,64.43439],[-165.41344,64.49794],[-166.18955,64.5758],[-166.23694,64.58356],[-166.41393,64.65123],[-166.4838,64.73342],[-166.47898,64.79704],[-166.43052,64.80772],[-166.4102,64.82797],[-166.41562,64.87193],[-166.53052,64.93711],[-166.69081,64.98537],[-166.70528,64.99985],[-166.68876,65.01803],[-166.69645,65.03586],[-166.8604,65.09087],[-166.91192,65.12596],[-166.90669,65.13632],[-166.88668,65.13876],[-166.81679,65.11709],[-166.67032,65.10972],[-166.63841,65.11359],[-166.63445,65.12587],[-166.60607,65.13599],[-166.50957,65.15272],[-166.45998,65.18328],[-166.4753,65.22433],[-166.34719,65.27634],[-166.37772,65.29798],[-166.51864,65.33582],[-166.67972,65.32686],[-166.796,65.33718],[-167.02678,65.38197],[-167.39846,65.40026],[-167.47402,65.41274],[-167.71089,65.49852],[-167.85123,65.53818],[-168.0752,65.57636],[-168.13466,65.64084],[-168.10371,65.68555],[-167.97989,65.72797],[-167.53964,65.82084],[-167.31493,65.88504],[-166.82768,66.05128],[-166.52616,66.14185],[-166.33097,66.18951],[-166.12723,66.1552],[-166.12249,66.14942],[-166.14887,66.13775],[-166.04647,66.10783],[-165.893,66.11577],[-165.75878,66.09292],[-165.69305,66.1033],[-165.6619,66.11794],[-165.58851,66.11969],[-165.58429,66.12949],[-165.54489,66.1429],[-165.55168,66.16158],[-165.69051,66.20203],[-165.81347,66.20717],[-165.86715,66.22087],[-165.87751,66.24031],[-165.85358,66.26318],[-165.8825,66.3116],[-165.18708,66.46515],[-164.71101,66.54254],[-164.40073,66.58111],[-163.97958,66.59395],[-163.98571,66.57609],[-163.90834,66.55597],[-163.85048,66.5631],[-163.75417,66.55128],[-163.72718,66.51639],[-163.73025,66.49137],[-163.76197,66.45487],[-163.84422,66.41898],[-163.87311,66.38902],[-163.8731,66.32855],[-163.83982,66.30408],[-163.83008,66.272],[-163.90481,66.2303],[-164.07877,66.20176],[-164.09271,66.18454],[-164.0075,66.17939],[-163.91655,66.19049],[-163.8474,66.12211],[-163.77247,66.08192],[-163.76751,66.0608],[-163.62392,66.05828],[-163.49585,66.08539],[-163.34476,66.08494],[-163.28777,66.06923],[-163.14673,66.05949],[-162.75071,66.09016],[-162.63599,66.04037],[-162.53075,66.04506],[-162.45767,66.05858],[-162.42373,66.04898],[-162.41345,66.03508],[-162.37215,66.02799],[-162.26967,66.0421],[-162.13952,66.07882],[-162.12179,66.06739],[-162.0257,66.06283],[-161.95004,66.0403],[-161.83802,66.02258],[-161.77554,66.07373],[-161.6653,66.12218],[-161.54843,66.23991],[-161.48454,66.26243],[-161.34119,66.2551],[-161.32078,66.22359],[-161.26365,66.21415],[-161.19897,66.21095],[-161.08734,66.23421],[-160.99397,66.23444],[-160.99854,66.25494],[-161.06103,66.2838],[-161.08916,66.31514],[-161.12951,66.33625],[-161.52555,66.39705],[-161.6944,66.39617],[-161.91295,66.34444],[-161.86339,66.44078],[-161.87488,66.51145],[-162.02904,66.5865],[-162.09145,66.60596],[-162.14038,66.66474],[-162.22863,66.70977],[-162.50142,66.7425],[-162.51262,66.77773],[-162.6267,66.85957],[-162.60105,66.89845],[-162.49744,66.91986],[-162.34635,66.93479],[-162.28112,66.91568],[-162.22868,66.86662],[-162.1173,66.79848],[-162.07371,66.78332],[-162.01362,66.77941],[-162.01146,66.75906],[-162.02962,66.73458],[-162.08151,66.69305],[-162.06907,66.6457],[-161.96886,66.60261],[-161.91586,66.55134],[-161.8771,66.53688],[-161.62433,66.45014],[-161.57413,66.43857],[-161.51645,66.44184],[-161.32635,66.47837],[-161.2798,66.50518],[-161.29321,66.52059],[-161.4836,66.52563],[-161.49499,66.53444],[-161.48287,66.54372],[-161.4904,66.56084],[-161.69313,66.62056],[-161.88167,66.7168],[-161.86154,66.79708],[-161.84626,66.81365],[-161.79631,66.83313],[-161.68851,66.9598],[-161.56668,66.93478],[-161.48917,66.93695],[-161.48538,66.96082],[-161.53053,66.98495],[-161.62216,67.00815],[-161.69739,67.01085],[-161.71171,67.00104],[-161.79917,67.0475],[-161.85019,67.05219],[-162.12318,67.02579],[-162.23923,66.99381],[-162.35395,66.99513],[-162.41587,66.98471],[-162.46262,66.99432],[-162.46552,67.02663],[-162.48126,67.04311],[-162.50452,67.03963],[-162.51905,67.01655],[-162.64026,67.01087],[-162.69907,67.05548],[-162.83042,67.03617],[-162.85096,67.01792],[-162.90135,67.00683],[-163.09785,67.04119],[-163.57701,67.09249],[-163.69887,67.11444],[-163.74134,67.12912],[-163.74082,67.20996],[-163.75859,67.25644],[-163.85358,67.3881],[-164.00703,67.5357],[-164.14438,67.61723],[-164.53394,67.72561],[-164.9073,67.86784],[-165.12957,67.94183],[-165.24085,67.99871],[-165.49355,68.05928],[-165.86343,68.09337],[-165.96553,68.12192],[-165.99438,68.14731],[-166.24528,68.24528],[-166.47461,68.30527],[-166.68084,68.34091],[-166.85064,68.33309],[-166.70614,68.37178],[-166.37756,68.42241],[-166.34238,68.43397],[-166.30596,68.46154],[-166.29534,68.5109],[-166.22611,68.57619],[-166.22976,68.61377],[-166.19983,68.67856],[-166.18779,68.77871],[-166.2225,68.86044],[-166.21443,68.87952],[-165.57248,68.85295],[-165.32704,68.85811],[-164.25316,68.93094],[-163.97368,68.98504],[-163.82745,69.04063],[-163.65586,69.09057],[-163.53531,69.14166],[-163.29796,69.27473],[-163.2309,69.28446],[-163.11032,69.37534],[-163.10057,69.41422],[-163.05207,69.48197],[-163.03631,69.48903],[-163.01646,69.53814],[-163.03029,69.55659],[-163.11662,69.59342],[-163.02459,69.60861],[-162.91696,69.69251],[-162.96109,69.71716],[-163.03539,69.72741],[-163.0126,69.75746],[-162.91187,69.79947],[-162.8406,69.81176],[-162.61634,69.917],[-162.58791,69.91564],[-162.47155,69.98313],[-162.46278,70.04222],[-162.39453,70.04457],[-162.35056,70.0588],[-162.35647,70.07639],[-162.31249,70.10928],[-162.15816,70.16153],[-162.01926,70.22404],[-161.92295,70.2916],[-161.85,70.30943],[-161.84891,70.28218],[-161.77979,70.25541],[-161.75918,70.27244],[-161.69219,70.26709],[-161.66359,70.24619],[-161.63389,70.24069],[-161.39676,70.24061],[-161.25472,70.25661],[-161.01642,70.32774],[-160.99276,70.31623],[-160.83954,70.34453],[-160.48978,70.45446],[-160.48006,70.46597],[-160.21483,70.55909],[-160.05673,70.63283],[-159.64838,70.79437],[-159.20908,70.87007],[-159.14763,70.87665],[-159.15651,70.85922],[-159.13248,70.82836],[-159.16084,70.81796],[-159.33102,70.80739],[-159.34307,70.78311],[-159.2993,70.76001],[-159.00068,70.76434],[-158.95457,70.77271],[-158.97662,70.79638],[-158.6561,70.78795],[-158.3895,70.79973],[-158.38582,70.8257],[-158.15772,70.82081],[-157.841,70.86102],[-157.50246,70.94866],[-157.3928,70.98791],[-157.24908,71.05254],[-157.07249,71.15452],[-156.80965,71.28689],[-156.62014,71.34421],[-156.56865,71.35256],[-156.56151,71.31681],[-156.53112,71.29634],[-156.40266,71.26794],[-156.2142,71.25939],[-156.07441,71.24249],[-156.0292,71.20321],[-156.04461,71.1847],[-156.01857,71.17204],[-155.95796,71.18621],[-155.9202,71.20716],[-155.88418,71.19006],[-155.7608,71.19466],[-155.56692,71.16514],[-155.56177,71.12846],[-155.51112,71.09035],[-155.53335,71.06768],[-155.70549,71.02015],[-155.76207,70.98564],[-155.83088,70.96558],[-155.97841,70.9622],[-155.99568,70.9478],[-156.01442,70.89864],[-155.96856,70.86293],[-155.96919,70.82798],[-155.98098,70.81736],[-155.97194,70.80683],[-155.90661,70.80999],[-155.8751,70.8289],[-155.64352,70.82421],[-155.5042,70.8603],[-155.48798,70.8753],[-155.49304,70.91737],[-155.47594,70.94355],[-155.40422,70.96748],[-155.34387,71.00445],[-155.26004,71.01523],[-155.21143,70.97802],[-155.18278,70.97822],[-155.15992,71.00277],[-155.177,71.02745],[-155.27599,71.07046],[-155.15052,71.11205],[-155.12032,71.07342],[-155.07536,71.07204],[-155.06143,71.092],[-155.08578,71.12757],[-155.06076,71.14542],[-155.03174,71.14647],[-154.77733,71.08323],[-154.58113,71.00732],[-154.56759,70.98993],[-154.59405,70.97699],[-154.65437,70.90332],[-154.64579,70.86917],[-154.57739,70.83534],[-154.50187,70.82176],[-154.3526,70.83483],[-154.2608,70.81516],[-154.22331,70.79523],[-154.23917,70.77687],[-154.18186,70.76833],[-154.06998,70.7937],[-153.99558,70.82188],[-153.93292,70.87868],[-153.89048,70.88572],[-153.74725,70.89502],[-153.48599,70.88587],[-153.35911,70.89829],[-153.23848,70.92247],[-153.13731,70.92544],[-153.01704,70.904],[-152.77442,70.88528],[-152.59015,70.88693],[-152.25997,70.84282],[-152.22646,70.83104],[-152.18865,70.79814],[-152.28376,70.7856],[-152.37081,70.73007],[-152.37727,70.71468],[-152.47153,70.68884],[-152.46051,70.64611],[-152.43378,70.61693],[-152.36574,70.60124],[-152.33261,70.61287],[-152.26405,70.59265],[-152.06068,70.57493],[-152.06575,70.56307],[-152.02607,70.55934],[-151.97579,70.56321],[-151.8167,70.5457],[-151.71821,70.55529],[-151.69516,70.54967],[-151.76025,70.51671],[-151.72858,70.49537],[-151.91921,70.47269],[-151.94638,70.45252],[-151.87612,70.43076],[-151.55465,70.4359],[-151.3432,70.40888],[-151.22992,70.37984],[-151.18739,70.38478],[-151.18044,70.4304],[-151.12311,70.43937],[-151.1161,70.4224],[-151.06043,70.41873],[-151.02634,70.44146],[-150.83497,70.46017],[-150.78707,70.47712],[-150.76203,70.49722],[-150.35738,70.49374],[-150.33885,70.47107],[-150.37028,70.44786],[-150.35054,70.436],[-150.24533,70.44166],[-150.1129,70.43137],[-149.8667,70.51077],[-149.81092,70.49048],[-149.66117,70.5092],[-149.56528,70.49645],[-149.46176,70.51827],[-149.41873,70.49226],[-149.17915,70.4857],[-149.08208,70.46489],[-148.95944,70.42394],[-148.85807,70.42292],[-148.78958,70.40275],[-148.72808,70.41303],[-148.69677,70.42916],[-148.61057,70.42259],[-148.47704,70.35907],[-148.46454,70.34016],[-148.47703,70.32087],[-148.46615,70.31361],[-148.41125,70.30263],[-148.35144,70.30445],[-148.20348,70.34819],[-148.10723,70.3428],[-148.07686,70.32751],[-147.86372,70.29332],[-147.81764,70.27694],[-147.7651,70.21981],[-147.68172,70.19995],[-147.50527,70.20038],[-147.38527,70.18526],[-147.24412,70.21896],[-147.21921,70.17883],[-147.18212,70.16035],[-146.99111,70.14761],[-146.88577,70.18592],[-146.73402,70.17548],[-146.50813,70.18604],[-146.30956,70.17891],[-146.17267,70.16589],[-146.09683,70.14515],[-146.00641,70.1404],[-145.87292,70.14883],[-145.8583,70.166],[-145.62331,70.08437],[-145.50568,70.07453],[-145.43483,70.03699],[-145.24717,70.01789],[-145.17507,69.99171],[-144.99013,69.97768],[-144.95364,69.95926],[-144.86762,69.97227],[-144.85454,69.98636],[-144.73898,69.97011],[-144.61867,69.96931],[-144.46329,70.02573],[-144.23105,70.03591],[-144.12264,70.05914],[-144.07963,70.05896],[-143.91149,70.12984],[-143.78221,70.12467],[-143.75306,70.13724],[-143.59518,70.14252],[-143.59381,70.1526],[-143.57499,70.1546],[-143.49806,70.1401],[-143.5161,70.11636],[-143.50349,70.09346],[-143.35796,70.09497],[-143.3179,70.11114],[-143.25558,70.11933],[-143.15993,70.0992],[-143.11295,70.07827],[-143.05129,70.07819],[-143.0381,70.09389],[-142.74681,70.04253],[-142.45293,69.95812],[-142.40996,69.93365],[-142.40437,69.91651],[-142.27216,69.90704],[-142.0817,69.8555],[-142.00932,69.80073],[-141.84284,69.81193],[-141.60623,69.7617],[-141.43084,69.69514],[-141.42886,69.66266],[-141.37772,69.63463],[-141.25856,69.63225],[-141.21046,69.68419],[-141.11923,69.67353],[-141.00267,69.64561],[-141.00184,60.30611],[-140.53509,60.22422],[-140.47229,60.31059],[-139.98914,60.18524],[-139.69836,60.34042],[-139.08667,60.35765],[-139.08225,60.32382],[-139.20035,60.0907],[-139.04643,59.99824],[-138.70205,59.91025],[-138.66297,59.81023],[-138.62093,59.77056],[-137.60428,59.24306],[-137.49856,58.98669],[-137.52642,58.90683],[-137.44738,58.90951],[-137.26475,59.00235],[-136.8639,59.13847],[-136.82663,59.15839],[-136.58152,59.16491],[-136.46681,59.28425],[-136.47294,59.42168],[-136.30185,59.46413],[-136.23423,59.52473],[-136.22575,59.60457],[-136.19035,59.63985],[-136.00516,59.65816],[-135.85417,59.69185],[-135.47744,59.79963],[-135.28492,59.71489],[-135.16674,59.63224],[-135.11459,59.62342],[-135.02746,59.56369],[-135.04004,59.44479],[-134.96197,59.28038],[-134.7662,59.23143],[-134.56669,59.12828],[-134.48124,59.12807],[-134.3898,59.03267],[-134.36995,58.97174],[-134.32896,58.91959],[-134.25053,58.85805],[-133.84039,58.72799],[-133.69984,58.60729],[-133.44337,58.44241],[-133.4377,58.35807],[-133.34373,58.27092],[-133.17644,58.15015],[-133.07642,57.99976],[-132.86932,57.84294],[-132.75681,57.70509],[-132.65812,57.61949],[-132.55918,57.50393],[-132.36798,57.34869],[-132.25219,57.21565],[-132.21444,57.10817],[-132.11507,57.0456],[-132.08011,56.92415],[-132.00511,56.84292],[-131.93658,56.81743],[-131.8865,56.77608],[-131.81881,56.66469],[-131.73601,56.61317],[-131.58122,56.61328],[-131.42841,56.53713],[-131.16792,56.44836],[-131.0857,56.40654],[-130.78223,56.36751],[-130.62248,56.26794],[-130.46687,56.23979],[-130.42558,56.14068],[-130.24554,56.09688],[-130.10276,56.1167],[-130.00426,55.99338],[-130.0132,55.91638],[-130.08451,55.824],[-130.12854,55.80215],[-130.1506,55.76703],[-130.15006,55.7271],[-130.11168,55.68205],[-130.12674,55.58128],[-130.12013,55.56392],[-130.08541,55.49152],[-130.0443,55.45197],[-130.02356,55.33826],[-129.98235,55.30208],[-129.98006,55.28423],[-130.11892,55.17607],[-130.18754,55.06466],[-130.25908,54.98764],[-130.3395,54.92138],[-130.4746,54.8381],[-130.56937,54.79087],[-130.63674,54.77846],[-130.65775,54.76183],[-130.62807,54.73934],[-130.68619,54.71691],[-130.73742,54.75355],[-130.74723,54.7726],[-130.73321,54.77961],[-130.7363,54.7948],[-130.77361,54.82084],[-130.78744,54.8229],[-130.79212,54.78478],[-130.83685,54.76544],[-130.91594,54.78962],[-130.9471,54.82605],[-130.94103,54.84159],[-130.9604,54.93368],[-130.9491,54.96785],[-131.01206,54.99624],[-130.98416,55.08441],[-131.01322,55.09007],[-131.0523,55.11816],[-131.08558,55.15823],[-131.09381,55.19134],[-130.9853,55.24729],[-130.95296,55.27309],[-130.95157,55.29165],[-130.92507,55.30071],[-130.86492,55.29837],[-130.88215,55.35883],[-130.92299,55.43511],[-130.8813,55.49558],[-130.87052,55.53377],[-130.90187,55.69738],[-130.93902,55.75483],[-130.98477,55.79935],[-131.09396,55.89567],[-131.17141,55.94295],[-131.21648,55.98434],[-131.23694,55.98229],[-131.2417,55.95507],[-131.15683,55.90115],[-131.07014,55.82855],[-131.04097,55.76284],[-130.96599,55.68897],[-130.92765,55.57659],[-130.94518,55.55773],[-130.97892,55.55083],[-130.9871,55.53987],[-130.99438,55.4724],[-130.96959,55.39328],[-130.9475,55.38082],[-130.92817,55.33943],[-130.96833,55.31663],[-130.96409,55.33266],[-131.00059,55.39801],[-131.02904,55.40839],[-131.03419,55.37936],[-131.01988,55.3479],[-131.03136,55.28478],[-131.16049,55.19748],[-131.23552,55.19757],[-131.26309,55.20832],[-131.3027,55.25022],[-131.23043,55.2978],[-131.1916,55.36053],[-131.19749,55.39105],[-131.2921,55.38395],[-131.28702,55.35826],[-131.25446,55.3297],[-131.28499,55.28644],[-131.40293,55.23806],[-131.4245,55.23876],[-131.4756,55.30326],[-131.46297,55.31265],[-131.47198,55.32339],[-131.50981,55.33231],[-131.5282,55.29535],[-131.55004,55.29339],[-131.63903,55.33948],[-131.69874,55.35487],[-131.73244,55.37755],[-131.74183,55.39807],[-131.84416,55.45674],[-131.84168,55.52675],[-131.73305,55.54856],[-131.65417,55.59243],[-131.72632,55.63593],[-131.70115,55.69696],[-131.73341,55.73083],[-131.71931,55.7491],[-131.64963,55.76873],[-131.64029,55.78527],[-131.67821,55.79984],[-131.70526,55.78994],[-131.71374,55.85326],[-131.68904,55.87549],[-131.68951,55.89023],[-131.72038,55.89466],[-131.77674,55.87878],[-131.83696,55.87547],[-131.81631,55.83745],[-131.77703,55.82326],[-131.77125,55.81003],[-131.82616,55.71858],[-131.82889,55.66715],[-131.89741,55.60391],[-131.93932,55.62384],[-131.96312,55.61526],[-131.93669,55.53515],[-131.97179,55.49828],[-132.0605,55.54303],[-132.14112,55.55901],[-132.18321,55.58813],[-132.22417,55.70177],[-132.28359,55.76177],[-132.26507,55.76217],[-132.22965,55.74049],[-132.19048,55.7425],[-132.18316,55.80083],[-132.11336,55.81272],[-132.08605,55.83244],[-132.0418,55.9588],[-132.07034,56.04673],[-132.03337,56.09557],[-132.0113,56.07736],[-131.97029,56.11404],[-131.93573,56.17721],[-131.9434,56.19256],[-131.99389,56.19335],[-132.01813,56.18315],[-132.03485,56.13343],[-132.10402,56.10811],[-132.17695,56.05571],[-132.1297,55.95786],[-132.13547,55.94163],[-132.1702,55.91923],[-132.22424,55.93042],[-132.27996,55.92484],[-132.32049,55.88765],[-132.30931,55.86506],[-132.32324,55.85188],[-132.3723,55.85036],[-132.3973,55.87887],[-132.40119,55.95047],[-132.4928,56.06644],[-132.52208,56.07704],[-132.57368,56.0707],[-132.62179,56.05614],[-132.64008,56.03319],[-132.7087,56.11212],[-132.7234,56.14581],[-132.71834,56.2177],[-132.68989,56.23874],[-132.64425,56.23281],[-132.60149,56.24007],[-132.57502,56.29647],[-132.52936,56.33855],[-132.43163,56.35216],[-132.40368,56.33481],[-132.38279,56.2992],[-132.35871,56.2908],[-132.34068,56.34175],[-132.38938,56.49137],[-132.25339,56.44954],[-132.23393,56.41674],[-132.23847,56.39871],[-132.20437,56.37209],[-132.18116,56.38713],[-132.20857,56.45712],[-132.25961,56.48763],[-132.29047,56.48702],[-132.36129,56.53423],[-132.36384,56.58861],[-132.3193,56.60712],[-132.28422,56.6367],[-132.28146,56.66559],[-132.29866,56.67798],[-132.34889,56.66422],[-132.37159,56.67247],[-132.45208,56.67247],[-132.52845,56.70206],[-132.51713,56.72863],[-132.37362,56.82035],[-132.43833,56.82112],[-132.50551,56.78549],[-132.532,56.75714],[-132.63746,56.78091],[-132.7704,56.83749],[-132.81789,56.8969],[-132.87034,56.92568],[-132.91197,56.96665],[-132.91897,56.99367],[-132.85364,57.00534],[-132.81368,57.03022],[-132.83222,57.07041],[-132.85328,57.08008],[-132.87012,57.07842],[-132.91649,57.04009],[-132.98431,57.05485],[-132.99394,57.03235],[-133.07648,57.08173],[-133.18807,57.08897],[-133.22466,57.13652],[-133.32236,57.11273],[-133.5172,57.17778],[-133.54482,57.24257],[-133.52284,57.27858],[-133.48974,57.30519],[-133.45594,57.30397],[-133.42595,57.28599],[-133.30757,57.29005],[-133.28705,57.30292],[-133.27483,57.33062],[-133.35472,57.33325],[-133.46827,57.36422],[-133.476,57.38039],[-133.46118,57.39458],[-133.52514,57.49034],[-133.51675,57.54391],[-133.4882,57.55139],[-133.48122,57.57147],[-133.50598,57.57846],[-133.57895,57.56509],[-133.62076,57.57892],[-133.66439,57.61171],[-133.68096,57.64827],[-133.65453,57.71369],[-133.58221,57.71509],[-133.52224,57.68366],[-133.40498,57.66378],[-133.18886,57.58907],[-133.16246,57.5998],[-133.25113,57.64997],[-133.29106,57.66536],[-133.32253,57.66583],[-133.54503,57.76797],[-133.55989,57.77746],[-133.56979,57.85936],[-133.61018,57.86065],[-133.6313,57.84677],[-133.63705,57.7922],[-133.65811,57.78637],[-133.70914,57.79274],[-133.81471,57.83298],[-133.99933,57.99902],[-134.05752,58.03947],[-134.14481,58.17124],[-134.5871,58.2058],[-135.0741,58.50212],[-135.21913,58.97497],[-135.17576,58.97387],[-135.20858,59.07682],[-135.28396,59.19253],[-135.43033,59.3272],[-135.44453,59.27769],[-135.4296,59.24272],[-135.40369,59.22277],[-135.36406,59.2114],[-135.32946,59.1527],[-135.37783,59.09926],[-135.38235,59.06075],[-135.38264,59.03337],[-135.32671,59.01147],[-135.29729,58.95986],[-135.30591,58.90134],[-135.33995,58.88896],[-135.2432,58.78311],[-135.23388,58.73549],[-135.14232,58.61637],[-135.13752,58.57784],[-135.15906,58.59553],[-135.18636,58.59777],[-135.18937,58.57624],[-135.08898,58.42302],[-135.05807,58.34945],[-135.05349,58.2905],[-135.06977,58.30269],[-135.09581,58.29723],[-135.1077,58.26503],[-135.05623,58.18988],[-135.15905,58.21018],[-135.22028,58.23558],[-135.2772,58.23363],[-135.30651,58.24292],[-135.39826,58.32769],[-135.43306,58.3999],[-135.44738,58.39989]]]]}},{"type":"Feature","properties":{"code":"12","nom":"Florida"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-80.25058,25.34193],[-80.3514,25.19062],[-80.34986,25.16882],[-80.37708,25.13049],[-80.47387,25.06025],[-80.49478,25.02302],[-80.56583,24.95816],[-80.61169,24.93842],[-80.6594,24.89743],[-80.62166,24.94427],[-80.55879,24.97151],[-80.54597,25.01477],[-80.50914,25.02832],[-80.46065,25.0789],[-80.49471,25.10227],[-80.47748,25.10741],[-80.4504,25.08875],[-80.43358,25.10632],[-80.44647,25.15129],[-80.41326,25.13705],[-80.39547,25.15069],[-80.39191,25.19221],[-80.3498,25.2106],[-80.33734,25.23135],[-80.33616,25.2616],[-80.36819,25.28236],[-80.32875,25.28651],[-80.29257,25.31439],[-80.25698,25.36124],[-80.24631,25.3986],[-80.21428,25.41699],[-80.18878,25.50773],[-80.17454,25.51841],[-80.17395,25.48282],[-80.2042,25.41224],[-80.25058,25.34193]]],[[[-81.58292,24.65873],[-81.56292,24.69291],[-81.53532,24.67954],[-81.5124,24.70374],[-81.45904,24.70735],[-81.45127,24.74746],[-81.43203,24.72291],[-81.42548,24.75299],[-81.39295,24.74337],[-81.36041,24.70879],[-81.31928,24.70124],[-81.29803,24.65677],[-81.3951,24.62106],[-81.41419,24.64717],[-81.47041,24.64198],[-81.48095,24.64512],[-81.4805,24.65976],[-81.49858,24.66498],[-81.51117,24.62514],[-81.603,24.58644],[-81.66421,24.57314],[-81.68528,24.55874],[-81.81289,24.54647],[-81.81445,24.56358],[-81.79406,24.586],[-81.73924,24.58997],[-81.73047,24.58196],[-81.70536,24.59765],[-81.68702,24.59253],[-81.63709,24.62141],[-81.61453,24.65058],[-81.58292,24.65873]]],[[[-82.15068,24.57633],[-82.14307,24.5934],[-82.12527,24.59743],[-82.10419,24.58826],[-82.09942,24.57252],[-82.11679,24.54914],[-82.15944,24.54821],[-82.16443,24.56338],[-82.15068,24.57633]]],[[[-81.2498,24.67336],[-81.28178,24.65375],[-81.26001,24.67485],[-81.2498,24.67336]]],[[[-80.90995,24.78115],[-80.91204,24.76505],[-80.93854,24.76753],[-81.01593,24.71988],[-81.03429,24.72734],[-81.06455,24.71545],[-81.07844,24.69238],[-81.10804,24.68859],[-81.12409,24.70487],[-81.06682,24.72393],[-81.0418,24.74297],[-81.02217,24.73309],[-80.90995,24.78115]]],[[[-81.31767,24.75729],[-81.30547,24.75661],[-81.2908,24.73686],[-81.28826,24.72088],[-81.30298,24.7142],[-81.35742,24.75683],[-81.32464,24.76721],[-81.31767,24.75729]]],[[[-80.78826,24.82422],[-80.79605,24.81194],[-80.85034,24.8026],[-80.79278,24.84392],[-80.78056,24.84052],[-80.78826,24.82422]]],[[[-80.72928,24.86536],[-80.69176,24.88576],[-80.71185,24.86332],[-80.76697,24.83616],[-80.72928,24.86536]]],[[[-82.25578,26.70344],[-82.24653,26.70643],[-82.24653,26.68344],[-82.16604,26.48968],[-82.08842,26.45518],[-82.06255,26.47013],[-82.01371,26.45426],[-82.06311,26.42546],[-82.08291,26.42206],[-82.12667,26.43628],[-82.18072,26.47626],[-82.20552,26.56654],[-82.26801,26.68279],[-82.25578,26.70344]]],[[[-84.77721,29.7074],[-84.69673,29.76993],[-84.71375,29.74139],[-84.77695,29.69219],[-84.88463,29.65225],[-84.95778,29.61264],[-85.05103,29.58693],[-85.09708,29.62522],[-85.0235,29.59707],[-84.77721,29.7074]]],[[[-85.15641,29.67963],[-85.11427,29.68866],[-85.08372,29.67902],[-85.07724,29.67086],[-85.09722,29.633],[-85.12491,29.62843],[-85.22255,29.67804],[-85.15641,29.67963]]],[[[-82.82158,27.96444],[-82.8298,27.96847],[-82.83052,28.08529],[-82.81343,28.03716],[-82.82158,27.96444]]],[[[-83.30945,30.63442],[-82.21438,30.56696],[-82.21029,30.42459],[-82.18958,30.37621],[-82.16519,30.35804],[-82.12484,30.36656],[-82.05007,30.36234],[-82.00548,30.56349],[-82.0494,30.6553],[-82.02321,30.78199],[-81.90601,30.82218],[-81.86861,30.79275],[-81.80665,30.78968],[-81.71993,30.74463],[-81.6243,30.73619],[-81.60622,30.71814],[-81.44412,30.70971],[-81.42742,30.69802],[-81.4431,30.60094],[-81.43406,30.52257],[-81.44709,30.50368],[-81.41081,30.48204],[-81.3855,30.27384],[-81.30898,29.96944],[-81.27044,29.88311],[-81.24092,29.73922],[-80.96618,29.14796],[-80.70973,28.75669],[-80.57487,28.58517],[-80.52509,28.45945],[-80.58781,28.41086],[-80.60687,28.33648],[-80.60421,28.25773],[-80.56643,28.09563],[-80.3837,27.74004],[-80.25366,27.37979],[-80.16147,27.19281],[-80.15955,27.16333],[-80.09391,27.01859],[-80.03136,26.79634],[-80.03886,26.56935],[-80.10957,26.08716],[-80.12206,25.81791],[-80.15497,25.66549],[-80.17692,25.68506],[-80.16446,25.72183],[-80.17276,25.73785],[-80.19767,25.74437],[-80.24038,25.72421],[-80.26707,25.65185],[-80.30146,25.6133],[-80.30206,25.56763],[-80.33942,25.49943],[-80.32044,25.43715],[-80.32578,25.39801],[-80.3068,25.38437],[-80.31036,25.3731],[-80.33527,25.3387],[-80.37412,25.31735],[-80.38598,25.28829],[-80.46782,25.23254],[-80.49534,25.19946],[-80.52036,25.22079],[-80.54095,25.21821],[-80.54849,25.23653],[-80.57079,25.23937],[-80.58919,25.2238],[-80.58477,25.20067],[-80.60961,25.1819],[-80.68836,25.16471],[-80.70372,25.13912],[-80.74288,25.14265],[-80.75758,25.16673],[-80.79622,25.17245],[-80.82653,25.16048],[-80.8464,25.17706],[-80.90007,25.16203],[-80.90058,25.13967],[-81.07986,25.1188],[-81.09452,25.12705],[-81.14102,25.16387],[-81.14674,25.19314],[-81.17204,25.22228],[-81.15192,25.32477],[-81.1401,25.34112],[-81.12141,25.33875],[-81.11727,25.35495],[-81.12849,25.38051],[-81.15051,25.38725],[-81.14677,25.40758],[-81.16865,25.46385],[-81.2082,25.50494],[-81.20439,25.53891],[-81.22556,25.55847],[-81.25395,25.63818],[-81.29033,25.68751],[-81.34608,25.72147],[-81.34398,25.74767],[-81.36187,25.77272],[-81.34041,25.78663],[-81.35273,25.82202],[-81.41754,25.86495],[-81.45849,25.86893],[-81.47399,25.88841],[-81.50898,25.88404],[-81.51176,25.89676],[-81.52766,25.90153],[-81.58452,25.88881],[-81.64455,25.89795],[-81.66382,25.88561],[-81.67829,25.8453],[-81.72709,25.90721],[-81.74972,25.96046],[-81.74783,25.99427],[-81.80166,26.08823],[-81.83314,26.29452],[-81.86898,26.37865],[-81.91171,26.42716],[-81.96421,26.45796],[-81.96951,26.4765],[-82.00896,26.48405],[-82.00908,26.5052],[-82.0246,26.51268],[-82.04358,26.51958],[-82.06715,26.51325],[-82.07175,26.49255],[-82.10567,26.48393],[-82.13787,26.63744],[-82.18157,26.68171],[-82.17352,26.70184],[-82.13902,26.70299],[-82.12579,26.69954],[-82.10625,26.66734],[-82.09302,26.66561],[-82.05508,26.80245],[-82.0591,26.87662],[-82.09072,26.88869],[-82.09302,26.90652],[-82.09015,26.92319],[-82.06198,26.93124],[-82.06313,26.95021],[-82.10797,26.95769],[-82.13729,26.92607],[-82.17524,26.91687],[-82.14707,26.7898],[-82.17869,26.77256],[-82.22181,26.77198],[-82.23331,26.78405],[-82.25987,26.7174],[-82.2695,26.78467],[-82.28909,26.82778],[-82.44572,27.06063],[-82.53972,27.25433],[-82.56975,27.27945],[-82.56925,27.29859],[-82.59763,27.33575],[-82.69182,27.43722],[-82.71452,27.50042],[-82.74575,27.53883],[-82.70812,27.52351],[-82.70682,27.49842],[-82.68642,27.49722],[-82.68362,27.51311],[-82.65072,27.52312],[-82.61172,27.58528],[-82.57061,27.60888],[-82.51426,27.70559],[-82.47764,27.723],[-82.4823,27.74265],[-82.43198,27.76809],[-82.39338,27.83752],[-82.40261,27.8826],[-82.41392,27.9014],[-82.45159,27.90751],[-82.47806,27.92768],[-82.48982,27.9196],[-82.48806,27.86357],[-82.46884,27.8433],[-82.47244,27.82256],[-82.48985,27.82261],[-82.55395,27.84846],[-82.55292,27.8627],[-82.52992,27.8775],[-82.54282,27.8906],[-82.53132,27.9039],[-82.53372,27.933],[-82.55392,27.967],[-82.61952,27.9697],[-82.72052,27.9558],[-82.71002,27.9283],[-82.67122,27.913],[-82.62806,27.9104],[-82.63212,27.8911],[-82.61002,27.8735],[-82.56792,27.8837],[-82.56682,27.858],[-82.59844,27.85758],[-82.58652,27.8167],[-82.62272,27.77987],[-82.63362,27.71061],[-82.71882,27.69201],[-82.72162,27.66391],[-82.69809,27.63886],[-82.70502,27.62531],[-82.73308,27.61297],[-82.74622,27.73131],[-82.84653,27.8543],[-82.84088,27.93716],[-82.82488,27.9602],[-82.83216,27.90924],[-82.80546,27.9602],[-82.78272,28.05589],[-82.78132,28.12759],[-82.79072,28.15249],[-82.80847,28.1548],[-82.8051,28.17218],[-82.76264,28.21901],[-82.7641,28.24434],[-82.73279,28.29193],[-82.73146,28.32507],[-82.70611,28.36806],[-82.70632,28.40132],[-82.67784,28.43437],[-82.6804,28.45719],[-82.66505,28.48443],[-82.66942,28.51988],[-82.65414,28.59084],[-82.66406,28.60658],[-82.64548,28.69755],[-82.66223,28.73726],[-82.643,28.78255],[-82.65293,28.83094],[-82.63866,28.84334],[-82.64486,28.88925],[-82.68886,28.90561],[-82.73575,28.97371],[-82.73787,28.9957],[-82.76055,28.99309],[-82.7597,29.05419],[-82.78333,29.06462],[-82.78056,29.07358],[-82.81692,29.07622],[-82.82366,29.0989],[-82.79912,29.11065],[-82.80474,29.14662],[-82.82707,29.15843],[-82.97468,29.17091],[-82.99165,29.18066],[-83.01907,29.14132],[-83.05321,29.13084],[-83.06825,29.15313],[-83.06116,29.17611],[-83.08784,29.21642],[-83.07726,29.25533],[-83.12803,29.28273],[-83.16958,29.29036],[-83.17552,29.34469],[-83.2007,29.37385],[-83.21807,29.42049],[-83.24051,29.43318],[-83.29475,29.43792],[-83.31155,29.47567],[-83.33113,29.47559],[-83.35672,29.4999],[-83.40025,29.51724],[-83.39948,29.61296],[-83.41277,29.66849],[-83.45536,29.67644],[-83.48314,29.69048],[-83.49373,29.70839],[-83.54717,29.73222],[-83.58472,29.77608],[-83.5859,29.81175],[-83.61857,29.84234],[-83.63798,29.88607],[-83.68642,29.92374],[-83.78873,29.97698],[-83.82869,29.98319],[-83.93151,30.03907],[-84.00072,30.09621],[-84.06299,30.10138],[-84.11384,30.08548],[-84.12489,30.0906],[-84.16788,30.07142],[-84.19853,30.08794],[-84.23701,30.08556],[-84.25644,30.10379],[-84.27251,30.09236],[-84.27717,30.06026],[-84.29784,30.05745],[-84.31534,30.06949],[-84.35892,30.05822],[-84.36196,29.98774],[-84.34304,29.9751],[-84.33375,29.92372],[-84.34907,29.89681],[-84.37894,29.89311],[-84.42383,29.903],[-84.45171,29.92909],[-84.49456,29.91396],[-84.512,29.91657],[-84.6033,29.87612],[-84.65645,29.83428],[-84.69205,29.82906],[-84.75559,29.78854],[-84.86827,29.74245],[-84.88803,29.72241],[-84.90178,29.73572],[-84.87711,29.77289],[-84.90413,29.78628],[-84.93837,29.75021],[-84.96401,29.74242],[-84.96884,29.72708],[-84.99326,29.71496],[-85.12147,29.71585],[-85.25972,29.6813],[-85.31921,29.68149],[-85.34362,29.672],[-85.34477,29.65479],[-85.39787,29.7405],[-85.41797,29.82886],[-85.40582,29.86582],[-85.39247,29.87091],[-85.40591,29.80193],[-85.39553,29.76237],[-85.37796,29.70962],[-85.35389,29.68476],[-85.31139,29.69756],[-85.30259,29.80809],[-85.36373,29.89891],[-85.40505,29.93849],[-85.50915,29.97147],[-85.57191,30.02644],[-85.58824,30.05554],[-85.69681,30.09689],[-85.77541,30.15629],[-85.9226,30.23802],[-86.08996,30.30357],[-86.22256,30.34359],[-86.41208,30.38035],[-86.63295,30.3963],[-86.75091,30.39188],[-87.20625,30.32094],[-87.26783,30.31548],[-87.29542,30.3235],[-87.51832,30.28044],[-87.45238,30.3002],[-87.45138,30.3672],[-87.41918,30.4102],[-87.43058,30.4911],[-87.44992,30.51469],[-87.39422,30.6417],[-87.40712,30.6718],[-87.53261,30.74349],[-87.63494,30.86589],[-87.60135,30.93629],[-87.59893,30.99746],[-86.05621,30.99313],[-85.00237,31.00068],[-84.98353,30.93549],[-84.94192,30.88799],[-84.89612,30.75059],[-84.86469,30.71154],[-83.30945,30.63442]]]]}},{"type":"Feature","properties":{"code":"16","nom":"Idaho"},"geometry":{"type":"Polygon","coordinates":[[[-111.04897,44.47407],[-111.04669,42.00157],[-112.70937,42.00031],[-113.89326,41.98806],[-114.76382,41.99991],[-117.02622,42.00025],[-117.02663,43.8081],[-116.96153,43.91839],[-116.9353,43.98862],[-116.93172,44.10247],[-116.89408,44.16019],[-116.90275,44.17947],[-116.9759,44.24284],[-117.17034,44.25889],[-117.19011,44.27396],[-117.19778,44.29579],[-117.18977,44.33658],[-117.21489,44.4669],[-117.20845,44.48593],[-117.14924,44.53615],[-117.06227,44.72714],[-117.03827,44.74818],[-116.9315,44.79228],[-116.85243,44.88758],[-116.83199,44.93301],[-116.85828,44.97801],[-116.84537,45.01706],[-116.72961,45.14209],[-116.67379,45.32151],[-116.55347,45.49911],[-116.46363,45.60278],[-116.4635,45.61579],[-116.5354,45.69173],[-116.5357,45.73423],[-116.54809,45.75236],[-116.59421,45.77908],[-116.63338,45.78468],[-116.7891,45.84775],[-116.85725,45.90416],[-116.91599,45.99541],[-116.94353,46.06217],[-116.92562,46.15889],[-116.9588,46.24232],[-116.98794,46.29803],[-117.04747,46.34288],[-117.06104,46.36775],[-117.04691,46.37958],[-117.03981,46.42542],[-117.03235,48.99919],[-116.04919,49.00091],[-116.04842,47.97682],[-115.72377,47.69667],[-115.70628,47.63786],[-115.73968,47.53766],[-115.71218,47.48855],[-115.72986,47.44729],[-115.72108,47.42235],[-115.57684,47.36682],[-115.52369,47.29892],[-115.47925,47.28209],[-115.32018,47.25572],[-115.26672,47.1811],[-115.19322,47.13303],[-115.07299,47.01376],[-114.93601,46.89976],[-114.93871,46.86902],[-114.92046,46.8277],[-114.85328,46.79979],[-114.73925,46.71517],[-114.66735,46.71928],[-114.64475,46.70215],[-114.64271,46.67314],[-114.61442,46.63919],[-114.48194,46.63199],[-114.42218,46.65216],[-114.37013,46.65422],[-114.33794,46.6412],[-114.33109,46.60765],[-114.34653,46.53579],[-114.3853,46.46716],[-114.378,46.43537],[-114.48312,46.12915],[-114.46758,46.08191],[-114.4912,46.044],[-114.48338,46.00805],[-114.41201,45.97806],[-114.40155,45.96319],[-114.39376,45.89402],[-114.44868,45.85889],[-114.5093,45.84553],[-114.56617,45.77386],[-114.54776,45.74331],[-114.50487,45.72218],[-114.49542,45.70332],[-114.50092,45.66672],[-114.51541,45.65284],[-114.56365,45.63741],[-114.56177,45.56511],[-114.46054,45.56128],[-114.36662,45.49162],[-114.35082,45.46854],[-114.30961,45.46943],[-114.24783,45.54549],[-114.18785,45.54215],[-114.13525,45.55747],[-114.03493,45.64797],[-114.01932,45.69294],[-113.98776,45.70525],[-113.93422,45.68223],[-113.89668,45.64145],[-113.81393,45.60056],[-113.80201,45.5791],[-113.81012,45.53092],[-113.77291,45.51232],[-113.76576,45.48323],[-113.77416,45.46537],[-113.73873,45.32974],[-113.67441,45.24941],[-113.59951,45.19111],[-113.56598,45.14934],[-113.57645,45.13031],[-113.44935,45.04574],[-113.4472,44.97192],[-113.47271,44.94812],[-113.49874,44.94231],[-113.45507,44.86542],[-113.3417,44.78485],[-113.24717,44.82295],[-113.13462,44.76315],[-113.0515,44.63695],[-113.05677,44.61866],[-113.02715,44.49591],[-113.00354,44.45081],[-112.87582,44.37436],[-112.84927,44.37104],[-112.83134,44.38166],[-112.82205,44.43411],[-112.78129,44.48489],[-112.71911,44.50434],[-112.47321,44.48003],[-112.38708,44.46048],[-112.35893,44.48628],[-112.33972,44.53858],[-112.27408,44.56433],[-112.18712,44.53445],[-112.07847,44.53355],[-111.8705,44.56403],[-111.84329,44.52822],[-111.80653,44.51546],[-111.70422,44.56021],[-111.60125,44.55421],[-111.52576,44.60488],[-111.48901,44.70555],[-111.39481,44.75135],[-111.37768,44.75174],[-111.32367,44.72447],[-111.21924,44.62262],[-111.13138,44.49992],[-111.04897,44.47407]]]}},{"type":"Feature","properties":{"code":"20","nom":"Kansas"},"geometry":{"type":"Polygon","coordinates":[[[-99.54112,36.99957],[-102.04224,36.99308],[-102.05174,40.00308],[-95.30829,40],[-95.30155,39.9836],[-95.18122,39.9],[-95.085,39.86188],[-95.03505,39.86681],[-95.00844,39.9006],[-94.93596,39.89435],[-94.89527,39.76321],[-94.91693,39.72819],[-94.93792,39.72547],[-95.01531,39.67426],[-95.10745,39.57384],[-95.1093,39.54228],[-94.90995,39.36746],[-94.90101,39.30168],[-94.8324,39.22722],[-94.75234,39.1732],[-94.60173,39.1596],[-94.58993,39.1404],[-94.60735,39.11344],[-94.61808,36.99813],[-99.54112,36.99957]]]}},{"type":"Feature","properties":{"code":"24","nom":"Maryland"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-76.04837,38.12055],[-76.061,38.127],[-76.09087,38.11446],[-76.09555,38.12512],[-76.08864,38.19265],[-76.07147,38.2035],[-76.04879,38.20373],[-76.02217,38.17788],[-76.03404,38.1579],[-76.01249,38.13173],[-76.02137,38.10793],[-76.00817,38.09539],[-76.01154,38.07231],[-76.03668,38.07651],[-76.0593,38.09575],[-76.03962,38.11199],[-76.04837,38.12055]]],[[[-75.9939,37.95349],[-76.04653,37.95359],[-76.04621,38.02553],[-76.02083,38.03912],[-75.97017,38.01568],[-75.97039,38.00633],[-75.98425,38.00401],[-75.9939,37.95349]]],[[[-76.43885,39.0529],[-76.40508,39.03321],[-76.39408,39.01131],[-76.42218,38.98901],[-76.4742,38.97265],[-76.47128,38.95651],[-76.45028,38.94111],[-76.45948,38.90711],[-76.49368,38.91001],[-76.49068,38.88481],[-76.51944,38.86313],[-76.51694,38.85116],[-76.49658,38.85312],[-76.48988,38.83872],[-76.51008,38.80122],[-76.55988,38.76736],[-76.55754,38.74469],[-76.54448,38.72771],[-76.52718,38.72706],[-76.5324,38.67836],[-76.51128,38.61574],[-76.51751,38.53915],[-76.50602,38.50461],[-76.38623,38.38201],[-76.40929,38.32589],[-76.40289,38.3114],[-76.37448,38.29635],[-76.39932,38.25928],[-76.38524,38.21775],[-76.32014,38.13834],[-76.33853,38.11947],[-76.32209,38.0365],[-76.36124,38.05954],[-76.39234,38.1029],[-76.42121,38.10604],[-76.43984,38.13893],[-76.45969,38.13948],[-76.47327,38.10303],[-76.49984,38.13719],[-76.52987,38.13408],[-76.55296,38.18721],[-76.59064,38.21421],[-76.67346,38.2344],[-76.74005,38.23523],[-76.75229,38.22212],[-76.77863,38.22847],[-76.81165,38.25013],[-76.80235,38.28074],[-76.82489,38.30115],[-76.84625,38.29772],[-76.8348,38.27401],[-76.84214,38.25449],[-76.92093,38.29157],[-76.92955,38.32109],[-76.97549,38.34733],[-77.01637,38.44557],[-77.04419,38.44302],[-77.09107,38.40755],[-77.12332,38.41065],[-77.13673,38.3918],[-77.20731,38.35987],[-77.25017,38.38278],[-77.27422,38.48177],[-77.23772,38.55187],[-77.22112,38.55522],[-77.18377,38.6007],[-77.12908,38.61436],[-77.1325,38.67382],[-77.0746,38.71102],[-77.0414,38.76391],[-77.0386,38.79151],[-76.9094,38.89281],[-77.041,38.99511],[-77.1199,38.93431],[-77.14818,38.965],[-77.2215,38.97131],[-77.2498,38.98591],[-77.2614,39.03101],[-77.29161,39.04541],[-77.34029,39.06299],[-77.4582,39.07372],[-77.51993,39.12092],[-77.52728,39.14624],[-77.51063,39.17848],[-77.4786,39.18917],[-77.46021,39.22836],[-77.59274,39.30129],[-77.72738,39.32167],[-77.75579,39.3339],[-77.7392,39.38573],[-77.80782,39.49024],[-77.84511,39.49829],[-77.86542,39.51647],[-77.90265,39.5878],[-77.94644,39.58491],[-78.00999,39.60289],[-78.0746,39.66669],[-78.17663,39.69597],[-78.27112,39.61964],[-78.35522,39.64058],[-78.43025,39.62329],[-78.45846,39.58116],[-78.43203,39.56105],[-78.43694,39.53896],[-78.46864,39.51679],[-78.56593,39.51944],[-78.68945,39.54577],[-78.76749,39.58749],[-78.7605,39.60998],[-78.78746,39.62749],[-78.87474,39.52261],[-78.969,39.44154],[-79.04244,39.47934],[-79.08445,39.47136],[-79.21319,39.3679],[-79.25688,39.35608],[-79.40291,39.25011],[-79.48687,39.20596],[-79.47666,39.72108],[-75.78836,39.72181],[-75.69352,38.46013],[-75.04894,38.45126],[-75.08552,38.32427],[-75.10295,38.31153],[-75.1938,38.09601],[-75.24227,38.02721],[-75.62434,37.99421],[-75.66971,37.9508],[-75.66309,37.96119],[-75.67168,37.96658],[-75.71315,37.97662],[-75.738,37.96353],[-75.78382,37.97259],[-75.83241,37.93331],[-75.88503,37.91172],[-75.89832,37.92511],[-75.89087,37.95485],[-75.89896,37.97451],[-75.87319,38.03437],[-75.84792,38.03437],[-75.81291,38.05893],[-75.84426,38.07227],[-75.8715,38.05887],[-75.88052,38.07501],[-75.86381,38.10097],[-75.83756,38.11375],[-75.82767,38.13344],[-75.84386,38.1446],[-75.86864,38.13438],[-75.90036,38.14115],[-75.93709,38.12421],[-75.93666,38.10996],[-75.95962,38.13714],[-75.94237,38.18707],[-75.84638,38.21048],[-75.87032,38.24343],[-75.88344,38.24444],[-75.89569,38.22856],[-75.91114,38.25795],[-75.93858,38.27233],[-75.95491,38.264],[-75.9407,38.2469],[-75.94641,38.23889],[-75.97221,38.2333],[-75.96345,38.25179],[-76.01736,38.30911],[-75.96424,38.32429],[-75.97388,38.36585],[-76.00228,38.37448],[-76.01668,38.33243],[-76.04958,38.30959],[-76.02749,38.28011],[-76.04425,38.24937],[-76.03204,38.21668],[-76.05801,38.22708],[-76.0749,38.25218],[-76.09972,38.25365],[-76.1113,38.28695],[-76.13852,38.28139],[-76.16615,38.29043],[-76.18017,38.27696],[-76.16325,38.24891],[-76.12662,38.24295],[-76.13133,38.23288],[-76.15103,38.23421],[-76.17335,38.24704],[-76.21145,38.30266],[-76.25819,38.31837],[-76.26419,38.34644],[-76.23861,38.35023],[-76.24967,38.36421],[-76.273,38.36648],[-76.28302,38.41351],[-76.33636,38.49224],[-76.32726,38.50012],[-76.26397,38.50345],[-76.2473,38.52382],[-76.24889,38.53902],[-76.27811,38.53247],[-76.27964,38.55723],[-76.30832,38.57177],[-76.2735,38.59139],[-76.27183,38.61566],[-76.23665,38.6286],[-76.23119,38.61401],[-76.21243,38.60674],[-76.14716,38.63684],[-76.17516,38.67324],[-76.20033,38.67077],[-76.21281,38.68189],[-76.23873,38.71285],[-76.23869,38.73543],[-76.25509,38.73648],[-76.27501,38.71271],[-76.31615,38.72959],[-76.33402,38.70313],[-76.32242,38.6793],[-76.34034,38.67124],[-76.3413,38.7519],[-76.30089,38.82619],[-76.27741,38.83142],[-76.27157,38.85177],[-76.25036,38.82544],[-76.21933,38.81237],[-76.19814,38.81444],[-76.19109,38.82966],[-76.20364,38.92838],[-76.23204,38.94252],[-76.25016,38.93867],[-76.2564,38.91883],[-76.27308,38.94193],[-76.29591,38.92866],[-76.29325,38.90257],[-76.30842,38.8984],[-76.31795,38.91131],[-76.3361,38.90598],[-76.33103,38.86432],[-76.37509,38.83947],[-76.36173,38.93917],[-76.32268,38.9996],[-76.32027,39.02301],[-76.30185,39.03965],[-76.27748,38.98249],[-76.21893,38.97054],[-76.16399,38.99954],[-76.18421,39.04626],[-76.14517,39.09282],[-76.18391,39.09634],[-76.20338,39.08563],[-76.21262,39.04116],[-76.20067,39.01452],[-76.23176,39.01852],[-76.24269,39.02893],[-76.23346,39.09139],[-76.26089,39.1434],[-76.27853,39.14576],[-76.27464,39.16549],[-76.21934,39.262],[-76.1815,39.2918],[-76.17678,39.30645],[-76.18665,39.31547],[-76.17042,39.33209],[-76.13322,39.34049],[-76.13495,39.35107],[-76.11053,39.37226],[-76.02299,39.3619],[-76.00241,39.3675],[-76.00252,39.38502],[-76.03557,39.38618],[-76.04096,39.39424],[-75.97675,39.44463],[-75.99,39.45865],[-76.01231,39.45311],[-75.96695,39.53865],[-75.97034,39.55764],[-75.99263,39.5631],[-76.00634,39.55035],[-76.09607,39.53691],[-76.11393,39.4867],[-76.07197,39.47505],[-76.06099,39.44772],[-76.15877,39.40631],[-76.18007,39.37761],[-76.22698,39.34991],[-76.24338,39.36181],[-76.26636,39.35335],[-76.25393,39.33677],[-76.27608,39.32291],[-76.28158,39.30211],[-76.29788,39.30241],[-76.29568,39.35001],[-76.34144,39.35422],[-76.33957,39.32468],[-76.32758,39.31411],[-76.34143,39.30291],[-76.36439,39.31184],[-76.38066,39.29916],[-76.40236,39.25832],[-76.38138,39.24951],[-76.38438,39.24271],[-76.42528,39.20571],[-76.44248,39.19541],[-76.46348,39.20591],[-76.49838,39.20481],[-76.52058,39.22351],[-76.53428,39.21321],[-76.52578,39.17791],[-76.42868,39.13171],[-76.42186,39.08144],[-76.43885,39.0529]]]]}},{"type":"Feature","properties":{"code":"34","nom":"New Jersey"},"geometry":{"type":"Polygon","coordinates":[[[-74.90024,40.07715],[-74.74061,40.13521],[-74.7223,40.16061],[-74.77071,40.21491],[-74.86049,40.28458],[-75.02478,40.40346],[-75.05885,40.41806],[-75.07057,40.45517],[-75.06861,40.54222],[-75.10032,40.56781],[-75.19016,40.58932],[-75.20392,40.6915],[-75.19653,40.75163],[-75.17159,40.77775],[-75.1344,40.77376],[-75.1085,40.79109],[-75.05103,40.86566],[-75.12044,40.9683],[-75.13553,40.97381],[-75.13057,40.99109],[-75.03698,41.0347],[-74.96839,41.0878],[-74.97434,41.10391],[-74.88214,41.18084],[-74.86168,41.24157],[-74.79585,41.31895],[-74.69491,41.35742],[-74.23447,41.14288],[-73.89398,40.9972],[-73.93341,40.88208],[-74.01378,40.7566],[-74.02454,40.70944],[-74.03854,40.71074],[-74.08279,40.6737],[-74.09409,40.6497],[-74.18911,40.64383],[-74.20222,40.63105],[-74.21479,40.5606],[-74.24864,40.5496],[-74.24624,40.52096],[-74.27269,40.48841],[-74.26189,40.46471],[-74.20979,40.44741],[-74.20721,40.43543],[-74.17479,40.45561],[-74.17535,40.44661],[-74.13582,40.4552],[-74.04788,40.41891],[-73.9985,40.41091],[-73.99168,40.44291],[-74.01403,40.47647],[-73.99568,40.46871],[-73.97828,40.44021],[-73.97744,40.29937],[-74.06413,39.97916],[-74.09691,39.76303],[-74.24051,39.55491],[-74.27737,39.51406],[-74.31104,39.50671],[-74.30434,39.47145],[-74.3348,39.432],[-74.40669,39.37752],[-74.41269,39.36082],[-74.5218,39.31382],[-74.61448,39.24466],[-74.71434,39.1198],[-74.70588,39.10294],[-74.77878,39.02307],[-74.79272,38.99199],[-74.86446,38.94041],[-74.93357,38.92852],[-74.96346,38.93119],[-74.972,38.94037],[-74.94947,39.01564],[-74.89778,39.09881],[-74.88717,39.15883],[-74.90518,39.17495],[-74.96238,39.19024],[-75.02889,39.19456],[-75.02344,39.20479],[-75.03567,39.21542],[-75.10729,39.2114],[-75.13914,39.18002],[-75.16598,39.20184],[-75.17751,39.24275],[-75.24164,39.2741],[-75.25181,39.29991],[-75.27163,39.30404],[-75.2889,39.28956],[-75.3152,39.31059],[-75.33374,39.34533],[-75.36502,39.34139],[-75.39003,39.35826],[-75.3993,39.37949],[-75.4318,39.39162],[-75.46521,39.43893],[-75.50838,39.45913],[-75.53643,39.46056],[-75.54269,39.49657],[-75.52714,39.50011],[-75.51273,39.578],[-75.55587,39.60582],[-75.55945,39.62981],[-75.52684,39.65571],[-75.46625,39.75077],[-75.41504,39.80179],[-75.3065,39.84981],[-75.27116,39.84944],[-75.21043,39.86591],[-74.97471,40.04871],[-74.90024,40.07715]]]}},{"type":"Feature","properties":{"code":"37","nom":"North Carolina"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-75.75377,35.19961],[-75.71801,35.20938],[-75.68401,35.23291],[-75.66451,35.22751],[-75.63036,35.23849],[-75.59901,35.25625],[-75.59691,35.26949],[-75.58194,35.26392],[-75.53574,35.27286],[-75.52939,35.28827],[-75.47861,35.55307],[-75.48133,35.6229],[-75.50738,35.68056],[-75.52899,35.77629],[-75.49609,35.72852],[-75.45866,35.5966],[-75.48677,35.39165],[-75.52592,35.23384],[-75.53363,35.22583],[-75.6101,35.22751],[-75.76971,35.18036],[-75.94473,35.10509],[-76.01314,35.06186],[-75.98395,35.12004],[-75.9547,35.1196],[-75.78573,35.19424],[-75.75377,35.19961]]],[[[-75.67525,35.92902],[-75.65954,35.91956],[-75.66202,35.90652],[-75.64512,35.90579],[-75.62767,35.88315],[-75.61683,35.85633],[-75.62045,35.80925],[-75.67505,35.8302],[-75.66009,35.83861],[-75.66336,35.86984],[-75.72725,35.93362],[-75.70532,35.9394],[-75.67525,35.92902]]],[[[-76.4915,36.55036],[-75.86704,36.55075],[-75.81874,36.35758],[-75.77251,36.22944],[-75.71831,36.11367],[-75.56979,35.8633],[-75.53643,35.78012],[-75.61915,35.88941],[-75.62011,35.92529],[-75.6489,35.96576],[-75.67891,35.99392],[-75.72366,36.00314],[-75.72261,36.03736],[-75.74051,36.04684],[-75.75572,36.15392],[-75.78368,36.21595],[-75.81159,36.24401],[-75.81448,36.28534],[-75.84528,36.30561],[-75.83159,36.34642],[-75.85147,36.37946],[-75.85147,36.41578],[-75.88832,36.44158],[-75.89991,36.48212],[-76.01926,36.50351],[-76.03195,36.4825],[-76.01234,36.44746],[-75.96228,36.41724],[-75.9236,36.42579],[-75.92333,36.36186],[-75.88215,36.28467],[-75.86052,36.28061],[-75.86415,36.23552],[-75.80038,36.11273],[-75.79397,36.07171],[-75.84779,36.10199],[-75.87503,36.15745],[-76.03178,36.18913],[-76.0635,36.17352],[-76.05927,36.14928],[-76.07167,36.14018],[-76.17895,36.12342],[-76.2166,36.09541],[-76.28715,36.10489],[-76.32348,36.08488],[-76.41088,36.07803],[-76.45932,36.02433],[-76.51434,36.00564],[-76.57594,36.00617],[-76.61542,36.03776],[-76.65333,36.03512],[-76.68492,36.00985],[-76.67966,35.99195],[-76.70019,35.96457],[-76.69177,35.94457],[-76.67387,35.93509],[-76.60805,35.93667],[-76.52855,35.94404],[-76.39824,35.98432],[-76.36297,35.9422],[-76.31769,35.94694],[-76.27241,35.97273],[-76.21397,35.988],[-76.06207,35.993],[-76.01469,35.96036],[-76.01995,35.93404],[-76.00468,35.90508],[-75.97783,35.89718],[-75.92729,35.93193],[-75.94729,35.95983],[-75.89938,35.97721],[-75.84989,35.97616],[-75.7825,35.93561],[-75.72722,35.8227],[-75.73936,35.77099],[-75.71294,35.69849],[-75.74161,35.67207],[-75.7298,35.62599],[-75.77814,35.59226],[-75.77533,35.57934],[-75.83715,35.5709],[-75.85964,35.58664],[-75.89504,35.57315],[-75.9164,35.53831],[-75.95013,35.531],[-75.96305,35.4939],[-75.99565,35.47536],[-76.02094,35.41072],[-76.05973,35.41016],[-76.06928,35.37081],[-76.13279,35.34945],[-76.14965,35.32641],[-76.23509,35.35002],[-76.26544,35.34327],[-76.32726,35.35676],[-76.34974,35.34552],[-76.38234,35.35676],[-76.4082,35.35002],[-76.44867,35.38374],[-76.48576,35.37138],[-76.52173,35.39161],[-76.60604,35.38711],[-76.62852,35.368],[-76.61953,35.34552],[-76.60267,35.33653],[-76.48239,35.31405],[-76.46778,35.27695],[-76.49475,35.21288],[-76.53635,35.17466],[-76.54646,35.12295],[-76.56894,35.09709],[-76.58693,35.0926],[-76.60042,35.06787],[-76.64651,35.04201],[-76.62852,34.9948],[-76.58805,34.99143],[-76.50262,35.00717],[-76.46347,35.07641],[-76.43576,35.05794],[-76.42546,35.00146],[-76.39562,34.97518],[-76.32636,34.97624],[-76.36437,35.03485],[-76.28835,35.00573],[-76.29652,34.97624],[-76.27557,34.96097],[-76.2777,34.94001],[-76.34767,34.87217],[-76.36827,34.87288],[-76.40024,34.85548],[-76.41587,34.82564],[-76.40311,34.80615],[-76.38383,34.80791],[-76.23367,34.92593],[-76.06991,35.0757],[-76.04362,35.07002],[-76.03593,35.05899],[-76.3868,34.78458],[-76.49407,34.66197],[-76.53595,34.58858],[-76.5552,34.61599],[-76.54934,34.64558],[-76.67631,34.69315],[-76.81745,34.69372],[-76.99026,34.66962],[-77.13684,34.63293],[-77.20916,34.60503],[-77.32252,34.53557],[-77.55694,34.41722],[-77.74014,34.27255],[-77.82921,34.16262],[-77.97061,33.84452],[-78.00997,33.86141],[-78.01869,33.88829],[-78.17772,33.91427],[-78.38396,33.90195],[-78.54109,33.85111],[-79.35832,34.54536],[-79.68809,34.8049],[-80.77771,34.8197],[-80.79675,34.82528],[-80.78204,34.93578],[-80.93495,35.10741],[-81.04149,35.0447],[-81.05803,35.07319],[-81.05208,35.09628],[-81.03255,35.1091],[-81.04341,35.14839],[-82.28845,35.19861],[-82.38403,35.21054],[-82.58013,35.14196],[-82.6865,35.12182],[-82.76446,35.06818],[-82.78197,35.06682],[-82.78113,35.08458],[-83.10854,35.00077],[-83.67362,34.98711],[-84.32187,34.98841],[-84.29024,35.22557],[-84.22372,35.26908],[-84.20288,35.25577],[-84.09751,35.24738],[-84.05571,35.26818],[-84.02141,35.30138],[-84.03808,35.34836],[-84.02476,35.3539],[-84.00225,35.42255],[-83.96105,35.46414],[-83.93388,35.47244],[-83.88007,35.51875],[-83.75692,35.5636],[-83.67627,35.57029],[-83.49833,35.56298],[-83.4458,35.6118],[-83.29715,35.65775],[-83.25423,35.69581],[-83.25125,35.71992],[-83.16491,35.75997],[-83.10033,35.7748],[-82.98397,35.77801],[-82.91836,35.84547],[-82.89798,35.88128],[-82.91334,35.92411],[-82.89851,35.9451],[-82.85255,35.94909],[-82.83011,35.93297],[-82.75446,36.0043],[-82.63716,36.0658],[-82.60288,36.03983],[-82.61126,35.97315],[-82.55753,35.95467],[-82.46296,36.00731],[-82.40946,36.08341],[-82.34842,36.11593],[-82.23774,36.13919],[-82.21125,36.15901],[-82.14795,36.14952],[-82.12715,36.10442],[-82.08014,36.10572],[-82.02664,36.13022],[-81.90814,36.30201],[-81.85501,36.33726],[-81.79369,36.36043],[-81.78971,36.34832],[-81.76493,36.33867],[-81.72594,36.34036],[-81.71508,36.45336],[-81.69591,36.49158],[-81.70796,36.53621],[-81.67754,36.58812],[-80.16953,36.54319],[-76.4915,36.55036]]]]}},{"type":"Feature","properties":{"code":"45","nom":"South Carolina"},"geometry":{"type":"Polygon","coordinates":[[[-82.21622,35.19604],[-81.04341,35.14839],[-81.03255,35.1091],[-81.05208,35.09628],[-81.05803,35.07319],[-81.04149,35.0447],[-80.93495,35.10741],[-80.78204,34.93578],[-80.79675,34.82528],[-80.77771,34.8197],[-79.68809,34.8049],[-79.35832,34.54536],[-78.54109,33.85111],[-78.71412,33.80014],[-78.81293,33.74347],[-78.93808,33.63983],[-79.08459,33.48367],[-79.13544,33.40387],[-79.18032,33.25414],[-79.17239,33.20658],[-79.18787,33.17371],[-79.24609,33.12486],[-79.32991,33.08999],[-79.35996,33.00667],[-79.40371,33.0039],[-79.42345,33.01508],[-79.4835,33.00126],[-79.50692,33.03281],[-79.52245,33.03535],[-79.55756,33.02127],[-79.58073,33.00645],[-79.61761,32.95273],[-79.60619,32.92595],[-79.57261,32.93388],[-79.57601,32.90624],[-79.63115,32.88861],[-79.69514,32.8504],[-79.72639,32.806],[-79.81102,32.77696],[-79.84035,32.75682],[-79.86674,32.75742],[-79.88496,32.6844],[-79.97525,32.63954],[-79.99937,32.61185],[-80.12137,32.59052],[-80.14841,32.57848],[-80.17176,32.54612],[-80.20523,32.55555],[-80.33244,32.4781],[-80.36396,32.4961],[-80.41349,32.47067],[-80.42345,32.49799],[-80.47207,32.49696],[-80.48016,32.44705],[-80.46759,32.42526],[-80.44607,32.42372],[-80.42994,32.40178],[-80.45519,32.32646],[-80.54569,32.28208],[-80.59639,32.27355],[-80.65863,32.24864],[-80.66917,32.21678],[-80.72146,32.16043],[-80.8125,32.10975],[-80.83153,32.11271],[-80.85873,32.09958],[-80.90538,32.05194],[-80.88552,32.0346],[-81.06185,32.08794],[-81.11723,32.1176],[-81.12233,32.30539],[-81.13433,32.34169],[-81.16803,32.36839],[-81.19903,32.46729],[-81.27541,32.53946],[-81.34816,32.56929],[-81.38934,32.59544],[-81.41866,32.62939],[-81.40495,32.74703],[-81.42377,32.81051],[-81.49983,32.96382],[-81.49664,33.01022],[-81.62029,33.09541],[-81.69693,33.11655],[-81.85214,33.24754],[-81.90274,33.33124],[-81.91257,33.40881],[-81.96704,33.48064],[-82.04633,33.56383],[-82.13505,33.59104],[-82.19658,33.63058],[-82.24747,33.75259],[-82.30146,33.80186],[-82.40388,33.86548],[-82.42916,33.86584],[-82.56458,33.95581],[-82.6407,34.08834],[-82.67732,34.13166],[-82.71751,34.1505],[-82.75503,34.27607],[-82.87383,34.47151],[-82.90266,34.4859],[-82.97957,34.4827],[-82.99528,34.47455],[-83.03471,34.48349],[-83.08719,34.51594],[-83.17028,34.5924],[-83.16752,34.60042],[-83.24068,34.62431],[-83.35129,34.7017],[-83.32406,34.78869],[-83.26729,34.83275],[-83.24296,34.87775],[-83.14326,34.92476],[-83.10854,35.00077],[-82.78113,35.08458],[-82.78197,35.06682],[-82.76446,35.06818],[-82.6865,35.12182],[-82.58013,35.14196],[-82.38403,35.21054],[-82.21622,35.19604]]]}},{"type":"Feature","properties":{"code":"53","nom":"Washington"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-122.39735,47.9124],[-122.43103,47.91473],[-122.44552,47.93023],[-122.44668,47.96316],[-122.47266,47.98845],[-122.50126,47.98709],[-122.54682,47.96722],[-122.54292,47.9964],[-122.60734,48.03099],[-122.59362,48.0472],[-122.61403,48.07279],[-122.5983,48.11062],[-122.60957,48.15186],[-122.63317,48.16328],[-122.67956,48.15511],[-122.69308,48.18151],[-122.77004,48.2244],[-122.72259,48.30427],[-122.67373,48.35468],[-122.66466,48.40151],[-122.63499,48.40424],[-122.63582,48.39513],[-122.60198,48.40991],[-122.58504,48.39517],[-122.58516,48.3533],[-122.55133,48.34214],[-122.50657,48.31004],[-122.50583,48.29768],[-122.53098,48.28245],[-122.55833,48.28206],[-122.58409,48.29799],[-122.61847,48.29416],[-122.62378,48.26943],[-122.65264,48.26508],[-122.66839,48.22397],[-122.62835,48.22247],[-122.58814,48.18594],[-122.55821,48.11958],[-122.57185,48.10214],[-122.54512,48.05255],[-122.51399,48.05908],[-122.52542,48.09654],[-122.51328,48.09754],[-122.4911,48.09424],[-122.43127,48.045],[-122.37626,48.03446],[-122.37326,48.00079],[-122.35361,47.98143],[-122.3496,47.9588],[-122.37684,47.9237],[-122.3773,47.90594],[-122.39735,47.9124]]],[[[-122.64941,48.58846],[-122.57886,48.54813],[-122.57297,48.52903],[-122.59995,48.5369],[-122.64926,48.52877],[-122.64941,48.58846]]],[[[-122.71451,48.60878],[-122.67064,48.56881],[-122.68944,48.5439],[-122.71728,48.53974],[-122.7399,48.58395],[-122.71451,48.60878]]],[[[-122.69927,48.62112],[-122.67417,48.62994],[-122.65702,48.60989],[-122.69927,48.62112]]],[[[-122.80022,48.60169],[-122.8011,48.58543],[-122.77035,48.55811],[-122.7885,48.53039],[-122.77912,48.50891],[-122.81791,48.48389],[-122.81973,48.45884],[-122.80352,48.42875],[-122.87413,48.4182],[-122.89365,48.42265],[-122.88902,48.43595],[-122.928,48.43997],[-122.91646,48.45326],[-122.9269,48.46087],[-122.96201,48.45116],[-123.03916,48.46],[-123.06767,48.4795],[-123.11945,48.49258],[-123.16323,48.52954],[-123.17306,48.57909],[-123.20303,48.59618],[-123.17843,48.62212],[-123.10736,48.62245],[-123.10155,48.59782],[-123.07461,48.59182],[-123.0484,48.56922],[-122.9873,48.56189],[-122.99503,48.57816],[-123.0341,48.59177],[-123.02343,48.59948],[-123.04865,48.621],[-122.94237,48.70672],[-122.8946,48.71503],[-122.74305,48.66199],[-122.80962,48.61903],[-122.80022,48.60169]]],[[[-123.19795,48.68466],[-123.14799,48.668],[-123.10617,48.63347],[-123.13496,48.63724],[-123.23715,48.68347],[-123.19795,48.68466]]],[[[-123.02549,48.71797],[-123.00979,48.72229],[-123.00509,48.69434],[-123.04234,48.67566],[-123.03636,48.69008],[-123.07043,48.69997],[-123.02549,48.71797]]],[[[-122.32172,48.01998],[-122.30345,48.0056],[-122.33452,48.01892],[-122.32172,48.01998]]],[[[-123.03539,49.00215],[-123.02146,48.9773],[-123.08383,48.97614],[-123.09055,49.00198],[-123.03539,49.00215]]],[[[-122.69591,48.73727],[-122.66326,48.69708],[-122.61822,48.67072],[-122.60958,48.64502],[-122.6353,48.65185],[-122.67354,48.68081],[-122.69179,48.7115],[-122.71883,48.71682],[-122.71571,48.74867],[-122.69591,48.73727]]],[[[-122.41827,47.32061],[-122.32483,47.34852],[-122.32843,47.40062],[-122.34803,47.41592],[-122.35514,47.44192],[-122.38314,47.45052],[-122.36804,47.45922],[-122.36134,47.48142],[-122.39654,47.51522],[-122.39834,47.55012],[-122.42114,47.57602],[-122.38714,47.59572],[-122.37017,47.58309],[-122.33951,47.59911],[-122.36782,47.62421],[-122.41464,47.63977],[-122.42984,47.65892],[-122.37314,47.72922],[-122.39704,47.77972],[-122.39494,47.80332],[-122.33595,47.85231],[-122.30705,47.94912],[-122.23005,47.97092],[-122.22498,48.01663],[-122.23176,48.02988],[-122.28109,48.04979],[-122.34324,48.09763],[-122.36508,48.12582],[-122.36204,48.18757],[-122.39612,48.22923],[-122.44961,48.2326],[-122.44205,48.20935],[-122.47853,48.18809],[-122.47901,48.1757],[-122.44238,48.13084],[-122.37948,48.08738],[-122.35837,48.05613],[-122.37711,48.05757],[-122.40069,48.08525],[-122.4675,48.13035],[-122.48999,48.12062],[-122.51203,48.13393],[-122.53722,48.18375],[-122.531,48.24982],[-122.50379,48.25704],[-122.48092,48.25171],[-122.46396,48.27054],[-122.40652,48.25183],[-122.37169,48.28784],[-122.40872,48.32641],[-122.53345,48.38341],[-122.55454,48.40604],[-122.5573,48.44444],[-122.57525,48.44333],[-122.58161,48.42924],[-122.61448,48.41488],[-122.64984,48.40853],[-122.67893,48.43947],[-122.65484,48.45409],[-122.65775,48.47294],[-122.68912,48.47685],[-122.7006,48.45763],[-122.71232,48.46414],[-122.70164,48.49762],[-122.68452,48.50912],[-122.67139,48.50398],[-122.60696,48.52215],[-122.59847,48.51217],[-122.56807,48.50821],[-122.53736,48.46675],[-122.50072,48.46089],[-122.47183,48.47072],[-122.49846,48.55621],[-122.53479,48.57596],[-122.4959,48.57593],[-122.47843,48.5593],[-122.44456,48.57012],[-122.42527,48.59952],[-122.50031,48.65616],[-122.51917,48.7131],[-122.4904,48.75113],[-122.5358,48.77613],[-122.59684,48.77149],[-122.63715,48.73571],[-122.61256,48.71493],[-122.60573,48.70107],[-122.61517,48.69384],[-122.67347,48.73308],[-122.64678,48.78501],[-122.69368,48.80447],[-122.70982,48.78621],[-122.71707,48.84719],[-122.79318,48.89293],[-122.75129,48.91124],[-122.7466,48.93073],[-122.7661,48.94196],[-122.78754,48.9317],[-122.82163,48.94137],[-122.81723,48.95597],[-122.75802,49.00236],[-117.03235,48.99919],[-117.03981,46.42542],[-117.04691,46.37958],[-117.06104,46.36775],[-117.04747,46.34288],[-116.98533,46.29462],[-116.92562,46.15889],[-116.94353,46.06217],[-116.91599,45.99541],[-118.98713,45.99985],[-119.02706,45.96913],[-119.12612,45.93286],[-119.19553,45.92787],[-119.25715,45.93993],[-119.48783,45.90631],[-119.57158,45.92546],[-119.60055,45.91958],[-119.66988,45.85687],[-119.80266,45.84753],[-120.00115,45.8119],[-120.17045,45.76195],[-120.21075,45.72595],[-120.48236,45.69445],[-120.50586,45.70005],[-120.55947,45.73835],[-120.63497,45.74585],[-120.68937,45.71585],[-120.85567,45.67155],[-120.91588,45.64135],[-120.94398,45.65644],[-121.06437,45.65255],[-121.19523,45.62951],[-121.21578,45.67124],[-121.3122,45.69993],[-121.37257,45.70311],[-121.42359,45.69399],[-121.53311,45.72654],[-121.70736,45.69481],[-121.8113,45.70676],[-121.86717,45.69328],[-121.90185,45.67072],[-121.90827,45.6544],[-121.98304,45.62281],[-122.10168,45.58352],[-122.1837,45.5777],[-122.2667,45.54384],[-122.3315,45.54824],[-122.3528,45.56944],[-122.3803,45.57594],[-122.49226,45.58328],[-122.67501,45.61804],[-122.76381,45.65714],[-122.77451,45.68044],[-122.76145,45.75916],[-122.7956,45.81],[-122.78503,45.8677],[-122.814,45.96098],[-122.88448,46.06028],[-122.90412,46.08373],[-123.1159,46.18527],[-123.16641,46.18897],[-123.28017,46.14484],[-123.37143,46.14637],[-123.43085,46.18183],[-123.42763,46.22935],[-123.47484,46.26783],[-123.54766,46.25911],[-123.54764,46.26559],[-123.61354,46.25999],[-123.6695,46.26683],[-123.68057,46.29603],[-123.70076,46.30528],[-123.72427,46.30116],[-123.72858,46.28872],[-123.76668,46.2735],[-123.80614,46.28359],[-123.87552,46.23979],[-123.91958,46.25122],[-123.97451,46.30306],[-124.00126,46.31326],[-124.02992,46.30831],[-124.04402,46.27593],[-124.08219,46.26916],[-124.05742,46.40931],[-124.06866,46.63488],[-124.04844,46.64583],[-124.03587,46.63082],[-124.05084,46.61742],[-124.02357,46.58256],[-124.02603,46.46298],[-123.99062,46.46302],[-123.98369,46.49854],[-123.96804,46.4735],[-123.94367,46.4772],[-123.8967,46.52267],[-123.89425,46.53703],[-123.92886,46.58888],[-123.95556,46.60357],[-123.96064,46.63636],[-123.92191,46.65026],[-123.92327,46.67271],[-123.85136,46.70256],[-123.84621,46.71679],[-123.89864,46.75021],[-123.91637,46.74132],[-123.91687,46.72674],[-123.97499,46.73339],[-123.96689,46.70518],[-124.00346,46.70234],[-124.09218,46.74162],[-124.10808,46.83639],[-124.13823,46.90553],[-124.11064,46.91252],[-124.09339,46.90117],[-124.08929,46.86772],[-124.07311,46.86149],[-124.05509,46.87043],[-124.04634,46.89397],[-123.98508,46.92192],[-123.95749,46.92126],[-123.86018,46.94856],[-123.89825,46.97193],[-123.93921,46.96974],[-123.95919,46.98176],[-124.01222,46.98518],[-124.01973,46.99119],[-124.00525,47.00391],[-124.02635,47.03019],[-124.06586,47.04114],[-124.12206,47.04165],[-124.15129,47.02111],[-124.12439,46.94387],[-124.18011,46.92636],[-124.16911,46.99451],[-124.1828,47.13404],[-124.23635,47.28729],[-124.27119,47.30503],[-124.29994,47.34836],[-124.31938,47.35556],[-124.35595,47.5457],[-124.4252,47.73843],[-124.45393,47.76533],[-124.47657,47.76967],[-124.48974,47.81699],[-124.53993,47.83697],[-124.56236,47.86622],[-124.62551,47.88796],[-124.64544,47.93534],[-124.67243,47.96441],[-124.69654,48.06927],[-124.6871,48.09866],[-124.73317,48.16339],[-124.69611,48.1986],[-124.69039,48.21975],[-124.70592,48.23989],[-124.68468,48.25523],[-124.65894,48.33106],[-124.73183,48.38116],[-124.71695,48.38978],[-124.65324,48.39069],[-124.63111,48.37652],[-124.59733,48.38188],[-124.39559,48.28877],[-124.36135,48.28758],[-124.27202,48.25441],[-124.23858,48.26247],[-124.10177,48.21688],[-124.10721,48.20008],[-124.05073,48.17775],[-123.98103,48.16476],[-123.85882,48.15427],[-123.71835,48.15871],[-123.70274,48.16678],[-123.65141,48.15695],[-123.62882,48.13928],[-123.59084,48.13495],[-123.55113,48.15138],[-123.50723,48.13181],[-123.44013,48.14201],[-123.44197,48.12426],[-123.42467,48.11807],[-123.3327,48.11297],[-123.23913,48.11822],[-123.13344,48.17728],[-123.14323,48.15663],[-123.06621,48.12047],[-123.03873,48.08114],[-122.97941,48.09594],[-122.9291,48.09624],[-122.91794,48.09154],[-122.92685,48.06459],[-122.87764,48.04702],[-122.84927,48.05381],[-122.87825,48.07607],[-122.87628,48.11088],[-122.83317,48.13441],[-122.76045,48.14324],[-122.74891,48.11703],[-122.8014,48.08756],[-122.76665,48.04429],[-122.74229,48.04932],[-122.73927,48.06915],[-122.74835,48.0721],[-122.73326,48.09123],[-122.68724,48.10166],[-122.69222,48.08708],[-122.66987,48.01722],[-122.72337,48.00809],[-122.71808,47.98774],[-122.6788,47.96793],[-122.68445,47.93959],[-122.65772,47.93116],[-122.64649,47.89477],[-122.61034,47.88734],[-122.63636,47.86619],[-122.69376,47.868],[-122.68374,47.83877],[-122.74806,47.80055],[-122.7585,47.74604],[-122.73301,47.73763],[-122.7148,47.76818],[-122.69056,47.77837],[-122.68202,47.80088],[-122.62319,47.8362],[-122.6081,47.85673],[-122.57367,47.85758],[-122.58823,47.91292],[-122.6167,47.92514],[-122.61702,47.93899],[-122.60386,47.94048],[-122.59218,47.92252],[-122.54907,47.91907],[-122.52759,47.90588],[-122.50612,47.83174],[-122.48253,47.81551],[-122.49546,47.78669],[-122.47033,47.75711],[-122.48849,47.74361],[-122.55445,47.7457],[-122.54316,47.71094],[-122.5112,47.70871],[-122.5046,47.69914],[-122.51828,47.65132],[-122.49321,47.63512],[-122.49824,47.59824],[-122.47909,47.58365],[-122.53466,47.56612],[-122.54661,47.52355],[-122.4524,47.50347],[-122.46003,47.48686],[-122.43339,47.46643],[-122.43766,47.40742],[-122.37363,47.38872],[-122.43781,47.36561],[-122.454,47.34334],[-122.4697,47.34462],[-122.49312,47.33025],[-122.51885,47.33332],[-122.52603,47.35891],[-122.55154,47.35954],[-122.57599,47.32642],[-122.57124,47.31562],[-122.53334,47.31662],[-122.4442,47.26672],[-122.4092,47.28856],[-122.44464,47.30042],[-122.41827,47.32061]]]]}},{"type":"Feature","properties":{"code":"50","nom":"Vermont"},"geometry":{"type":"Polygon","coordinates":[[[-72.45852,42.72685],[-73.27642,42.74602],[-73.29094,42.80192],[-73.27867,42.83341],[-73.24204,43.53493],[-73.30623,43.62802],[-73.36654,43.62346],[-73.40029,43.56889],[-73.43123,43.58828],[-73.42161,43.64658],[-73.35043,43.77144],[-73.38839,43.8324],[-73.40774,43.92989],[-73.406,44.01623],[-73.43743,44.04686],[-73.39058,44.19089],[-73.32468,44.24361],[-73.31502,44.38851],[-73.29361,44.4389],[-73.30671,44.50033],[-73.33863,44.54684],[-73.37439,44.57545],[-73.39023,44.61835],[-73.33996,44.77889],[-73.36965,44.82914],[-73.34312,45.01084],[-72.84563,45.01666],[-72.10306,45.0056],[-71.46456,45.01364],[-71.53698,44.99418],[-71.49584,44.90498],[-71.62736,44.74754],[-71.53625,44.58794],[-71.58026,44.50651],[-71.70893,44.41161],[-71.79392,44.39927],[-71.81606,44.36682],[-72.01217,44.32141],[-72.05888,44.28624],[-72.06777,44.27098],[-72.06428,44.18789],[-72.04008,44.15575],[-72.11281,43.98802],[-72.10442,43.95054],[-72.121,43.91896],[-72.16722,43.88611],[-72.18374,43.80664],[-72.20479,43.77193],[-72.23271,43.74829],[-72.27118,43.73414],[-72.30287,43.70272],[-72.3344,43.61925],[-72.32962,43.6002],[-72.39583,43.52056],[-72.38785,43.47157],[-72.40525,43.38999],[-72.39715,43.31652],[-72.4521,43.16141],[-72.43266,43.11408],[-72.44376,43.00624],[-72.55621,42.86695],[-72.54278,42.80848],[-72.47845,42.7623],[-72.45852,42.72685]]]}},{"type":"Feature","properties":{"code":"49","nom":"Utah"},"geometry":{"type":"Polygon","coordinates":[[[-111.04669,42.00157],[-111.04672,40.99796],[-109.05008,41.00066],[-109.06006,38.27549],[-109.04206,38.15549],[-109.04522,36.99908],[-114.0506,37.0004],[-114.04172,41.99372],[-113.89326,41.98806],[-112.70937,42.00031],[-111.04669,42.00157]]]}},{"type":"Feature","properties":{"code":"19","nom":"Iowa"},"geometry":{"type":"Polygon","coordinates":[[[-91.16306,42.98678],[-91.14556,42.90798],[-91.10057,42.88308],[-91.05373,42.73824],[-90.94921,42.68557],[-90.7092,42.63608],[-90.63673,42.5187],[-90.65403,42.4785],[-90.47728,42.38379],[-90.41903,42.3285],[-90.43088,42.27823],[-90.39111,42.22547],[-90.35696,42.20544],[-90.23492,42.16543],[-90.16753,42.12248],[-90.16454,42.04501],[-90.14061,41.996],[-90.18197,41.80707],[-90.27863,41.76736],[-90.30983,41.74332],[-90.34316,41.64814],[-90.34165,41.62148],[-90.46143,41.52353],[-90.60594,41.49423],[-90.65584,41.46213],[-90.73754,41.45013],[-90.84746,41.45502],[-90.98998,41.43196],[-91.04782,41.4109],[-91.11365,41.2414],[-91.04981,41.17803],[-90.98966,41.15572],[-90.94663,41.09663],[-90.95223,40.95405],[-90.969,40.91913],[-91.00954,40.90057],[-91.09299,40.82108],[-91.12242,40.67068],[-91.18698,40.6373],[-91.25307,40.63796],[-91.33972,40.61349],[-91.40524,40.55464],[-91.40412,40.53913],[-91.38453,40.53095],[-91.36421,40.50004],[-91.37255,40.4012],[-91.38836,40.38493],[-91.41942,40.37826],[-91.48451,40.3839],[-91.52461,40.41076],[-91.61949,40.50713],[-91.62007,40.54082],[-91.72911,40.61364],[-92.68669,40.58981],[-94.29481,40.57134],[-95.76565,40.58521],[-95.74863,40.60336],[-95.77625,40.64746],[-95.8428,40.6775],[-95.88318,40.71758],[-95.88669,40.7421],[-95.86169,40.76287],[-95.82119,40.87668],[-95.82907,40.97569],[-95.86729,41.0016],[-95.85279,41.1654],[-95.92599,41.1957],[-95.90249,41.2734],[-95.91379,41.3202],[-95.93929,41.3289],[-95.95679,41.3492],[-95.93071,41.43389],[-95.99478,41.52624],[-96.03059,41.52729],[-96.04671,41.50708],[-96.09409,41.53927],[-96.1181,41.6135],[-96.09542,41.65274],[-96.12173,41.68274],[-96.07709,41.7154],[-96.06454,41.793],[-96.11091,41.83082],[-96.16176,41.90182],[-96.13674,41.92083],[-96.1295,41.97167],[-96.27288,42.04724],[-96.30742,42.13071],[-96.34969,42.17204],[-96.35987,42.21055],[-96.32372,42.22989],[-96.32891,42.25473],[-96.37531,42.31834],[-96.41779,42.35145],[-96.41361,42.40789],[-96.38071,42.44639],[-96.38541,42.47309],[-96.39611,42.4841],[-96.44341,42.48949],[-96.47695,42.50868],[-96.47695,42.55608],[-96.51634,42.63043],[-96.5753,42.68267],[-96.63062,42.70588],[-96.6397,42.73707],[-96.63214,42.77086],[-96.57781,42.8281],[-96.54951,42.83914],[-96.51075,42.9444],[-96.51311,43.02788],[-96.46602,43.06224],[-96.43659,43.12084],[-96.47557,43.22105],[-96.55713,43.22419],[-96.58412,43.2681],[-96.56911,43.29554],[-96.53039,43.30003],[-96.5217,43.3869],[-96.59425,43.43415],[-96.60286,43.45091],[-96.58407,43.46886],[-96.59893,43.50046],[-91.21771,43.50055],[-91.21023,43.37206],[-91.10724,43.31365],[-91.05792,43.25537],[-91.1462,43.15241],[-91.17525,43.13466],[-91.17809,43.06204],[-91.16306,42.98678]]]}},{"type":"Feature","properties":{"code":"21","nom":"Kentucky"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-89.5391,36.4982],[-89.57007,36.54439],[-89.56682,36.56422],[-89.54611,36.57999],[-89.48484,36.57182],[-89.46545,36.53616],[-89.47246,36.51374],[-89.48511,36.49769],[-89.5391,36.4982]]],[[[-82.60423,38.2473],[-82.64474,38.16549],[-82.63647,38.13786],[-82.60013,38.11739],[-82.54728,38.06109],[-82.51967,38.00854],[-82.46547,37.98478],[-82.50039,37.93652],[-82.41768,37.87066],[-82.32987,37.7759],[-82.31902,37.75889],[-82.32574,37.7358],[-82.29701,37.68727],[-82.14181,37.59505],[-82.11658,37.55959],[-82.04852,37.53108],[-82.00827,37.53336],[-81.99818,37.54308],[-81.9683,37.5378],[-82.35095,37.26708],[-82.56533,37.19612],[-82.72194,37.10569],[-82.72247,37.0451],[-82.86754,36.97752],[-82.87023,36.9655],[-82.85571,36.95381],[-82.86194,36.92424],[-82.91169,36.87425],[-82.97339,36.8591],[-83.07259,36.85459],[-83.13169,36.78149],[-83.12565,36.76141],[-83.13639,36.74309],[-83.1997,36.73749],[-83.46081,36.66488],[-83.52721,36.66598],[-83.64951,36.61668],[-83.69071,36.58258],[-84.78534,36.60337],[-85.27628,36.62651],[-85.55148,36.61573],[-86.4685,36.65184],[-86.56414,36.63347],[-86.60504,36.65212],[-87.8532,36.63325],[-87.84957,36.6637],[-88.07053,36.67812],[-88.03249,36.54066],[-88.05321,36.49713],[-89.2823,36.50678],[-89.41729,36.49903],[-89.36555,36.62506],[-89.32673,36.63219],[-89.27171,36.57139],[-89.23654,36.56682],[-89.21356,36.58012],[-89.19765,36.62894],[-89.17474,36.65042],[-89.17188,36.67253],[-89.19948,36.71605],[-89.19781,36.73941],[-89.16911,36.75947],[-89.1304,36.7517],[-89.12353,36.78531],[-89.17923,36.81291],[-89.17718,36.83578],[-89.14767,36.84715],[-89.10077,36.94397],[-89.1736,37.01141],[-89.18137,37.0463],[-89.08653,37.1656],[-89.00097,37.2244],[-88.93339,37.22501],[-88.94211,37.22881],[-88.62589,37.11946],[-88.5454,37.07],[-88.51436,37.06523],[-88.45895,37.0738],[-88.4244,37.15243],[-88.44776,37.20353],[-88.50933,37.26213],[-88.51594,37.28404],[-88.47659,37.38688],[-88.456,37.40848],[-88.40881,37.42522],[-88.35844,37.40486],[-88.28167,37.4526],[-88.08339,37.47368],[-88.06256,37.48938],[-88.07224,37.52883],[-88.13342,37.57428],[-88.15821,37.66454],[-88.12241,37.70969],[-88.05959,37.74261],[-88.02803,37.79922],[-88.00471,37.80015],[-87.94376,37.77684],[-87.90681,37.80762],[-87.91028,37.84342],[-87.94084,37.88334],[-87.90479,37.92489],[-87.87254,37.921],[-87.83058,37.87652],[-87.7909,37.87571],[-87.76226,37.89091],[-87.67573,37.90193],[-87.66286,37.88558],[-87.68163,37.85592],[-87.67919,37.83632],[-87.64586,37.8259],[-87.6154,37.83197],[-87.58873,37.86098],[-87.59158,37.88719],[-87.62027,37.90692],[-87.62896,37.92671],[-87.60142,37.97254],[-87.58592,37.97544],[-87.55934,37.93115],[-87.5115,37.90643],[-87.45046,37.94145],[-87.38025,37.9356],[-87.20224,37.84379],[-87.12875,37.78573],[-87.11113,37.78251],[-87.06784,37.80606],[-87.03344,37.90659],[-86.97896,37.9302],[-86.91933,37.93666],[-86.85595,37.98729],[-86.82349,37.99894],[-86.79498,37.98898],[-86.73146,37.89434],[-86.70916,37.89764],[-86.66029,37.86506],[-86.6553,37.84251],[-86.63427,37.84385],[-86.60462,37.85827],[-86.52517,37.96823],[-86.51729,38.04263],[-86.45219,38.05049],[-86.39866,38.10624],[-86.30973,38.14439],[-86.28396,38.14319],[-86.27122,38.13011],[-86.27872,38.0893],[-86.26689,38.05712],[-86.17898,38.01131],[-86.02951,37.99264],[-85.95147,38.00561],[-85.92239,38.02868],[-85.90616,38.08617],[-85.90876,38.16117],[-85.82936,38.27677],[-85.78096,38.28847],[-85.74486,38.26717],[-85.68356,38.29547],[-85.65364,38.32711],[-85.60763,38.4393],[-85.42308,38.53158],[-85.41582,38.56356],[-85.43935,38.61039],[-85.45698,38.68914],[-85.43407,38.72946],[-85.27545,38.74117],[-85.2465,38.73182],[-85.21326,38.69545],[-85.17253,38.68808],[-84.99594,38.77676],[-84.9443,38.77518],[-84.81335,38.79833],[-84.78511,38.87999],[-84.84945,39.00092],[-84.89736,39.05738],[-84.8312,39.10192],[-84.78768,39.1153],[-84.75445,39.14666],[-84.73205,39.14446],[-84.68485,39.10046],[-84.62011,39.07346],[-84.49374,39.10246],[-84.43284,39.09426],[-84.3047,39.00646],[-84.23445,38.89323],[-84.23131,38.83055],[-84.2129,38.80571],[-84.07149,38.77047],[-83.96212,38.78738],[-83.87044,38.76161],[-83.77782,38.67445],[-83.76935,38.65522],[-83.67948,38.63004],[-83.64974,38.63275],[-83.62692,38.67939],[-83.52095,38.70305],[-83.36908,38.65933],[-83.2821,38.60299],[-83.15693,38.62055],[-83.0307,38.72572],[-82.97939,38.72598],[-82.88919,38.75608],[-82.87129,38.73938],[-82.86959,38.67818],[-82.83954,38.58616],[-82.78978,38.55995],[-82.73096,38.55926],[-82.69662,38.54211],[-82.59367,38.42181],[-82.59538,38.38271],[-82.57188,38.31578],[-82.57466,38.26387],[-82.584,38.24637],[-82.60423,38.2473]]]]}},{"type":"Feature","properties":{"code":"23","nom":"Maine"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-69.30791,43.77377],[-69.30082,43.7686],[-69.32256,43.75588],[-69.30791,43.77377]]],[[[-69.42792,43.9288],[-69.42332,43.91551],[-69.44091,43.90977],[-69.43376,43.94935],[-69.42107,43.93826],[-69.42792,43.9288]]],[[[-67.61976,44.51975],[-67.58211,44.51346],[-67.59063,44.49415],[-67.56265,44.4721],[-67.57421,44.45173],[-67.58835,44.44975],[-67.61976,44.51975]]],[[[-70.11967,43.74862],[-70.09499,43.75321],[-70.10898,43.72231],[-70.12938,43.70832],[-70.13871,43.72756],[-70.11967,43.74862]]],[[[-70.17124,43.6635],[-70.20717,43.63369],[-70.18805,43.67376],[-70.17124,43.6635]]],[[[-70.18621,43.68265],[-70.21313,43.66297],[-70.20189,43.68548],[-70.18621,43.68265]]],[[[-70.16388,43.6924],[-70.13556,43.70066],[-70.17028,43.67544],[-70.16388,43.6924]]],[[[-70.08762,43.69991],[-70.11829,43.68334],[-70.09311,43.71052],[-70.09718,43.70093],[-70.08762,43.69991]]],[[[-68.88024,43.8634],[-68.87622,43.8366],[-68.89832,43.82099],[-68.90262,43.86886],[-68.88937,43.87553],[-68.88024,43.8634]]],[[[-69.04398,44.00568],[-69.0782,43.97413],[-69.09299,43.97906],[-69.06197,44.01502],[-69.04398,44.00568]]],[[[-68.61821,44.01237],[-68.63532,44.01889],[-68.65703,44.00382],[-68.65077,44.03991],[-68.66159,44.07584],[-68.6181,44.09671],[-68.58407,44.07058],[-68.6011,44.05836],[-68.61821,44.01237]]],[[[-68.7856,44.0535],[-68.81844,44.03205],[-68.86284,44.02504],[-68.88972,44.03252],[-68.91341,44.08519],[-68.90898,44.11],[-68.9446,44.11284],[-68.93533,44.13038],[-68.91729,44.14824],[-68.82507,44.18634],[-68.81842,44.16098],[-68.78069,44.14327],[-68.82052,44.1302],[-68.77264,44.07844],[-68.7856,44.0535]]],[[[-68.94283,44.28107],[-68.9193,44.30987],[-68.90353,44.37861],[-68.87894,44.38658],[-68.86434,44.355],[-68.89285,44.33465],[-68.88746,44.30309],[-68.91687,44.24287],[-68.95189,44.21872],[-68.94709,44.22679],[-68.96707,44.25197],[-68.94283,44.28107]]],[[[-68.49947,44.12419],[-68.49152,44.10983],[-68.50294,44.09972],[-68.51706,44.10341],[-68.51127,44.12508],[-68.49947,44.12419]]],[[[-68.35839,44.12508],[-68.34672,44.12775],[-68.33072,44.1106],[-68.33801,44.10147],[-68.36518,44.10146],[-68.37659,44.11221],[-68.35839,44.12508]]],[[[-68.45324,44.19],[-68.41643,44.18705],[-68.3849,44.15496],[-68.43852,44.11618],[-68.45681,44.14527],[-68.5021,44.15239],[-68.45324,44.19]]],[[[-68.68077,44.27924],[-68.62355,44.25562],[-68.60591,44.23077],[-68.62499,44.19764],[-68.61887,44.18107],[-68.643,44.15766],[-68.67001,44.15154],[-68.67506,44.13713],[-68.72043,44.16918],[-68.71431,44.20376],[-68.72296,44.21961],[-68.68046,44.2621],[-68.68077,44.27924]]],[[[-68.35528,44.1991],[-68.33323,44.20731],[-68.31479,44.19716],[-68.33264,44.19213],[-68.34742,44.16946],[-68.37887,44.18422],[-68.35528,44.1991]]],[[[-68.47283,44.21977],[-68.45422,44.19953],[-68.48452,44.20289],[-68.48056,44.22859],[-68.47032,44.22832],[-68.47283,44.21977]]],[[[-68.79214,44.23782],[-68.76983,44.22279],[-68.78006,44.20313],[-68.83785,44.22711],[-68.82763,44.24284],[-68.79214,44.23782]]],[[[-68.23638,44.26625],[-68.21133,44.25707],[-68.24031,44.25162],[-68.24891,44.23544],[-68.27443,44.2371],[-68.27472,44.25867],[-68.2466,44.25784],[-68.23638,44.26625]]],[[[-68.49864,44.36969],[-68.47879,44.31956],[-68.48964,44.3137],[-68.53039,44.33358],[-68.51857,44.38102],[-68.50136,44.38228],[-68.49864,44.36969]]],[[[-69.02859,44.24914],[-69.05455,44.17154],[-69.07778,44.16504],[-69.07567,44.12999],[-69.10111,44.0936],[-69.08908,44.08533],[-69.05081,44.09489],[-69.03188,44.07904],[-69.04892,44.06251],[-69.06788,44.0676],[-69.0798,44.05526],[-69.07377,44.04613],[-69.12574,44.01962],[-69.12448,44.00742],[-69.17034,43.99564],[-69.21421,43.93558],[-69.25984,43.92143],[-69.2805,43.95744],[-69.31427,43.94295],[-69.3043,43.96207],[-69.33141,43.97431],[-69.38806,43.96434],[-69.41617,43.97727],[-69.42876,43.95793],[-69.4416,43.96425],[-69.45964,43.90332],[-69.50329,43.83767],[-69.51489,43.8313],[-69.5203,43.8685],[-69.54391,43.88161],[-69.55261,43.84135],[-69.5727,43.84401],[-69.58855,43.81836],[-69.60593,43.81486],[-69.59237,43.83089],[-69.59471,43.85888],[-69.60462,43.858],[-69.62109,43.82681],[-69.63493,43.84591],[-69.6498,43.83629],[-69.65334,43.79103],[-69.66492,43.79103],[-69.68558,43.82055],[-69.70584,43.82302],[-69.71972,43.78668],[-69.7528,43.75594],[-69.7801,43.7554],[-69.77835,43.74461],[-69.83532,43.72113],[-69.83869,43.70514],[-69.85508,43.70475],[-69.85559,43.73266],[-69.86867,43.7427],[-69.86216,43.75896],[-69.86973,43.77566],[-69.88407,43.77804],[-69.90316,43.77239],[-69.92701,43.78017],[-69.95806,43.76779],[-69.98257,43.7508],[-70.00164,43.71767],[-70.00171,43.74447],[-70.04135,43.73805],[-69.99821,43.79868],[-70.00287,43.81209],[-70.02619,43.82259],[-70.00287,43.84824],[-70.00987,43.85932],[-70.03202,43.84999],[-70.06467,43.81326],[-70.081,43.81967],[-70.10723,43.80918],[-70.17602,43.76079],[-70.17544,43.77711],[-70.19001,43.77187],[-70.21683,43.70482],[-70.23199,43.70482],[-70.25414,43.67684],[-70.2112,43.62577],[-70.21709,43.59672],[-70.20112,43.58651],[-70.19691,43.56515],[-70.24433,43.55185],[-70.2725,43.56262],[-70.36121,43.52919],[-70.38562,43.48703],[-70.38023,43.46423],[-70.34968,43.44203],[-70.37051,43.43413],[-70.39089,43.40261],[-70.42128,43.39578],[-70.42499,43.37593],[-70.46072,43.34325],[-70.5177,43.34404],[-70.55385,43.32189],[-70.59391,43.24929],[-70.57669,43.21765],[-70.66596,43.07623],[-70.70394,43.05962],[-70.7564,43.07999],[-70.8281,43.12909],[-70.81786,43.23791],[-70.86323,43.2651],[-70.93078,43.32957],[-70.96723,43.34378],[-70.98773,43.39151],[-70.95332,43.55272],[-70.97272,43.57026],[-71.03752,44.75561],[-71.08433,45.30529],[-71.01427,45.31676],[-70.99023,45.33628],[-70.95082,45.33453],[-70.9179,45.31192],[-70.8969,45.24203],[-70.85704,45.22916],[-70.83948,45.23783],[-70.80832,45.32582],[-70.80766,45.37812],[-70.82561,45.40031],[-70.79848,45.42474],[-70.75398,45.42779],[-70.71229,45.39061],[-70.65199,45.37715],[-70.63466,45.38361],[-70.62653,45.40701],[-70.6355,45.42782],[-70.71633,45.48691],[-70.72161,45.51506],[-70.68653,45.54999],[-70.68821,45.56398],[-70.56479,45.65515],[-70.4515,45.70443],[-70.39721,45.75687],[-70.41767,45.79457],[-70.39636,45.8027],[-70.38792,45.81904],[-70.34244,45.85219],[-70.3078,45.85894],[-70.26265,45.88785],[-70.24018,45.94373],[-70.26541,45.96269],[-70.31206,45.97154],[-70.31061,46.06454],[-70.28455,46.09871],[-70.25241,46.10622],[-70.23795,46.14738],[-70.29274,46.1916],[-70.18805,46.35001],[-70.13337,46.36891],[-70.05643,46.41659],[-69.99709,46.69523],[-69.22442,47.45969],[-69.0427,47.42665],[-69.03113,47.40311],[-69.05382,47.37504],[-69.05033,47.25662],[-68.90099,47.17852],[-68.5804,47.28696],[-68.47485,47.29753],[-68.36156,47.3556],[-68.2841,47.36039],[-68.24017,47.35422],[-68.15351,47.31404],[-67.95567,47.19954],[-67.88916,47.11877],[-67.79051,47.06792],[-67.78109,45.94303],[-67.76377,45.82032],[-67.8066,45.79472],[-67.81789,45.69371],[-67.80331,45.67789],[-67.75424,45.66779],[-67.64581,45.6136],[-67.49944,45.58701],[-67.48979,45.60118],[-67.45541,45.60466],[-67.42545,45.57909],[-67.42567,45.50292],[-67.46348,45.50852],[-67.50377,45.48852],[-67.47337,45.42533],[-67.42215,45.37966],[-67.42916,45.34425],[-67.4601,45.30118],[-67.48933,45.28128],[-67.40521,45.16569],[-67.345,45.12621],[-67.30547,45.14483],[-67.28362,45.19202],[-67.16125,45.16288],[-67.11241,45.11232],[-67.09079,45.06872],[-67.11769,45.05673],[-67.08207,45.02961],[-67.03347,44.93992],[-66.98447,44.91256],[-66.99035,44.88255],[-66.97814,44.85696],[-66.99652,44.84465],[-66.98632,44.82066],[-66.94989,44.81742],[-66.97971,44.80736],[-67.02615,44.7682],[-67.06224,44.76954],[-67.07344,44.74196],[-67.09893,44.74131],[-67.10396,44.71744],[-67.13921,44.69385],[-67.15448,44.66811],[-67.18661,44.66265],[-67.18943,44.64553],[-67.25125,44.64082],[-67.2934,44.59927],[-67.31494,44.59822],[-67.32297,44.60939],[-67.29367,44.63432],[-67.29246,44.64845],[-67.30963,44.65932],[-67.29918,44.70571],[-67.30854,44.70745],[-67.35597,44.69906],[-67.37674,44.68185],[-67.36316,44.63182],[-67.37755,44.61976],[-67.3887,44.62655],[-67.40549,44.59424],[-67.42837,44.60914],[-67.45775,44.59801],[-67.5058,44.63684],[-67.53078,44.62194],[-67.55113,44.62194],[-67.57506,44.56066],[-67.56816,44.53112],[-67.64851,44.5254],[-67.66068,44.53757],[-67.68586,44.53715],[-67.70265,44.52792],[-67.69887,44.51575],[-67.71419,44.49524],[-67.73399,44.49625],[-67.74335,44.49742],[-67.75385,44.54366],[-67.774,44.54744],[-67.78156,44.52058],[-67.79726,44.52069],[-67.80884,44.54408],[-67.8399,44.55877],[-67.85668,44.52393],[-67.85165,44.4849],[-67.86877,44.46527],[-67.85511,44.41943],[-67.88732,44.43307],[-67.89957,44.39408],[-67.91335,44.43013],[-67.92636,44.43181],[-67.93145,44.41185],[-67.95574,44.41628],[-67.97888,44.38703],[-68.01072,44.40746],[-68.0443,44.35794],[-68.04933,44.33073],[-68.06705,44.33569],[-68.07787,44.37305],[-68.09298,44.37095],[-68.11229,44.40159],[-68.11775,44.47504],[-68.1509,44.48238],[-68.17105,44.47021],[-68.19455,44.47189],[-68.19204,44.48742],[-68.21386,44.49246],[-68.22939,44.4635],[-68.26171,44.48406],[-68.27052,44.45972],[-68.29822,44.44922],[-68.29906,44.43789],[-68.24744,44.43328],[-68.24996,44.41481],[-68.21554,44.39047],[-68.20354,44.39236],[-68.18453,44.36915],[-68.17361,44.3284],[-68.19192,44.30667],[-68.23344,44.28858],[-68.28941,44.28386],[-68.29864,44.26665],[-68.29082,44.24767],[-68.31759,44.2251],[-68.3395,44.22289],[-68.40127,44.25224],[-68.41965,44.27461],[-68.43085,44.31261],[-68.40903,44.32562],[-68.42147,44.33775],[-68.39655,44.36394],[-68.39803,44.37619],[-68.36032,44.38967],[-68.35908,44.40285],[-68.38768,44.43094],[-68.42787,44.3968],[-68.43928,44.44804],[-68.46382,44.43659],[-68.46107,44.3785],[-68.47828,44.37808],[-68.48332,44.38816],[-68.47282,44.40411],[-68.48542,44.43433],[-68.49969,44.41418],[-68.5299,44.39907],[-68.56516,44.39907],[-68.54543,44.355],[-68.5662,44.31301],[-68.53153,44.29039],[-68.51952,44.26505],[-68.5298,44.24959],[-68.5253,44.22755],[-68.60339,44.27471],[-68.68298,44.2992],[-68.733,44.32839],[-68.76202,44.3296],[-68.79506,44.30786],[-68.8272,44.31216],[-68.81481,44.36219],[-68.82177,44.40894],[-68.78368,44.47388],[-68.82915,44.46224],[-68.88027,44.42811],[-68.90093,44.45206],[-68.92745,44.44804],[-68.94658,44.42911],[-68.98245,44.42619],[-68.9844,44.39688],[-68.94816,44.35588],[-68.95446,44.32405],[-68.97901,44.29633],[-69.00368,44.29458],[-69.00507,44.27407],[-69.02859,44.24914]]]]}},{"type":"Feature","properties":{"code":"25","nom":"Massachusetts"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-70.821,41.58727],[-70.83845,41.59646],[-70.83204,41.6065],[-70.821,41.58727]]],[[[-70.59628,41.4719],[-70.56328,41.46913],[-70.54757,41.41583],[-70.50698,41.40024],[-70.49896,41.38434],[-70.4845,41.38629],[-70.47079,41.41287],[-70.45043,41.4207],[-70.45108,41.34816],[-70.70983,41.34172],[-70.74754,41.32995],[-70.77567,41.30098],[-70.83878,41.34721],[-70.81231,41.35574],[-70.77497,41.34918],[-70.68688,41.44133],[-70.60356,41.48238],[-70.59628,41.4719]]],[[[-70.09214,41.29774],[-70.06257,41.30873],[-70.03133,41.33933],[-70.03092,41.36745],[-70.04905,41.3917],[-70.01845,41.36863],[-69.96028,41.27873],[-69.96442,41.25457],[-70.01523,41.23796],[-70.11867,41.24235],[-70.25616,41.28812],[-70.27553,41.31046],[-70.22954,41.29017],[-70.09214,41.29774]]],[[[-72.19883,42.03098],[-72.75584,42.03619],[-72.76674,42.00299],[-72.81674,41.99759],[-72.81354,42.03649],[-73.49688,42.04968],[-73.50814,42.08626],[-73.26496,42.74594],[-71.29421,42.69699],[-71.2455,42.74259],[-71.1818,42.73759],[-71.1861,42.79069],[-71.1497,42.81549],[-70.9308,42.88459],[-70.88614,42.88261],[-70.84862,42.86094],[-70.8173,42.87229],[-70.80522,42.7818],[-70.77045,42.70482],[-70.77867,42.69362],[-70.74443,42.68209],[-70.72885,42.66388],[-70.6894,42.65332],[-70.63008,42.6927],[-70.62003,42.68801],[-70.62279,42.66087],[-70.59547,42.66034],[-70.59147,42.63982],[-70.61842,42.62864],[-70.65473,42.58223],[-70.66802,42.58173],[-70.67882,42.59439],[-70.69857,42.57739],[-70.73704,42.57686],[-70.87138,42.5464],[-70.86628,42.52262],[-70.84209,42.51949],[-70.83109,42.5036],[-70.83599,42.4905],[-70.85779,42.4903],[-70.89429,42.4609],[-70.91769,42.468],[-70.93499,42.4579],[-70.93315,42.43783],[-70.90569,42.4162],[-70.93639,42.4181],[-70.94702,42.45624],[-70.98299,42.424],[-70.98919,42.4026],[-70.9702,42.38804],[-70.95302,42.34397],[-70.97993,42.35638],[-71.00688,42.34704],[-71.01568,42.32602],[-71.00095,42.30248],[-71.0049,42.28272],[-70.98909,42.26745],[-70.94897,42.27251],[-70.91094,42.26541],[-70.89578,42.29244],[-70.91749,42.30569],[-70.88276,42.30886],[-70.85109,42.26827],[-70.77096,42.2492],[-70.72227,42.20796],[-70.7143,42.16878],[-70.63848,42.08158],[-70.64735,42.07633],[-70.64434,42.0459],[-70.66936,42.03712],[-70.67093,42.00779],[-70.69581,42.01335],[-70.7122,42.00759],[-70.71003,41.99954],[-70.66248,41.96059],[-70.64836,41.96167],[-70.61649,41.9402],[-70.58357,41.95001],[-70.55294,41.92964],[-70.52557,41.85873],[-70.54103,41.81575],[-70.49405,41.77388],[-70.41248,41.7444],[-70.29096,41.73431],[-70.2592,41.71395],[-70.21607,41.74298],[-70.06431,41.77284],[-70.00846,41.80079],[-70.00901,41.87662],[-70.00019,41.88694],[-70.02433,41.89882],[-70.03054,41.92915],[-70.045,41.93005],[-70.06567,41.91166],[-70.06757,41.87779],[-70.07742,41.9855],[-70.0956,42.03283],[-70.15542,42.06241],[-70.18682,42.05045],[-70.19083,42.02003],[-70.24538,42.06373],[-70.22563,42.0786],[-70.18931,42.08234],[-70.08262,42.05466],[-70.0335,42.01774],[-69.9686,41.9117],[-69.93595,41.80942],[-69.93311,41.67001],[-69.96787,41.6275],[-69.99807,41.54365],[-70.01658,41.55077],[-69.99436,41.57685],[-69.97315,41.64696],[-70.00701,41.67158],[-70.19106,41.64526],[-70.24587,41.62848],[-70.26542,41.60933],[-70.28132,41.63513],[-70.35163,41.63469],[-70.37915,41.61136],[-70.43725,41.60533],[-70.48557,41.55424],[-70.63361,41.53825],[-70.79027,41.44634],[-70.94843,41.40919],[-70.92817,41.43127],[-70.90601,41.42571],[-70.80219,41.46086],[-70.65866,41.54339],[-70.64095,41.57733],[-70.65245,41.60521],[-70.64,41.62462],[-70.65261,41.63783],[-70.63763,41.65457],[-70.64631,41.67843],[-70.66147,41.68176],[-70.62544,41.69869],[-70.62653,41.71299],[-70.72633,41.73273],[-70.71958,41.685],[-70.75535,41.69433],[-70.76546,41.64158],[-70.81329,41.65567],[-70.80106,41.62951],[-70.85252,41.62692],[-70.85312,41.58732],[-70.86962,41.62561],[-70.88921,41.6329],[-70.9132,41.61927],[-70.90138,41.5925],[-70.92972,41.60948],[-70.93134,41.5842],[-70.9488,41.57904],[-70.93154,41.54017],[-70.97922,41.53043],[-70.98335,41.52062],[-71.03551,41.49905],[-71.08566,41.50929],[-71.12057,41.49745],[-71.13469,41.6605],[-71.19564,41.67509],[-71.26139,41.7523],[-71.3279,41.7805],[-71.3393,41.8065],[-71.3393,41.8936],[-71.3766,41.894],[-71.3814,42.0188],[-71.79924,42.00807],[-71.80065,42.02357],[-72.19883,42.03098]]]]}},{"type":"Feature","properties":{"code":"26","nom":"Michigan"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-85.56644,45.76022],[-85.53562,45.75039],[-85.50127,45.75442],[-85.49766,45.74625],[-85.51515,45.74945],[-85.52191,45.73942],[-85.49878,45.72629],[-85.49402,45.69848],[-85.5061,45.68115],[-85.48703,45.62121],[-85.53406,45.5782],[-85.56163,45.57221],[-85.61805,45.58265],[-85.63002,45.59817],[-85.60452,45.63926],[-85.60488,45.68193],[-85.57231,45.71145],[-85.56644,45.76022]]],[[[-88.68443,48.11579],[-88.65691,48.13923],[-88.54703,48.17489],[-88.52475,48.16529],[-88.50109,48.16818],[-88.4226,48.19098],[-88.41988,48.17073],[-88.4597,48.15855],[-88.56694,48.09372],[-88.57978,48.05867],[-88.67007,48.01145],[-88.89918,47.9533],[-88.96266,47.92351],[-88.9689,47.90167],[-88.94239,47.89544],[-88.8997,47.90245],[-88.91166,47.89134],[-89.15774,47.82402],[-89.19017,47.8316],[-89.20181,47.85024],[-89.23453,47.85172],[-89.22851,47.85804],[-89.2552,47.8761],[-89.17915,47.93503],[-88.94089,48.01959],[-88.91503,48.02068],[-88.83571,48.05675],[-88.78756,48.06303],[-88.76426,48.08519],[-88.68443,48.11579]]],[[[-84.59323,45.81739],[-84.65078,45.85921],[-84.64688,45.88464],[-84.62252,45.87753],[-84.57833,45.82009],[-84.43247,45.78673],[-84.41934,45.80675],[-84.40321,45.78439],[-84.35631,45.76949],[-84.40585,45.72242],[-84.48413,45.73071],[-84.59323,45.81739]]],[[[-86.09354,45.00784],[-86.13366,44.99687],[-86.15482,45.00239],[-86.14164,45.04025],[-86.11791,45.04848],[-86.09317,45.04149],[-86.0791,45.03079],[-86.10031,45.02624],[-86.09354,45.00784]]],[[[-86.03317,45.15842],[-85.99319,45.15281],[-85.9768,45.13836],[-85.97688,45.06266],[-85.99736,45.05593],[-86.0604,45.10462],[-86.05939,45.15229],[-86.03317,45.15842]]],[[[-83.3722,41.87412],[-83.4096,41.83033],[-83.43961,41.81316],[-83.44336,41.78912],[-83.42408,41.74074],[-83.45383,41.73265],[-84.80608,41.69609],[-84.80613,41.74312],[-84.81887,41.76006],[-86.82483,41.76024],[-86.71704,41.81935],[-86.61944,41.89383],[-86.48522,42.11824],[-86.35622,42.25417],[-86.26157,42.44389],[-86.22561,42.59477],[-86.22905,42.63769],[-86.20683,42.71942],[-86.21074,42.85913],[-86.23271,43.01576],[-86.28076,43.13602],[-86.40783,43.33844],[-86.47928,43.51534],[-86.52951,43.59346],[-86.54092,43.63316],[-86.52918,43.67789],[-86.46155,43.74668],[-86.43104,43.81598],[-86.46314,43.97098],[-86.50883,44.03276],[-86.5147,44.05812],[-86.42111,44.12948],[-86.26871,44.34532],[-86.24808,44.42095],[-86.24891,44.483],[-86.2207,44.56674],[-86.25903,44.66365],[-86.255,44.69194],[-86.16027,44.72819],[-86.12113,44.72797],[-86.08919,44.7415],[-86.06597,44.82152],[-86.06674,44.90568],[-86.03833,44.9157],[-86.02151,44.90277],[-85.99254,44.90003],[-85.9316,44.96879],[-85.89763,44.96201],[-85.86985,44.93903],[-85.8074,44.94981],[-85.78044,44.97793],[-85.77139,45.01518],[-85.74644,45.05123],[-85.69572,45.07646],[-85.61864,45.18677],[-85.58599,45.18038],[-85.55107,45.21074],[-85.52673,45.18932],[-85.53146,45.17725],[-85.5639,45.15436],[-85.5998,45.14929],[-85.61432,45.12756],[-85.56607,45.0592],[-85.56613,45.04363],[-85.59718,45.04055],[-85.59965,45.02175],[-85.62188,45.00453],[-85.6043,44.99098],[-85.60203,44.92674],[-85.6255,44.92111],[-85.65236,44.84909],[-85.64078,44.77556],[-85.59926,44.76592],[-85.53293,44.87319],[-85.53065,44.88976],[-85.55952,44.88811],[-85.56451,44.89525],[-85.53355,44.92576],[-85.52003,44.974],[-85.4752,44.99105],[-85.46494,44.96106],[-85.48574,44.95363],[-85.50218,44.8558],[-85.55589,44.81826],[-85.57657,44.76021],[-85.52722,44.74824],[-85.50477,44.76808],[-85.49959,44.80384],[-85.46292,44.82507],[-85.3958,44.93102],[-85.37829,44.99859],[-85.38066,45.04632],[-85.36641,45.06902],[-85.38859,45.23524],[-85.37159,45.27083],[-85.30765,45.31314],[-85.263,45.31951],[-85.1967,45.36064],[-85.14365,45.37037],[-85.03281,45.36125],[-84.91585,45.39312],[-84.92201,45.42191],[-84.99004,45.42762],[-84.97861,45.41866],[-85.04094,45.4367],[-85.08839,45.47693],[-85.11548,45.53941],[-85.11864,45.57518],[-85.07491,45.62924],[-85.00703,45.65636],[-84.94376,45.71029],[-84.95084,45.73689],[-85.01451,45.76033],[-85.00741,45.76317],[-84.80664,45.74617],[-84.78137,45.76108],[-84.79315,45.78046],[-84.77277,45.7893],[-84.73407,45.7882],[-84.716,45.76617],[-84.57363,45.71038],[-84.46168,45.6524],[-84.44235,45.65477],[-84.42749,45.6692],[-84.3764,45.65557],[-84.32954,45.66438],[-84.21527,45.63477],[-84.12887,45.56228],[-84.12231,45.52379],[-84.09591,45.4973],[-84.05614,45.48935],[-84.02881,45.49723],[-83.93926,45.49319],[-83.90947,45.48578],[-83.80662,45.41916],[-83.72182,45.4133],[-83.59927,45.35256],[-83.57036,45.3472],[-83.53831,45.35817],[-83.51472,45.34646],[-83.48883,45.35587],[-83.42239,45.29077],[-83.38174,45.26898],[-83.41241,45.23891],[-83.36368,45.16647],[-83.31612,45.14196],[-83.30788,45.09909],[-83.2659,45.02684],[-83.34026,45.04154],[-83.36747,45.06227],[-83.39925,45.07036],[-83.4338,45.05762],[-83.45417,45.03188],[-83.43125,45.008],[-83.45001,44.99022],[-83.43303,44.93289],[-83.39396,44.90306],[-83.3205,44.88057],[-83.32124,44.85296],[-83.30065,44.82983],[-83.2973,44.74613],[-83.27339,44.7139],[-83.31452,44.60872],[-83.30847,44.5399],[-83.33253,44.34046],[-83.34374,44.32976],[-83.37361,44.32778],[-83.42969,44.26971],[-83.50039,44.27661],[-83.53771,44.24817],[-83.57307,44.1013],[-83.59136,44.07924],[-83.58409,44.05675],[-83.65012,44.0524],[-83.67965,44.03637],[-83.68789,44.02071],[-83.68011,43.9942],[-83.76377,43.98516],[-83.82908,43.98909],[-83.87769,43.95923],[-83.89091,43.92331],[-83.90739,43.91806],[-83.91681,43.89905],[-83.92937,43.77709],[-83.95602,43.75929],[-83.90948,43.67262],[-83.85208,43.64492],[-83.77069,43.62869],[-83.76989,43.63492],[-83.72579,43.61869],[-83.70345,43.59765],[-83.66605,43.59129],[-83.55371,43.68543],[-83.54019,43.70875],[-83.51585,43.71816],[-83.50666,43.71091],[-83.48007,43.71464],[-83.47005,43.72342],[-83.44017,43.76169],[-83.43831,43.78685],[-83.41145,43.80503],[-83.40765,43.832],[-83.33227,43.88052],[-83.34736,43.91216],[-83.28231,43.93803],[-83.26153,43.97353],[-83.18062,43.98211],[-83.10782,44.00324],[-83.06603,44.00337],[-83.0246,44.04517],[-82.99073,44.04885],[-82.96744,44.06614],[-82.91598,44.0705],[-82.88983,44.05095],[-82.79321,44.02325],[-82.7832,44.00937],[-82.74626,43.99604],[-82.67864,43.88373],[-82.65545,43.86788],[-82.63364,43.83122],[-82.61222,43.73977],[-82.59791,43.59002],[-82.53952,43.43754],[-82.52309,43.22536],[-82.48604,43.10249],[-82.41594,43.00556],[-82.46991,42.88746],[-82.4837,42.73321],[-82.50993,42.63729],[-82.52334,42.60749],[-82.584,42.55404],[-82.60707,42.54884],[-82.62491,42.55723],[-82.68642,42.5186],[-82.66433,42.54624],[-82.68076,42.55791],[-82.68806,42.58842],[-82.70115,42.58599],[-82.71304,42.5979],[-82.68348,42.60943],[-82.68984,42.62715],[-82.6691,42.63723],[-82.64571,42.63114],[-82.63092,42.64211],[-82.62304,42.65595],[-82.63085,42.67334],[-82.70096,42.68955],[-82.81352,42.64083],[-82.81902,42.61633],[-82.78902,42.60343],[-82.78241,42.56483],[-82.83422,42.56785],[-82.87442,42.52354],[-82.88392,42.47184],[-82.87035,42.45089],[-82.89401,42.38944],[-82.91911,42.37444],[-82.92397,42.35207],[-83.07972,42.30864],[-83.12802,42.23884],[-83.13351,42.08814],[-83.15762,42.08554],[-83.1886,42.06643],[-83.18725,42.00757],[-83.20865,42.00504],[-83.2169,41.98856],[-83.2492,41.9724],[-83.26952,41.93904],[-83.29598,41.94474],[-83.31586,41.93589],[-83.34156,41.87996],[-83.36619,41.8655],[-83.3722,41.87412]]],[[[-88.93256,46.0736],[-89.12514,46.14453],[-90.12049,46.33685],[-90.11969,46.35975],[-90.16692,46.43985],[-90.17786,46.44055],[-90.20457,46.479],[-90.28454,46.51871],[-90.31389,46.5162],[-90.35768,46.54027],[-90.40043,46.54438],[-90.41814,46.56609],[-90.32763,46.60774],[-90.30661,46.60274],[-90.02839,46.67439],[-89.91847,46.74032],[-89.84865,46.79571],[-89.79066,46.81847],[-89.67337,46.83323],[-89.61933,46.81889],[-89.51394,46.84184],[-89.41515,46.84398],[-89.22791,46.91295],[-89.1287,46.9926],[-89.08674,46.9853],[-89.02893,47.00114],[-88.99842,46.99531],[-88.9728,47.0021],[-88.92449,47.04216],[-88.88914,47.10057],[-88.84818,47.11507],[-88.81483,47.1414],[-88.76435,47.15576],[-88.67239,47.21914],[-88.574,47.24599],[-88.50078,47.2935],[-88.41867,47.37119],[-88.2852,47.42239],[-88.23916,47.42997],[-88.21782,47.44874],[-88.18182,47.45766],[-88.04029,47.476],[-87.92927,47.47874],[-87.80118,47.4733],[-87.75674,47.46072],[-87.71594,47.43982],[-87.71242,47.4014],[-87.75138,47.40507],[-87.81537,47.38479],[-87.8567,47.39539],[-87.95706,47.38726],[-87.9656,47.36865],[-87.93879,47.34678],[-87.94336,47.3359],[-88.06009,47.2958],[-88.16306,47.21628],[-88.22899,47.19904],[-88.24201,47.17477],[-88.23216,47.14597],[-88.24763,47.13598],[-88.26297,47.14517],[-88.2817,47.13821],[-88.29762,47.09851],[-88.34995,47.07638],[-88.37397,47.01226],[-88.41115,46.97798],[-88.4439,46.97225],[-88.48375,46.83173],[-88.46235,46.78671],[-88.43843,46.78671],[-88.38141,46.83847],[-88.37558,46.85731],[-88.35194,46.85703],[-88.24444,46.92961],[-88.14369,46.96666],[-88.13288,46.9622],[-88.18752,46.919],[-88.1752,46.90458],[-88.08187,46.92046],[-88.0043,46.90698],[-87.90034,46.90969],[-87.84619,46.8839],[-87.81679,46.89115],[-87.78246,46.87986],[-87.76599,46.86132],[-87.74101,46.86525],[-87.72736,46.82766],[-87.69459,46.82718],[-87.68067,46.8425],[-87.67202,46.82041],[-87.6333,46.81211],[-87.59531,46.78295],[-87.58275,46.73053],[-87.52331,46.68849],[-87.50302,46.6475],[-87.46797,46.63562],[-87.45137,46.60592],[-87.38396,46.59307],[-87.39283,46.57085],[-87.37561,46.54714],[-87.39399,46.53318],[-87.35107,46.50075],[-87.25873,46.48826],[-87.12744,46.49401],[-87.00872,46.53272],[-86.96453,46.51655],[-86.94708,46.47206],[-86.90374,46.46614],[-86.88392,46.44151],[-86.85011,46.43411],[-86.81603,46.43789],[-86.80356,46.46667],[-86.76852,46.47907],[-86.73593,46.47523],[-86.69814,46.43862],[-86.68382,46.49808],[-86.70193,46.51157],[-86.70933,46.54391],[-86.67818,46.56104],[-86.65287,46.56056],[-86.62738,46.53371],[-86.64639,46.48578],[-86.62744,46.47754],[-86.60939,46.49298],[-86.60904,46.47024],[-86.58617,46.46332],[-86.46931,46.55142],[-86.43717,46.54896],[-86.34989,46.57803],[-86.16168,46.66947],[-86.13829,46.67294],[-86.09984,46.65461],[-85.87791,46.69091],[-85.75061,46.67737],[-85.50951,46.67579],[-85.25686,46.75338],[-85.17304,46.76363],[-85.06356,46.75786],[-84.95401,46.77136],[-85.00762,46.72834],[-85.02751,46.69745],[-85.03706,46.60099],[-85.02549,46.5464],[-85.05613,46.52652],[-85.04985,46.50396],[-85.0256,46.48303],[-84.96946,46.47629],[-84.93715,46.48925],[-84.92193,46.46996],[-84.86145,46.46993],[-84.82949,46.44407],[-84.76915,46.45352],[-84.67842,46.48769],[-84.63102,46.48487],[-84.57352,46.42789],[-84.5515,46.41852],[-84.50372,46.43919],[-84.47185,46.43429],[-84.45553,46.4539],[-84.46332,46.46744],[-84.42027,46.50108],[-84.37504,46.50867],[-84.26427,46.49506],[-84.22613,46.53392],[-84.19373,46.53992],[-84.12892,46.53012],[-84.11123,46.50412],[-84.14617,46.41852],[-84.10809,46.24124],[-84.14922,46.22381],[-84.15949,46.23323],[-84.21949,46.23199],[-84.24916,46.20646],[-84.25142,46.17589],[-84.221,46.16306],[-84.19667,46.16615],[-84.1773,46.18399],[-84.12502,46.18021],[-84.09582,46.14773],[-84.06038,46.14614],[-84.02654,46.13165],[-84.06133,46.11348],[-84.07174,46.09244],[-83.98953,46.03282],[-83.94393,46.03146],[-83.90054,45.99892],[-83.86823,45.99507],[-83.8454,46.02568],[-83.79406,45.9958],[-83.76528,46.01836],[-83.77379,46.05147],[-83.79655,46.05669],[-83.81252,46.07347],[-83.82404,46.10364],[-83.81583,46.10853],[-83.77182,46.091],[-83.63498,46.10395],[-83.58132,46.08961],[-83.53291,46.01133],[-83.48064,45.99616],[-83.47322,45.98442],[-83.51724,45.92361],[-83.56184,45.91256],[-83.65766,45.94546],[-83.6877,45.93539],[-83.76885,45.93207],[-83.80815,45.94569],[-83.8355,45.94184],[-83.84087,45.95273],[-83.88106,45.96818],[-83.92126,45.95808],[-83.98514,45.96713],[-84.01757,45.95905],[-84.09039,45.96726],[-84.11117,45.97868],[-84.17225,45.96607],[-84.23817,45.9676],[-84.25495,45.95607],[-84.33002,45.95625],[-84.37643,45.93196],[-84.42869,45.95837],[-84.44314,45.97786],[-84.46313,45.96892],[-84.48401,45.98825],[-84.5072,45.99117],[-84.51407,45.97129],[-84.53239,45.96945],[-84.5444,46.02286],[-84.56389,46.03246],[-84.60906,46.02642],[-84.65657,46.05265],[-84.69273,46.02702],[-84.68525,45.97345],[-84.72304,45.96728],[-84.73885,45.94579],[-84.71361,45.92037],[-84.734,45.90703],[-84.70118,45.85309],[-84.74698,45.8356],[-84.8314,45.87204],[-84.84224,45.89819],[-84.91748,45.93067],[-84.93713,45.95595],[-85.01399,46.01077],[-85.14083,46.0496],[-85.19752,46.04488],[-85.22251,46.06069],[-85.26638,46.06578],[-85.33591,46.0926],[-85.38139,46.08204],[-85.41206,46.10144],[-85.44193,46.09579],[-85.44699,46.08516],[-85.5001,46.09694],[-85.54086,46.07958],[-85.60379,46.03036],[-85.66397,45.96701],[-85.6972,45.96016],[-85.81044,45.98009],[-85.8424,45.96525],[-85.8932,45.96725],[-85.92274,45.94829],[-85.92602,45.9321],[-85.91377,45.91944],[-85.99887,45.95097],[-86.07207,45.96531],[-86.12357,45.96475],[-86.15941,45.95376],[-86.20825,45.96298],[-86.23361,45.9458],[-86.27801,45.94206],[-86.32423,45.90608],[-86.35166,45.79813],[-86.36992,45.78925],[-86.41597,45.79379],[-86.43966,45.76067],[-86.47905,45.75742],[-86.48603,45.74661],[-86.51457,45.75234],[-86.53726,45.70836],[-86.58094,45.71192],[-86.58753,45.66646],[-86.61131,45.66973],[-86.62794,45.65929],[-86.61689,45.6068],[-86.68721,45.63425],[-86.70804,45.6492],[-86.71819,45.67732],[-86.70518,45.6909],[-86.6891,45.68786],[-86.66568,45.70222],[-86.67148,45.72053],[-86.63314,45.74765],[-86.63102,45.78202],[-86.58339,45.77824],[-86.57686,45.80147],[-86.55721,45.80817],[-86.55519,45.8317],[-86.52822,45.85697],[-86.54146,45.89023],[-86.5833,45.89878],[-86.62574,45.8683],[-86.646,45.83389],[-86.72111,45.84543],[-86.74964,45.8678],[-86.78208,45.86019],[-86.77328,45.81139],[-86.82152,45.77036],[-86.83875,45.72231],[-86.94416,45.69583],[-86.96428,45.67276],[-86.98459,45.70581],[-86.97522,45.75313],[-86.98844,45.81062],[-87.00508,45.83172],[-87.03144,45.83724],[-87.05744,45.81248],[-87.0643,45.75883],[-87.05291,45.74798],[-87.07044,45.71878],[-87.05953,45.7085],[-87.09546,45.70104],[-87.17224,45.66179],[-87.19685,45.63627],[-87.33315,45.44721],[-87.32775,45.42531],[-87.3925,45.36903],[-87.43891,45.2934],[-87.6008,45.14684],[-87.61202,45.12338],[-87.60012,45.10301],[-87.58197,45.09721],[-87.59021,45.09526],[-87.65995,45.10751],[-87.73139,45.17099],[-87.74173,45.1982],[-87.64813,45.3394],[-87.65735,45.36875],[-87.69396,45.38989],[-87.75145,45.35175],[-87.83261,45.35225],[-87.85013,45.34043],[-87.88805,45.3547],[-87.86043,45.4235],[-87.81298,45.46416],[-87.79277,45.49997],[-87.79202,45.61676],[-87.8241,45.64714],[-87.82367,45.65982],[-87.78081,45.68035],[-87.80714,45.70801],[-87.86811,45.74948],[-87.99145,45.79539],[-88.05063,45.78097],[-88.09405,45.78566],[-88.13611,45.81903],[-88.07394,45.87559],[-88.1026,45.90989],[-88.17553,45.9449],[-88.23967,45.94898],[-88.25013,45.96315],[-88.29556,45.95146],[-88.37645,45.98946],[-88.42344,45.98193],[-88.48961,45.99138],[-88.50719,46.0183],[-88.53241,46.02121],[-88.61641,45.9877],[-88.66606,45.98819],[-88.67913,46.01354],[-88.73999,46.02731],[-88.76971,46.01897],[-88.81563,46.02232],[-88.93256,46.0736]]]]}},{"type":"Feature","properties":{"code":"29","nom":"Missouri"},"geometry":{"type":"Polygon","coordinates":[[[-89.54501,36.33681],[-89.60567,36.34223],[-89.62026,36.32301],[-89.57849,36.28832],[-89.53949,36.27737],[-89.54162,36.24789],[-89.60237,36.23811],[-89.69982,36.24838],[-89.607,36.17118],[-89.59161,36.1441],[-89.594,36.12719],[-89.68444,36.05172],[-89.70693,36.00098],[-90.36872,35.99581],[-90.31917,36.08998],[-90.22043,36.18476],[-90.11492,36.26559],[-90.08373,36.27233],[-90.06398,36.30304],[-90.06451,36.38208],[-90.13399,36.43791],[-90.15248,36.49795],[-94.61792,36.49941],[-94.60735,39.11344],[-94.59193,39.155],[-94.75234,39.1732],[-94.8324,39.22722],[-94.90101,39.30168],[-94.90995,39.36746],[-95.1093,39.54228],[-95.10745,39.57384],[-95.01531,39.67426],[-94.93792,39.72547],[-94.91693,39.72819],[-94.89527,39.76321],[-94.9279,39.88611],[-94.95416,39.90114],[-95.00844,39.9006],[-95.03505,39.86681],[-95.085,39.86188],[-95.18122,39.9],[-95.30155,39.9836],[-95.31221,40.00939],[-95.52192,40.24947],[-95.55247,40.2619],[-95.55329,40.29116],[-95.62268,40.34232],[-95.69267,40.48302],[-95.65928,40.51981],[-95.69667,40.54514],[-95.70997,40.5238],[-95.76692,40.53156],[-95.7747,40.57357],[-95.76565,40.58521],[-94.29481,40.57134],[-92.68669,40.58981],[-91.72911,40.61364],[-91.62007,40.54082],[-91.61949,40.50713],[-91.52461,40.41076],[-91.48451,40.3839],[-91.41942,40.37826],[-91.46214,40.34241],[-91.48987,40.28605],[-91.51297,40.18106],[-91.51032,40.12799],[-91.49487,40.03742],[-91.46029,39.98033],[-91.44639,39.87039],[-91.43292,39.84055],[-91.3654,39.77727],[-91.37001,39.73252],[-91.22932,39.62085],[-91.17801,39.5982],[-91.15861,39.55305],[-91.04235,39.45206],[-90.84217,39.34193],[-90.72996,39.25589],[-90.68109,39.10059],[-90.71363,39.05398],[-90.65725,38.92027],[-90.62512,38.88865],[-90.56656,38.86885],[-90.50745,38.90277],[-90.46778,38.96181],[-90.40637,38.96255],[-90.25025,38.91934],[-90.10941,38.84355],[-90.12311,38.79805],[-90.20991,38.72605],[-90.20921,38.70275],[-90.18111,38.65955],[-90.18451,38.61155],[-90.26031,38.52835],[-90.28521,38.44345],[-90.34612,38.38185],[-90.37082,38.33355],[-90.37393,38.28185],[-90.3539,38.21386],[-90.24312,38.11267],[-90.07228,38.017],[-89.9971,37.96323],[-89.95059,37.88153],[-89.90183,37.86982],[-89.84479,37.90557],[-89.67126,37.80114],[-89.51544,37.67137],[-89.50656,37.62505],[-89.52127,37.57897],[-89.51705,37.53728],[-89.47553,37.47139],[-89.43977,37.4372],[-89.42105,37.38767],[-89.43284,37.34706],[-89.48901,37.33337],[-89.51184,37.31083],[-89.51703,37.28192],[-89.41447,37.12505],[-89.38394,37.04644],[-89.26115,36.98244],[-89.22625,36.98529],[-89.17001,36.9703],[-89.13268,36.9822],[-89.10077,36.94397],[-89.14767,36.84715],[-89.17718,36.83578],[-89.17923,36.81291],[-89.12353,36.78531],[-89.1304,36.7517],[-89.16911,36.75947],[-89.19781,36.73941],[-89.19948,36.71605],[-89.17188,36.67253],[-89.21356,36.58012],[-89.25999,36.56515],[-89.32673,36.63219],[-89.36555,36.62506],[-89.41729,36.49903],[-89.44847,36.46442],[-89.47172,36.457],[-89.4932,36.47012],[-89.46589,36.52995],[-89.47909,36.56821],[-89.52758,36.58115],[-89.56682,36.56422],[-89.56034,36.52544],[-89.5195,36.47542],[-89.50956,36.37506],[-89.519,36.3486],[-89.54501,36.33681]]]}},{"type":"Feature","properties":{"code":"31","nom":"Nebraska"},"geometry":{"type":"Polygon","coordinates":[[[-104.05283,41.69795],[-104.05313,43.00059],[-98.49855,42.99856],[-98.46736,42.94756],[-98.44705,42.93512],[-98.16584,42.83701],[-98.03503,42.7642],[-97.93672,42.77575],[-97.88856,42.81725],[-97.87534,42.85872],[-97.84527,42.86773],[-97.77446,42.84977],[-97.68651,42.84244],[-97.42319,42.86117],[-97.25709,42.85385],[-97.19013,42.80508],[-97.13746,42.78231],[-97.05218,42.77019],[-96.96102,42.73808],[-96.9068,42.7338],[-96.81315,42.7064],[-96.72403,42.66597],[-96.70725,42.63126],[-96.70805,42.60159],[-96.61149,42.50609],[-96.48749,42.47985],[-96.40941,42.48759],[-96.38541,42.47309],[-96.38071,42.44639],[-96.41361,42.40789],[-96.41779,42.35145],[-96.37531,42.31834],[-96.32891,42.25473],[-96.32372,42.22989],[-96.35987,42.21055],[-96.34969,42.17204],[-96.30742,42.13071],[-96.27288,42.04724],[-96.1295,41.97167],[-96.13674,41.92083],[-96.16176,41.90182],[-96.11091,41.83082],[-96.06577,41.79817],[-96.07709,41.7154],[-96.12173,41.68274],[-96.09542,41.65274],[-96.1181,41.6135],[-96.09409,41.53927],[-96.04671,41.50708],[-96.03059,41.52729],[-95.99478,41.52624],[-95.93071,41.43389],[-95.95679,41.3492],[-95.93929,41.3289],[-95.91379,41.3202],[-95.90249,41.2734],[-95.92599,41.1957],[-95.85279,41.1654],[-95.86729,41.0016],[-95.82907,40.97569],[-95.82119,40.87668],[-95.86169,40.76287],[-95.88669,40.7421],[-95.88318,40.71758],[-95.8428,40.6775],[-95.78657,40.65725],[-95.74863,40.60336],[-95.77355,40.5782],[-95.76692,40.53156],[-95.70997,40.5238],[-95.69667,40.54514],[-95.65928,40.51981],[-95.69267,40.48302],[-95.62268,40.34232],[-95.55329,40.29116],[-95.55247,40.2619],[-95.52192,40.24947],[-95.30829,40],[-102.05174,40.00308],[-102.05161,41.00238],[-104.05325,41.00141],[-104.05283,41.69795]]]}},{"type":"Feature","properties":{"code":"32","nom":"Nevada"},"geometry":{"type":"Polygon","coordinates":[[[-114.04655,40.11693],[-114.04684,36.19407],[-114.06302,36.18694],[-114.12019,36.10223],[-114.1382,36.04128],[-114.15413,36.02386],[-114.23329,36.01429],[-114.25265,36.02019],[-114.29266,36.05112],[-114.32878,36.1055],[-114.38145,36.14167],[-114.57203,36.15161],[-114.63172,36.14231],[-114.73616,36.10437],[-114.75562,36.08717],[-114.74358,35.98372],[-114.70613,35.87871],[-114.70031,35.70039],[-114.68941,35.65141],[-114.65341,35.61079],[-114.67764,35.48974],[-114.66213,35.44424],[-114.62714,35.4095],[-114.60431,35.35358],[-114.56924,35.18348],[-114.57852,35.12875],[-114.62196,35.09468],[-114.63301,35.00209],[-116.0936,36.15581],[-117.50091,37.22028],[-118.7466,38.12493],[-120.00101,38.99957],[-119.99917,41.99454],[-117.02622,42.00025],[-114.04172,41.99372],[-114.04655,40.11693]]]}},{"type":"Feature","properties":{"code":"33","nom":"New Hampshire"},"geometry":{"type":"Polygon","coordinates":[[[-70.81955,43.12323],[-70.7564,43.07999],[-70.70394,43.05962],[-70.7956,42.93629],[-70.8173,42.87229],[-70.84862,42.86094],[-70.88614,42.88261],[-70.9308,42.88459],[-71.1497,42.81549],[-71.1861,42.79069],[-71.1818,42.73759],[-71.2455,42.74259],[-71.29421,42.69699],[-72.45852,42.72685],[-72.47845,42.7623],[-72.54278,42.80848],[-72.55621,42.86695],[-72.44376,43.00624],[-72.43266,43.11408],[-72.4521,43.16141],[-72.39715,43.31652],[-72.40525,43.38999],[-72.38785,43.47157],[-72.39583,43.52056],[-72.32962,43.6002],[-72.3344,43.61925],[-72.30287,43.70272],[-72.27118,43.73414],[-72.23271,43.74829],[-72.20479,43.77193],[-72.18374,43.80664],[-72.16722,43.88611],[-72.121,43.91896],[-72.10442,43.95054],[-72.11281,43.98802],[-72.04008,44.15575],[-72.06428,44.18789],[-72.06543,44.27723],[-72.01217,44.32141],[-71.81606,44.36682],[-71.79392,44.39927],[-71.70893,44.41161],[-71.58026,44.50651],[-71.53625,44.58794],[-71.62736,44.74754],[-71.49584,44.90498],[-71.53698,44.99418],[-71.46456,45.01364],[-71.50249,45.01337],[-71.4961,45.06923],[-71.42883,45.12388],[-71.39781,45.20355],[-71.44288,45.2348],[-71.40118,45.24254],[-71.2844,45.30243],[-71.233,45.25662],[-71.13943,45.24296],[-71.10515,45.29463],[-71.08433,45.30529],[-71.03752,44.75561],[-70.97272,43.57026],[-70.95332,43.55272],[-70.98773,43.39151],[-70.96723,43.34378],[-70.93078,43.32957],[-70.86323,43.2651],[-70.81786,43.23791],[-70.8338,43.14689],[-70.81955,43.12323]]]}},{"type":"Feature","properties":{"code":"36","nom":"New York"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-74.14443,40.53516],[-74.21979,40.5026],[-74.24669,40.4961],[-74.25459,40.5023],[-74.24289,40.5209],[-74.24781,40.5434],[-74.21089,40.5609],[-74.19541,40.60181],[-74.20058,40.63145],[-74.1894,40.64212],[-74.07588,40.6481],[-74.05312,40.60368],[-74.05918,40.5935],[-74.11147,40.54691],[-74.13724,40.53008],[-74.14443,40.53516]]],[[[-72.13223,41.10439],[-72.1267,41.11514],[-72.08421,41.10152],[-72.08697,41.05829],[-72.0972,41.05488],[-72.1064,41.08888],[-72.14192,41.09437],[-72.13223,41.10439]]],[[[-71.94356,41.28668],[-71.9268,41.29012],[-72.00246,41.25287],[-72.03685,41.24979],[-72.01893,41.27411],[-71.94356,41.28668]]],[[[-73.40369,44.1531],[-73.43688,44.04258],[-73.406,44.01623],[-73.40774,43.92989],[-73.38839,43.8324],[-73.35043,43.77144],[-73.42161,43.64658],[-73.43123,43.58828],[-73.40029,43.56889],[-73.36654,43.62346],[-73.30623,43.62802],[-73.24204,43.53493],[-73.27867,42.83341],[-73.29094,42.80192],[-73.27642,42.74602],[-73.26496,42.74594],[-73.50814,42.08626],[-73.49688,42.04968],[-73.48731,42.04964],[-73.55096,41.29542],[-73.48271,41.21276],[-73.72777,41.1007],[-73.65467,41.0117],[-73.65597,40.9796],[-73.68647,40.9452],[-73.75678,40.9126],[-73.7848,40.87853],[-73.78121,40.83889],[-73.79378,40.85558],[-73.81281,40.84674],[-73.81521,40.83107],[-73.77603,40.79527],[-73.72827,40.8529],[-73.72957,40.8665],[-73.71367,40.8701],[-73.67557,40.857],[-73.65587,40.8639],[-73.63377,40.8982],[-73.56997,40.9154],[-73.515,40.91282],[-73.49994,40.91817],[-73.48537,40.9464],[-73.40607,40.92023],[-73.39286,40.9553],[-73.35276,40.9267],[-73.29506,40.9245],[-73.22929,40.90512],[-73.14899,40.9289],[-73.14078,40.96618],[-73.11037,40.97194],[-73.0437,40.96218],[-72.7741,40.96531],[-72.71443,40.9856],[-72.58533,40.99759],[-72.52155,41.03765],[-72.47731,41.05221],[-72.44524,41.08612],[-72.397,41.09631],[-72.35609,41.13363],[-72.27879,41.15872],[-72.23773,41.15643],[-72.26512,41.12848],[-72.30037,41.11227],[-72.30638,41.13784],[-72.32663,41.13216],[-72.33518,41.10692],[-72.31724,41.08866],[-72.28037,41.0804],[-72.28309,41.06787],[-72.26051,41.04207],[-72.22936,41.04436],[-72.19056,41.03258],[-72.15386,41.05186],[-72.10216,40.99151],[-72.08304,40.99645],[-72.07618,41.00909],[-72.05159,41.00644],[-72.04747,41.02257],[-71.96704,41.04777],[-71.95959,41.07124],[-71.91939,41.08052],[-71.85749,41.07356],[-71.87391,41.05228],[-71.90374,41.04017],[-72.39585,40.86666],[-72.86316,40.73296],[-73.05496,40.66637],[-73.23914,40.6251],[-73.3064,40.62076],[-73.31926,40.6358],[-73.56237,40.5837],[-73.77493,40.59076],[-73.93451,40.54518],[-73.93273,40.56027],[-73.95005,40.57336],[-74.00903,40.57285],[-74.00328,40.59575],[-74.03286,40.60442],[-74.04241,40.62485],[-74.01827,40.65902],[-74.02454,40.70944],[-74.01378,40.7566],[-73.93341,40.88208],[-73.89398,40.9972],[-74.23447,41.14288],[-74.69491,41.35742],[-74.69113,41.36732],[-74.75256,41.42652],[-74.87672,41.44034],[-74.91252,41.47561],[-74.98423,41.5063],[-75.04049,41.56969],[-75.05308,41.61855],[-75.05343,41.75254],[-75.1144,41.84358],[-75.26301,41.88511],[-75.27909,41.93892],[-75.35958,41.99945],[-79.76137,41.99907],[-79.76195,42.26986],[-79.64536,42.31563],[-79.45353,42.41116],[-79.35199,42.48892],[-79.33148,42.48908],[-79.24289,42.53176],[-79.14872,42.55367],[-79.11136,42.61336],[-79.06376,42.64476],[-79.04886,42.68916],[-78.91816,42.73726],[-78.85345,42.78396],[-78.86559,42.85236],[-78.89166,42.88484],[-78.91246,42.88656],[-78.90916,42.93326],[-78.93236,42.95586],[-79.01156,42.98526],[-79.02865,43.06947],[-79.0584,43.07523],[-79.06627,43.09097],[-79.04237,43.14366],[-79.07047,43.26245],[-78.63435,43.35762],[-78.48886,43.37476],[-78.37022,43.37651],[-77.97644,43.36916],[-77.87534,43.34966],[-77.76023,43.34116],[-77.71413,43.32356],[-77.65376,43.27948],[-77.55102,43.23576],[-77.39101,43.27636],[-77.34109,43.28066],[-77.11187,43.28795],[-77.03387,43.27122],[-76.9584,43.27],[-76.90429,43.29182],[-76.79471,43.30963],[-76.73104,43.34342],[-76.69836,43.34444],[-76.63077,43.41336],[-76.522,43.46862],[-76.48696,43.47535],[-76.41758,43.52128],[-76.36885,43.52582],[-76.34549,43.51344],[-76.2971,43.51287],[-76.23583,43.52926],[-76.20985,43.56014],[-76.19914,43.60045],[-76.20544,43.71875],[-76.22927,43.80414],[-76.28331,43.84392],[-76.28272,43.8586],[-76.24338,43.87797],[-76.20226,43.8649],[-76.13327,43.89297],[-76.12502,43.91277],[-76.13909,43.96211],[-76.1698,43.9622],[-76.22805,43.98274],[-76.26429,43.97801],[-76.26967,44.00115],[-76.29896,44.01772],[-76.30053,44.05719],[-76.36031,44.07091],[-76.36383,44.1117],[-76.31265,44.19904],[-76.20678,44.21454],[-76.16427,44.2396],[-76.11814,44.29485],[-76.001,44.34753],[-75.97019,44.34284],[-75.91299,44.36808],[-75.82083,44.43224],[-75.80778,44.47164],[-75.7655,44.51629],[-75.4912,44.71295],[-75.30197,44.82664],[-75.30763,44.83681],[-75.06483,44.92945],[-75.00516,44.9584],[-74.99276,44.97745],[-74.82658,45.01585],[-74.70202,45.00332],[-74.14681,44.9915],[-73.34312,45.01084],[-73.36965,44.82914],[-73.33996,44.77889],[-73.39023,44.61835],[-73.37439,44.57545],[-73.33863,44.54684],[-73.30671,44.50033],[-73.29361,44.4389],[-73.31502,44.38851],[-73.32468,44.24361],[-73.39058,44.19089],[-73.40369,44.1531]]]]}},{"type":"Feature","properties":{"code":"39","nom":"Ohio"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-82.70021,41.61219],[-82.67777,41.61799],[-82.68874,41.5859],[-82.73577,41.60098],[-82.7188,41.61963],[-82.70021,41.61219]]],[[[-82.82473,41.65943],[-82.79307,41.66469],[-82.8421,41.62832],[-82.8436,41.64701],[-82.82473,41.65943]]],[[[-82.80334,41.69384],[-82.78272,41.694],[-82.81378,41.67059],[-82.82644,41.68477],[-82.80334,41.69384]]],[[[-82.81349,41.72347],[-82.80887,41.70833],[-82.83512,41.70897],[-82.81349,41.72347]]],[[[-81.74969,39.18074],[-81.74725,39.09538],[-81.81235,39.08208],[-81.81415,39.07348],[-81.80335,39.04768],[-81.76425,39.01528],[-81.76,38.92583],[-81.87486,38.88117],[-81.90865,38.87846],[-81.92835,38.89537],[-81.89847,38.9296],[-81.93562,38.9895],[-82.00226,39.02788],[-82.03596,39.02548],[-82.05156,38.99438],[-82.09316,38.97098],[-82.13928,38.86641],[-82.22157,38.78719],[-82.18827,38.73408],[-82.17727,38.60378],[-82.19382,38.5931],[-82.26207,38.59818],[-82.29127,38.57898],[-82.31394,38.46808],[-82.33034,38.4445],[-82.56066,38.40434],[-82.59367,38.42181],[-82.69662,38.54211],[-82.73096,38.55926],[-82.78978,38.55995],[-82.83954,38.58616],[-82.86959,38.67818],[-82.87129,38.73938],[-82.88919,38.75608],[-82.97939,38.72598],[-83.0307,38.72572],[-83.15693,38.62055],[-83.2821,38.60299],[-83.36908,38.65933],[-83.52095,38.70305],[-83.62692,38.67939],[-83.64974,38.63275],[-83.67948,38.63004],[-83.76935,38.65522],[-83.77782,38.67445],[-83.87044,38.76161],[-83.96212,38.78738],[-84.07149,38.77047],[-84.2129,38.80571],[-84.23131,38.83055],[-84.23445,38.89323],[-84.3047,39.00646],[-84.43284,39.09426],[-84.49374,39.10246],[-84.62011,39.07346],[-84.68485,39.10046],[-84.71855,39.13706],[-84.74415,39.14746],[-84.78768,39.1153],[-84.82016,39.10548],[-84.80248,40.52805],[-84.80608,41.69609],[-83.45383,41.73265],[-83.44603,41.70685],[-83.40953,41.69125],[-83.35707,41.68776],[-83.32682,41.70156],[-83.23166,41.64422],[-83.08604,41.60668],[-83.02807,41.55566],[-82.93437,41.51435],[-82.87523,41.52968],[-82.85677,41.54826],[-82.85953,41.57637],[-82.8341,41.58759],[-82.7855,41.54068],[-82.71788,41.54193],[-82.7139,41.5017],[-82.68792,41.49232],[-82.61695,41.42842],[-82.51383,41.38426],[-82.48121,41.38134],[-82.36178,41.42664],[-82.25468,41.43444],[-82.18477,41.47404],[-82.01197,41.51564],[-81.93786,41.49144],[-81.87736,41.48345],[-81.79416,41.49665],[-81.73875,41.48855],[-81.59975,41.56065],[-81.52974,41.61455],[-81.48864,41.63135],[-81.44264,41.67325],[-81.28692,41.76024],[-81.24867,41.76129],[-81.01049,41.85396],[-80.90034,41.86891],[-80.80079,41.90964],[-80.72082,41.91974],[-80.51942,41.97752],[-80.51899,40.6388],[-80.56072,40.62368],[-80.62717,40.61994],[-80.66796,40.5825],[-80.59919,40.48257],[-80.6192,40.38177],[-80.5999,40.31767],[-80.70548,40.15305],[-80.7331,40.05877],[-80.74013,39.97079],[-80.80872,39.91257],[-80.83187,39.70566],[-80.88036,39.62071],[-80.94378,39.60693],[-81.02005,39.55541],[-81.21562,39.3886],[-81.27072,39.38591],[-81.34757,39.34577],[-81.37596,39.3417],[-81.39379,39.35171],[-81.41271,39.39462],[-81.45614,39.40927],[-81.54235,39.35287],[-81.60582,39.27585],[-81.69572,39.24286],[-81.74969,39.18074]]]]}},{"type":"Feature","properties":{"code":"41","nom":"Oregon"},"geometry":{"type":"Polygon","coordinates":[[[-121.90827,45.6544],[-121.90185,45.67072],[-121.86717,45.69328],[-121.8113,45.70676],[-121.70736,45.69481],[-121.53311,45.72654],[-121.42359,45.69399],[-121.37257,45.70311],[-121.3122,45.69993],[-121.21578,45.67124],[-121.19523,45.62951],[-121.06437,45.65255],[-120.94398,45.65644],[-120.91588,45.64135],[-120.85567,45.67155],[-120.68937,45.71585],[-120.63497,45.74585],[-120.55947,45.73835],[-120.50586,45.70005],[-120.48236,45.69445],[-120.40396,45.69925],[-120.21075,45.72595],[-120.17045,45.76195],[-120.00115,45.8119],[-119.80266,45.84753],[-119.66988,45.85687],[-119.60055,45.91958],[-119.57158,45.92546],[-119.48783,45.90631],[-119.25715,45.93993],[-119.19553,45.92787],[-119.12612,45.93286],[-119.02706,45.96913],[-118.98713,45.99985],[-116.91599,45.99541],[-116.85725,45.90416],[-116.7891,45.84775],[-116.63338,45.78468],[-116.59421,45.77908],[-116.54809,45.75236],[-116.5357,45.73423],[-116.5354,45.69173],[-116.48912,45.65114],[-116.46363,45.60278],[-116.55347,45.49911],[-116.67379,45.32151],[-116.72961,45.14209],[-116.84537,45.01706],[-116.85828,44.97801],[-116.83199,44.93301],[-116.85243,44.88758],[-116.9315,44.79228],[-117.03827,44.74818],[-117.06227,44.72714],[-117.14924,44.53615],[-117.20845,44.48593],[-117.21489,44.4669],[-117.18977,44.33658],[-117.19778,44.29579],[-117.19011,44.27396],[-117.17034,44.25889],[-116.9759,44.24284],[-116.90275,44.17947],[-116.89408,44.16019],[-116.93172,44.10247],[-116.9353,43.98862],[-116.96153,43.91839],[-117.02663,43.8081],[-117.02622,42.00025],[-121.0352,41.99332],[-122.37819,42.00952],[-124.10022,41.99684],[-124.21161,41.99846],[-124.27046,42.04555],[-124.29965,42.05174],[-124.35623,42.11495],[-124.36101,42.18075],[-124.38363,42.22716],[-124.41098,42.25055],[-124.41056,42.30743],[-124.42929,42.33175],[-124.42486,42.39543],[-124.4351,42.44016],[-124.39066,42.56659],[-124.40118,42.62719],[-124.41677,42.66159],[-124.45074,42.6758],[-124.47386,42.73267],[-124.49168,42.74179],[-124.51467,42.73681],[-124.52444,42.78979],[-124.55244,42.84057],[-124.45692,43.00032],[-124.43445,43.11599],[-124.40173,43.1849],[-124.38246,43.27017],[-124.40281,43.30587],[-124.37304,43.33895],[-124.34159,43.35134],[-124.31501,43.38839],[-124.23353,43.55713],[-124.15027,43.91085],[-124.12241,44.10444],[-124.1152,44.28649],[-124.0844,44.41561],[-124.06757,44.42858],[-124.0793,44.43086],[-124.08443,44.48693],[-124.06725,44.60804],[-124.08448,44.61106],[-124.0652,44.62244],[-124.05828,44.65887],[-124.07039,44.68351],[-124.05908,44.73766],[-124.07547,44.7714],[-124.07407,44.79811],[-124.02514,44.92818],[-124.00439,45.0462],[-124.01799,45.04981],[-124.01585,45.06476],[-123.98953,45.09405],[-123.97543,45.14548],[-123.96417,45.31703],[-123.9729,45.33689],[-124.00776,45.33681],[-123.9734,45.35479],[-123.96573,45.38624],[-123.96056,45.43078],[-123.97654,45.48973],[-123.95757,45.5104],[-123.939,45.66192],[-123.94312,45.72703],[-123.98258,45.76181],[-123.96946,45.78237],[-123.96274,45.86997],[-123.96763,45.90781],[-123.9937,45.94643],[-123.96999,45.96914],[-123.93747,45.97731],[-123.92789,46.00956],[-123.94753,46.11613],[-123.99677,46.20399],[-124.0243,46.22926],[-124.002,46.23732],[-123.9872,46.21152],[-123.95015,46.2041],[-123.9042,46.16929],[-123.8548,46.15734],[-123.84152,46.16982],[-123.86421,46.18953],[-123.82183,46.19029],[-123.75998,46.2073],[-123.71278,46.19875],[-123.66675,46.21823],[-123.63647,46.21436],[-123.62281,46.23664],[-123.60549,46.2393],[-123.58621,46.22865],[-123.54819,46.24824],[-123.54766,46.25911],[-123.48424,46.26953],[-123.42763,46.22935],[-123.43085,46.18183],[-123.37143,46.14637],[-123.28017,46.14484],[-123.16641,46.18897],[-123.1159,46.18527],[-122.90412,46.08373],[-122.88448,46.06028],[-122.814,45.96098],[-122.78503,45.8677],[-122.7956,45.81],[-122.76145,45.75916],[-122.77451,45.68044],[-122.76381,45.65714],[-122.67501,45.61804],[-122.49226,45.58328],[-122.3803,45.57594],[-122.3528,45.56944],[-122.3315,45.54824],[-122.2667,45.54384],[-122.1837,45.5777],[-122.10168,45.58352],[-121.90827,45.6544]]]}},{"type":"Feature","properties":{"code":"44","nom":"Rhode Island"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-71.38359,41.46478],[-71.39957,41.4486],[-71.39593,41.49222],[-71.37891,41.50495],[-71.39214,41.52447],[-71.37019,41.57396],[-71.35987,41.55631],[-71.3604,41.48312],[-71.38359,41.46478]]],[[[-71.32677,41.49129],[-71.32782,41.48298],[-71.34301,41.49562],[-71.32677,41.49129]]],[[[-71.3312,41.58032],[-71.32588,41.62399],[-71.34657,41.63223],[-71.36616,41.66098],[-71.3387,41.65878],[-71.34367,41.6399],[-71.30555,41.62252],[-71.30738,41.59798],[-71.3312,41.58032]]],[[[-71.28157,41.64821],[-71.27432,41.63813],[-71.28379,41.6378],[-71.28157,41.64821]]],[[[-71.58955,41.19656],[-71.57379,41.22844],[-71.56109,41.22421],[-71.55407,41.21296],[-71.56575,41.18437],[-71.54445,41.16491],[-71.54705,41.15368],[-71.5937,41.14634],[-71.61171,41.15324],[-71.60556,41.18214],[-71.58955,41.19656]]],[[[-71.40864,41.65382],[-71.40377,41.58932],[-71.44771,41.5804],[-71.4174,41.53454],[-71.4184,41.47265],[-71.43074,41.47064],[-71.43361,41.44499],[-71.45584,41.43299],[-71.45537,41.40796],[-71.48329,41.37172],[-71.55538,41.37332],[-71.72074,41.33157],[-71.86277,41.30979],[-71.83124,41.34464],[-71.84256,41.40986],[-71.79768,41.41671],[-71.78968,41.72473],[-71.79924,42.00807],[-71.3814,42.0188],[-71.3766,41.894],[-71.3393,41.8936],[-71.3393,41.8065],[-71.3279,41.7805],[-71.26139,41.7523],[-71.2248,41.7105],[-71.24099,41.69774],[-71.24155,41.66721],[-71.25956,41.6426],[-71.28037,41.67258],[-71.3014,41.64998],[-71.30609,41.67258],[-71.29122,41.70267],[-71.31482,41.72381],[-71.34279,41.72851],[-71.36572,41.71162],[-71.37791,41.66665],[-71.39055,41.6841],[-71.44932,41.6874],[-71.44447,41.66441],[-71.42545,41.67079],[-71.40864,41.65382]]],[[[-71.12057,41.49745],[-71.17013,41.46397],[-71.19686,41.46112],[-71.19017,41.48428],[-71.20638,41.49921],[-71.21616,41.62549],[-71.24071,41.61923],[-71.22799,41.5283],[-71.24071,41.47487],[-71.25269,41.4859],[-71.28564,41.48781],[-71.31139,41.4508],[-71.3511,41.4508],[-71.36274,41.46038],[-71.31652,41.47756],[-71.33083,41.51836],[-71.28514,41.57713],[-71.27186,41.62399],[-71.25108,41.63878],[-71.21214,41.64194],[-71.19564,41.67509],[-71.13469,41.6605],[-71.12057,41.49745]]]]}},{"type":"Feature","properties":{"code":"46","nom":"South Dakota"},"geometry":{"type":"Polygon","coordinates":[[[-104.0551,43.85348],[-104.0577,44.99743],[-104.04013,44.99999],[-104.04544,45.94531],[-96.56328,45.93524],[-96.58308,45.82002],[-96.67266,45.73234],[-96.83577,45.64965],[-96.85775,45.60596],[-96.76528,45.52141],[-96.73274,45.45874],[-96.69254,45.41734],[-96.61773,45.40809],[-96.52179,45.37564],[-96.48906,45.35707],[-96.45307,45.29812],[-96.45305,43.50041],[-96.59893,43.50046],[-96.58407,43.46886],[-96.60286,43.45091],[-96.59425,43.43415],[-96.5217,43.3869],[-96.53039,43.30003],[-96.56911,43.29554],[-96.58412,43.2681],[-96.55713,43.22419],[-96.47557,43.22105],[-96.43659,43.12084],[-96.46602,43.06224],[-96.51311,43.02788],[-96.51075,42.9444],[-96.54951,42.83914],[-96.57781,42.8281],[-96.63214,42.77086],[-96.6397,42.73707],[-96.63062,42.70588],[-96.5753,42.68267],[-96.51634,42.63043],[-96.47695,42.55608],[-96.48131,42.51656],[-96.44341,42.48949],[-96.47557,42.48004],[-96.62596,42.51358],[-96.70805,42.60159],[-96.70725,42.63126],[-96.72403,42.66597],[-96.81315,42.7064],[-96.9068,42.7338],[-96.96102,42.73808],[-97.05218,42.77019],[-97.13746,42.78231],[-97.19013,42.80508],[-97.25709,42.85385],[-97.42319,42.86117],[-97.68651,42.84244],[-97.77446,42.84977],[-97.84527,42.86773],[-97.87534,42.85872],[-97.88856,42.81725],[-97.93672,42.77575],[-98.03503,42.7642],[-98.16584,42.83701],[-98.44705,42.93512],[-98.46736,42.94756],[-98.49855,42.99856],[-104.05313,43.00059],[-104.0551,43.85348]]]}},{"type":"Feature","properties":{"code":"48","nom":"Texas"},"geometry":{"type":"MultiPolygon","coordinates":[[[[-96.83003,28.11184],[-96.81042,28.12603],[-96.81644,28.17481],[-96.79196,28.18869],[-96.70384,28.19825],[-96.70331,28.21645],[-96.66246,28.22731],[-96.65186,28.25127],[-96.59293,28.29697],[-96.55326,28.30234],[-96.52891,28.3225],[-96.451,28.33704],[-96.40321,28.37148],[-96.39785,28.34351],[-96.4137,28.32734],[-96.54777,28.2708],[-96.69467,28.18212],[-96.84962,28.06494],[-96.967,27.95053],[-97.16668,27.67658],[-97.27609,27.47215],[-97.32652,27.34761],[-97.37094,27.16117],[-97.37913,27.048],[-97.37073,26.90971],[-97.33303,26.73648],[-97.19464,26.30651],[-97.15427,26.06684],[-97.16984,26.07785],[-97.18398,26.21429],[-97.21488,26.35361],[-97.27643,26.52173],[-97.2924,26.52801],[-97.31073,26.55656],[-97.34582,26.70059],[-97.37044,26.7239],[-97.36834,26.79565],[-97.38746,26.82079],[-97.39008,27.15651],[-97.37332,27.27645],[-97.35761,27.30787],[-97.36677,27.33328],[-97.31728,27.46369],[-97.23688,27.59829],[-97.23138,27.63234],[-97.2141,27.63155],[-97.20074,27.65014],[-97.20309,27.688],[-97.10333,27.78907],[-97.09259,27.81918],[-97.13449,27.82521],[-97.05671,27.84229],[-96.98574,27.95405],[-96.97789,27.97644],[-96.98666,27.98076],[-96.96781,28.02004],[-96.96257,28.01238],[-96.95262,28.01644],[-96.92643,28.04341],[-96.92709,28.05729],[-96.88623,28.0844],[-96.87942,28.1314],[-96.84538,28.10888],[-96.83003,28.11184]]],[[[-100.00038,34.74646],[-100.00038,34.56051],[-99.95457,34.5782],[-99.92321,34.57455],[-99.76723,34.4305],[-99.69497,34.37833],[-99.61679,34.37539],[-99.57437,34.41828],[-99.51538,34.41433],[-99.45348,34.38876],[-99.44076,34.37412],[-99.40717,34.37261],[-99.35671,34.44214],[-99.26132,34.4035],[-99.21142,34.3379],[-99.21165,34.29223],[-99.19089,34.21525],[-99.1192,34.20175],[-98.96674,34.20119],[-98.85842,34.15273],[-98.76557,34.13638],[-98.70018,34.136],[-98.65235,34.16103],[-98.59979,34.16057],[-98.55372,34.13366],[-98.50418,34.07237],[-98.47507,34.06427],[-98.36402,34.15711],[-98.32545,34.15102],[-98.2939,34.13302],[-98.16912,34.11417],[-98.08526,34.00326],[-98.04112,33.99346],[-97.98352,34.00156],[-97.94573,33.98984],[-97.9534,33.93644],[-97.97786,33.88993],[-97.87739,33.85024],[-97.83433,33.85767],[-97.78532,33.8907],[-97.69311,33.9837],[-97.67177,33.99137],[-97.5896,33.95355],[-97.59712,33.91787],[-97.58744,33.90248],[-97.555,33.89728],[-97.50096,33.91964],[-97.45807,33.90163],[-97.45147,33.87093],[-97.46286,33.84177],[-97.42649,33.8194],[-97.37294,33.81945],[-97.31084,33.87246],[-97.21092,33.91606],[-97.18085,33.8952],[-97.16663,33.84731],[-97.17163,33.83534],[-97.1997,33.82732],[-97.20483,33.79991],[-97.17219,33.73754],[-97.1211,33.71717],[-97.09241,33.73321],[-97.04797,33.81793],[-96.98557,33.88652],[-96.97287,33.9357],[-96.92211,33.95958],[-96.89944,33.93373],[-96.88301,33.86802],[-96.85609,33.84749],[-96.76159,33.82441],[-96.71242,33.83163],[-96.67858,33.89279],[-96.65864,33.90008],[-96.61536,33.88111],[-96.61293,33.83394],[-96.50027,33.77258],[-96.42336,33.77636],[-96.36959,33.71681],[-96.30468,33.7459],[-96.22052,33.74739],[-96.1817,33.7585],[-96.14807,33.8378],[-95.94993,33.85745],[-95.82468,33.83773],[-95.76362,33.84795],[-95.75716,33.86729],[-95.59968,33.93425],[-95.55941,33.93018],[-95.54435,33.88011],[-95.40779,33.86631],[-95.28757,33.87362],[-95.25554,33.89205],[-95.25291,33.93365],[-95.21936,33.96157],[-95.06725,33.91735],[-95.03945,33.86062],[-94.8693,33.74587],[-94.7606,33.72705],[-94.73513,33.69127],[-94.52838,33.61599],[-94.49068,33.62559],[-94.48587,33.63787],[-94.46434,33.59882],[-94.35595,33.54318],[-94.25266,33.58614],[-94.1818,33.59322],[-94.08524,33.57555],[-94.04345,33.55225],[-94.04272,31.99927],[-93.84003,31.8006],[-93.81248,31.71525],[-93.83492,31.58621],[-93.79809,31.53404],[-93.72961,31.48792],[-93.69587,31.40939],[-93.64081,31.37255],[-93.67168,31.29959],[-93.6144,31.26087],[-93.59883,31.17468],[-93.5885,31.16558],[-93.54893,31.1866],[-93.53174,31.18082],[-93.52764,31.07451],[-93.54035,31.00813],[-93.53094,30.92453],[-93.55862,30.86942],[-93.56329,30.8185],[-93.72784,30.57407],[-93.74004,30.53877],[-93.71012,30.5064],[-93.6983,30.43866],[-93.75765,30.39042],[-93.76582,30.33332],[-93.7359,30.29944],[-93.72057,30.29596],[-93.71201,30.1943],[-93.69525,30.1476],[-93.7121,30.06735],[-93.78943,29.98781],[-93.89068,29.84316],[-93.89847,29.77158],[-93.83797,29.69062],[-93.86698,29.67309],[-94.00141,29.68149],[-94.13258,29.64622],[-94.59485,29.4679],[-94.69416,29.41563],[-94.73105,29.36914],[-94.77869,29.36148],[-94.78313,29.37564],[-94.76685,29.39349],[-94.70637,29.4368],[-94.6724,29.47684],[-94.60856,29.48334],[-94.56667,29.53199],[-94.53235,29.5178],[-94.49502,29.52503],[-94.50343,29.54325],[-94.52374,29.54599],[-94.55399,29.57388],[-94.7407,29.52586],[-94.78094,29.53109],[-94.7906,29.5484],[-94.77105,29.54844],[-94.75524,29.56278],[-94.70874,29.62523],[-94.69315,29.69445],[-94.69532,29.72305],[-94.74092,29.78708],[-94.81609,29.75671],[-94.85111,29.72137],[-94.87255,29.67125],[-94.89311,29.66134],[-94.92132,29.65818],[-94.93609,29.6927],[-94.96596,29.70033],[-95.01564,29.63946],[-94.98271,29.60134],[-95.01825,29.55488],[-94.99958,29.52109],[-94.98192,29.51114],[-94.90946,29.49684],[-94.93086,29.4505],[-94.8908,29.43343],[-94.88654,29.29783],[-94.86513,29.29398],[-94.82495,29.306],[-94.82231,29.34425],[-94.8107,29.35344],[-94.7849,29.33554],[-94.73132,29.33807],[-94.72253,29.33145],[-95.08177,29.11122],[-95.38239,28.86635],[-95.43959,28.85902],[-95.8125,28.66494],[-96.22038,28.49197],[-96.37112,28.39766],[-96.37862,28.38391],[-96.37414,28.40427],[-96.33512,28.4378],[-96.22383,28.49507],[-96.21505,28.50968],[-95.98616,28.60632],[-95.97853,28.65059],[-95.99634,28.65874],[-96.00652,28.64805],[-96.04774,28.64907],[-96.22891,28.58087],[-96.234,28.60174],[-96.21262,28.6226],[-96.23094,28.64143],[-96.19125,28.69436],[-96.2228,28.69843],[-96.28794,28.68316],[-96.30423,28.67146],[-96.30372,28.645],[-96.37344,28.62667],[-96.48794,28.56968],[-96.48591,28.60785],[-96.51084,28.61497],[-96.49965,28.63584],[-96.56326,28.64449],[-96.57293,28.6679],[-96.5597,28.69131],[-96.58413,28.72286],[-96.64876,28.70963],[-96.66453,28.6969],[-96.61059,28.63889],[-96.6228,28.6221],[-96.6111,28.58596],[-96.5653,28.5824],[-96.56123,28.5707],[-96.52611,28.55797],[-96.50575,28.52591],[-96.41975,28.46739],[-96.40397,28.44245],[-96.59176,28.35746],[-96.67268,28.33558],[-96.70525,28.34881],[-96.71034,28.40683],[-96.77599,28.40581],[-96.79481,28.36459],[-96.79176,28.31217],[-96.80957,28.29029],[-96.78718,28.25568],[-96.80041,28.22413],[-96.93476,28.12387],[-96.96276,28.12336],[-97.00041,28.13761],[-97.02739,28.12438],[-97.03553,28.074],[-97.02586,28.04194],[-97.12917,27.9198],[-97.18718,27.82413],[-97.22518,27.82572],[-97.2508,27.87604],[-97.2737,27.88163],[-97.3251,27.86789],[-97.37904,27.83787],[-97.39329,27.7829],[-97.36835,27.74168],[-97.31645,27.71268],[-97.25396,27.6967],[-97.2966,27.61395],[-97.29405,27.5941],[-97.32153,27.5712],[-97.40194,27.33557],[-97.42026,27.31725],[-97.48286,27.29791],[-97.5083,27.27501],[-97.53222,27.27858],[-97.54698,27.29079],[-97.49813,27.3086],[-97.50271,27.32234],[-97.48388,27.33863],[-97.48693,27.35898],[-97.50169,27.36662],[-97.60907,27.28519],[-97.63146,27.28621],[-97.64011,27.27094],[-97.62892,27.24295],[-97.54291,27.22921],[-97.42408,27.26407],[-97.44367,27.11623],[-97.46174,27.09562],[-97.48057,27.10249],[-97.49584,27.0941],[-97.47751,27.06611],[-97.48769,27.05364],[-97.48668,27.03481],[-97.47395,27.02921],[-97.47853,26.99919],[-97.5368,26.99969],[-97.55538,26.99028],[-97.55538,26.93888],[-97.54011,26.90097],[-97.56327,26.84219],[-97.50983,26.80351],[-97.47166,26.75873],[-97.44571,26.60936],[-97.41696,26.55364],[-97.44138,26.45542],[-97.41161,26.44728],[-97.4195,26.41318],[-97.40601,26.40911],[-97.39507,26.41725],[-97.36963,26.3946],[-97.38896,26.36585],[-97.391,26.33226],[-97.35818,26.35644],[-97.33044,26.35058],[-97.35436,26.31394],[-97.34393,26.26738],[-97.31187,26.27374],[-97.30703,26.25313],[-97.32128,26.2287],[-97.2966,26.20071],[-97.30678,26.15949],[-97.28209,26.1203],[-97.29507,26.10834],[-97.2709,26.08646],[-97.19965,26.07704],[-97.19507,26.04193],[-97.22611,26.02437],[-97.21695,25.99384],[-97.19583,25.99307],[-97.16721,26.00707],[-97.16263,26.02348],[-97.18273,26.05313],[-97.15201,26.06211],[-97.14557,25.97113],[-97.34828,25.93114],[-97.36672,25.88507],[-97.40836,25.85646],[-97.51116,25.88746],[-97.58257,25.93786],[-97.67157,26.03395],[-97.8887,26.06493],[-98.00831,26.06115],[-98.04452,26.04375],[-98.24166,26.07454],[-98.38669,26.15787],[-98.43882,26.21202],[-98.58581,26.2574],[-98.62333,26.25959],[-98.6329,26.25035],[-98.70568,26.27748],[-98.75116,26.33131],[-98.80735,26.36942],[-98.86135,26.36599],[-99.04757,26.40692],[-99.10572,26.43872],[-99.168,26.5578],[-99.26861,26.84321],[-99.32182,26.90685],[-99.37915,26.93449],[-99.44652,27.02301],[-99.45232,27.06267],[-99.42988,27.09432],[-99.42635,27.17626],[-99.45239,27.26405],[-99.49468,27.2776],[-99.53777,27.31607],[-99.49283,27.39049],[-99.48022,27.4858],[-99.54164,27.60577],[-99.60062,27.64131],[-99.66617,27.63832],[-99.84346,27.77456],[-99.87617,27.80628],[-99.90149,27.86416],[-99.89583,27.90418],[-99.99145,27.99456],[-100.08339,28.14403],[-100.20245,28.19055],[-100.29139,28.2754],[-100.34699,28.40723],[-100.33381,28.49925],[-100.38696,28.51402],[-100.42986,28.59644],[-100.50035,28.66196],[-100.50761,28.7406],[-100.53544,28.8052],[-100.64009,28.91583],[-100.65151,28.94343],[-100.64589,28.98642],[-100.67466,29.09978],[-100.79767,29.24694],[-100.95404,29.3476],[-100.99561,29.3634],[-101.06015,29.45866],[-101.1375,29.47354],[-101.23528,29.52485],[-101.25038,29.62417],[-101.31413,29.65905],[-101.34374,29.66205],[-101.40393,29.75759],[-101.45501,29.77019],[-101.62596,29.77106],[-101.64642,29.7543],[-101.94491,29.80147],[-102.05004,29.78507],[-102.11608,29.79253],[-102.29733,29.87519],[-102.32339,29.87519],[-102.36465,29.84362],[-102.38668,29.76148],[-102.48682,29.78673],[-102.55491,29.74897],[-102.61288,29.74818],[-102.66519,29.73742],[-102.68974,29.72235],[-102.74549,29.59297],[-102.80869,29.52232],[-102.83332,29.40898],[-102.87581,29.35372],[-102.89589,29.28478],[-102.88631,29.24568],[-102.87135,29.24162],[-102.86685,29.22501],[-102.99569,29.16122],[-103.10443,29.03359],[-103.11533,28.98527],[-103.16387,28.9721],[-103.2819,28.99009],[-103.38351,29.02411],[-103.47104,29.07537],[-103.50324,29.11911],[-103.55868,29.15496],[-103.71487,29.18414],[-103.76781,29.22495],[-103.79201,29.2627],[-104.02549,29.3144],[-104.16751,29.40293],[-104.23585,29.49674],[-104.39435,29.56054],[-104.51551,29.64149],[-104.53857,29.6774],[-104.56606,29.77138],[-104.67988,29.92095],[-104.69359,30.01908],[-104.6873,30.17946],[-104.70892,30.23583],[-104.76163,30.30115],[-104.85952,30.39041],[-104.87281,30.50014],[-104.92978,30.59924],[-104.97207,30.61026],[-105.04441,30.68389],[-105.21123,30.79961],[-105.26548,30.80254],[-105.39463,30.85892],[-105.41183,30.89337],[-105.55679,30.98947],[-105.60333,31.08263],[-105.64883,31.1159],[-105.70949,31.13638],[-105.75052,31.16494],[-105.86935,31.28863],[-105.92313,31.31209],[-105.98103,31.37512],[-106.00693,31.39283],[-106.13278,31.42537],[-106.2092,31.46923],[-106.38104,31.73211],[-106.43674,31.75687],[-106.47251,31.7518],[-106.62781,31.86059],[-106.59864,32.00075],[-103.06442,32.00052],[-103.06463,32.9999],[-103.04353,34.01801],[-103.04167,36.47851],[-103.00243,36.5004],[-100.00041,36.4997],[-100.00038,34.74646]]]]}}]}' };
|
|
27500
27500
|
}
|
|
27501
27501
|
});
|
|
@@ -35117,7 +35117,7 @@ var OAUTH_BASE_URLS = {
|
|
|
35117
35117
|
fr: "https://staging.api.leadbay.app"
|
|
35118
35118
|
}
|
|
35119
35119
|
};
|
|
35120
|
-
var VERSION = "0.44.
|
|
35120
|
+
var VERSION = "0.44.1";
|
|
35121
35121
|
var HELP = `
|
|
35122
35122
|
leadbay-mcp ${VERSION} \u2014 Leadbay Model Context Protocol server
|
|
35123
35123
|
|