@pipeworx/mcp-medicare-pricing 0.1.3 → 0.1.5

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/README.md CHANGED
@@ -4,7 +4,7 @@ What Medicare **pays** — physician fee schedule, lab rates, and per-day unit
4
4
  limits. The companion to `medicare-coverage`, which answers whether something is
5
5
  covered but not what it is worth.
6
6
 
7
- Part of [Pipeworx](https://pipeworx.io) — an MCP gateway connecting AI agents to 1683+ live data sources.
7
+ Part of [Pipeworx](https://pipeworx.io) — an MCP gateway connecting AI agents to 1882+ live data sources. This is an independent, unofficial integration — not affiliated with, endorsed by, or published by the upstream provider.
8
8
 
9
9
  ## Tools
10
10
 
@@ -14,9 +14,11 @@ Part of [Pipeworx](https://pipeworx.io) — an MCP gateway connecting AI agents
14
14
  | `medicare_lab_rate` | "What does a comprehensive metabolic panel reimburse?" — national CLFS rate. |
15
15
  | `medicare_lab_test_lookup` | "What does Medicare pay for Signatera, and which MolDX LCD applies?" — brand name → PLA code, current CLFS rate, and the MolDX LCDs/articles for the test's category. |
16
16
  | `medicare_dmepos_rate` | "How much does Medicare pay for a CPAP machine (E0601) in Texas?" — state-priced, rural vs non-rural. |
17
+ | `medicare_opps_rate` | "What does Medicare pay a hospital outpatient department for CPT 33289 (CardioMEMS implant)?" — status indicator, APC, relative weight, national payment rate, copay, device/drug pass-through status. |
17
18
  | `medicare_code_units_limit` | "How many units of this code will they pay for in one day?" — NCCI MUE. |
18
19
  | `check_code_pair` | "Can I bill 00142 and 64474 together?" — NCCI PTP edit + modifier indicator for a code pair. |
19
20
  | `explain_ncci_edit` | "What is bundled into (or bundles into) this code?" — every recorded PTP edit for one code. |
21
+ | `medicare_fqhc_pps_rate` | "What is the FQHC PPS base rate for 2026?" — CMS's national Federally Qualified Health Center per-visit base rate, by year. |
20
22
  | `medicare_pricing_coverage` | Which vintages are loaded, including the PTP baseline vintage. |
21
23
 
22
24
  ## Auth
@@ -30,8 +32,45 @@ All from CMS, all downloadable files with no API:
30
32
  - **Physician Fee Schedule relative value files** (RVUs + GPCIs) — annual
31
33
  - **Clinical Laboratory Fee Schedule** — quarterly
32
34
  - **DMEPOS fee schedule** (durable medical equipment, prosthetics, orthotics, supplies) — quarterly (as necessary): A=Jan, B=Apr, C=Jul, D=Oct
35
+ - **OPPS Addendum B** (Hospital Outpatient Prospective Payment System payment rates by HCPCS code) — quarterly: Q1=Jan, Q2=Apr, Q3=Jul, Q4=Oct
33
36
  - **NCCI Medically Unlikely Edits** — quarterly
34
37
  - **NCCI PTP quarterly additions/deletions/revisions files** — quarterly (see below — a narrower source than the other three)
38
+ - **FQHC Prospective Payment System base payment rate** — annual (see below — a hand-maintained table, not a downloaded file)
39
+
40
+ ## FQHC PPS base payment rate — a hand-maintained table, and why
41
+
42
+ `medicare_fqhc_pps_rate` is different from the rest of this pack: it is not
43
+ backed by Supabase or a downloaded bulk file, because there is neither. CMS
44
+ publishes the FQHC PPS national base rate exactly once a year, as a single new
45
+ dollar figure inside a CMS Manual System "Recurring Update Notification"
46
+ Change Request PDF — one number, one PDF, once a year. Standing up an ingest
47
+ pipeline for that is not proportionate, so the pack carries a small table of
48
+ `{year, base_rate_usd, effective_date, market_basket_update_pct,
49
+ prior_year_rate_usd, transmittal, change_request, publication}` in
50
+ `src/index.ts` (`FQHC_PPS_BASE_RATES`), five rows (CY2022–CY2026), each read
51
+ directly off its own primary CMS transmittal.
52
+
53
+ This is the national BASE rate only — before the per-FQHC Geographic
54
+ Adjustment Factor (GAF) CMS applies on top. The GAF-adjusted amount for a
55
+ locality is `medicare_fqhc_gaf` (below).
56
+
57
+ ## Geographic adjustment: `medicare_gpci_lookup` and `medicare_fqhc_gaf` (fleet #3398)
58
+
59
+ `medicare_gpci_lookup` returns the work / practice-expense / malpractice GPCIs
60
+ for a locality or a whole state with no procedure code (years 2024-2026 loaded;
61
+ 2024 and 2025 were backfilled with `scripts/ingest-medicare-pricing.mjs
62
+ --gpci-only`). `medicare_fqhc_gaf` returns CMS's own published FQHC GAF per
63
+ locality for CY2024-2026 and the GAF-adjusted per-visit rate. The GAF table is
64
+ CMS's published number, not derived here, and is a small generated source file
65
+ (`src/fqhc-gaf.ts`, 109 localities per year). **Refresh** each January: download
66
+ the new year's FQHC GAF file from CMS and run
67
+ `node scripts/build-fqhc-gaf-table.mjs 2024=<csv> 2025=<csv> 2026=<csv> 2027=<csv>`.
68
+
69
+ **Refresh**: CMS issues the following year's transmittal in Nov/Dec (the
70
+ CY2026 update was dated 2025-12-05 for a Jan 1, 2026 effective date). Add a
71
+ row to `FQHC_PPS_BASE_RATES` each year once it posts — search CMS's own
72
+ transmittals (Pub 100-04 Medicare Claims Processing, or Pub 100-02 Medicare
73
+ Benefit Policy) for "FQHC PPS Calendar Year".
35
74
 
36
75
  ## ADLT list — brand name to billing code
37
76
 
@@ -211,6 +250,48 @@ which is AMA copyright. The DMEPOS source file's own DMEREAD/DMEBACK
211
250
  documentation carries no AMA/copyright notice anywhere (checked), so
212
251
  `medicare_dmepos_rate` DOES return the code description.
213
252
 
253
+ ## OPPS — what a hospital outpatient department is paid
254
+
255
+ `medicare_opps_rate` answers the same "what does Medicare pay" question for a
256
+ **hospital outpatient department** claim, as opposed to a physician office
257
+ (`medicare_physician_payment`) or a lab (`medicare_lab_rate`). Source: CMS,
258
+ OPPS Addendum B, the quarterly national payment-rate file by HCPCS code.
259
+ Measured size: 19,278 rows for the CY2026 October release — small, loaded
260
+ whole, same shape as `clfs_rates`/`dmepos_rates` already in this pack.
261
+
262
+ **Device and drug/biological pass-through is the status indicator, not a
263
+ separate column.** CMS's own "Drug and Device Pass-Through Expiration during
264
+ Calendar Year" column in Addendum B is, in practice, not a usable date field —
265
+ checked against the CY2026 October release, every non-blank value in that
266
+ column was a stray change-marker rather than a date. The reliable signal is
267
+ the status indicator itself: **SI='H'** is a pass-through device category
268
+ (paid separately, outside the standard APC amount, for as long as the device
269
+ holds that status — typically 2-3 years from market entry, after which CMS
270
+ reprices it, often to packaged SI='N'), and **SI='G'** is a pass-through
271
+ drug/biological. `device_pass_through`/`drug_or_biological_pass_through` on
272
+ every response are derived from SI, not from the expiration column.
273
+
274
+ A **packaged** code (SI='N', among several other status indicators) returns a
275
+ valid `status_indicator` and `status_indicator_meaning` but `apc: null` and no
276
+ payment rate — that is a correct, normal answer: OPPS pays for that code only
277
+ as part of whatever procedure it is billed alongside, never on its own.
278
+ CardioMEMS (C2624, the implantable pulmonary-artery pressure sensor) is a
279
+ worked example of exactly this: it has been on the market long enough that it
280
+ is no longer pass-through (SI='N', packaged into the implant procedure
281
+ 33289's payment), which is the expected, current state — not a missing-data
282
+ gap.
283
+
284
+ ## No OPPS short descriptors — a mixed-code-type file
285
+
286
+ Addendum B's own header states *"CPT codes and descriptions only are
287
+ copyright ... American Medical Association"*, and the file mixes AMA-
288
+ copyright CPT (HCPCS Level I, numeric codes like 33289) with CMS-owned HCPCS
289
+ Level II codes (like C2624) under **one shared** descriptor column, with no
290
+ per-row schema signal to tell which is which. Unlike `medicare_dmepos_rate`
291
+ (Level II only, so the description is safely CMS-owned), `medicare_opps_rate`
292
+ follows the stricter `pfs_rvu` convention instead: no descriptor is stored at
293
+ all, for any code in this table. A caller passes a code they already hold.
294
+
214
295
  ## DMEPOS pays by state, not locality
215
296
 
216
297
  Medicare pays DMEPOS by **state** (not by the physician-fee-schedule
@@ -245,15 +326,30 @@ node scripts/ingest-ncci-ptp-baseline.mjs --dir /path/to/8-zips # full PTP base
245
326
 
246
327
  node scripts/ingest-dmepos.mjs # newest DMEPOS release (default: 2026 release C)
247
328
  node scripts/ingest-dmepos.mjs --year 2026 --release D # add a new release when CMS posts one
329
+
330
+ node scripts/ingest-opps.mjs # newest OPPS Addendum B release (default: 2026 October)
331
+ node scripts/ingest-opps.mjs --year 2026 --month january # add a new quarterly release when CMS posts one
248
332
  ```
249
333
 
250
334
  Loaded as of writing: 19,226 RVU rows, 109 localities, 2,081 lab rates, 3,531
251
- DMEPOS code/modifier rows (2026 release C, 53 states/territories each), 33,354
335
+ DMEPOS code/modifier rows (2026 release C, 53 states/territories each), 19,278
336
+ OPPS Addendum B rows (CY2026 October / Q4), 33,354
252
337
  MUEs, **4,109,749 distinct NCCI PTP pairs** — the FULL CMS baseline (2026q3,
253
338
  v322r0) with the 2025q1..2026q3 quarterly change files layered on top (fleet
254
339
  #1293, 2026-09-07; superseded the prior 182,286-pair change-window-only
255
340
  coverage). All loaders refuse rather than reporting an empty parse as success.
256
341
 
342
+ `ingest-opps.mjs` resolves the current download from the OPPS Addendum B
343
+ release landing page, same pattern as `ingest-dmepos.mjs`. The landing page's
344
+ own link routes through CMS's `/apps/ama/license.asp?file=...` AMA licence
345
+ click-through page — but, unlike the NCCI PTP baseline elsewhere in this pack,
346
+ the underlying file is NOT actually gated: fetching the plain
347
+ `https://www.cms.gov/files/zip/<name>.zip` URL directly (bypassing
348
+ license.asp entirely) returns the zip with no click-through, no cookie, and no
349
+ Referer needed — verified live, 2026-10-21. The script extracts that direct
350
+ URL from the landing page and fetches it, rather than going through
351
+ license.asp at all.
352
+
257
353
  `ingest-dmepos.mjs` resolves the current download from the DMEPOS release
258
354
  subpage rather than guessing the zip filename — CMS's DMEPOS naming is not
259
355
  stable (a release page 404s before it is posted, and old release URLs have
@@ -311,7 +407,7 @@ directly, instead of just this one's:
311
407
  }
312
408
  ```
313
409
 
314
- Both URLs reach the same gateway and the same 1683+ data sources. The
410
+ Both URLs reach the same gateway and the same 1882+ data sources. The
315
411
  only difference is which pack's tools are listed **directly**; `ask_pipeworx`
316
412
  reaches all of them from either one.
317
413
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@pipeworx/mcp-medicare-pricing",
3
- "version": "0.1.3",
4
- "description": "What does Medicare PAY — physician fee schedule, lab rates, and per-day unit",
3
+ "version": "0.1.5",
4
+ "description": "What does Medicare PAY — physician fee schedule, lab rates, and per-day unit limits.",
5
5
  "type": "module",
6
6
  "main": "src/index.ts",
7
7
  "types": "src/index.ts",
@@ -26,7 +26,7 @@
26
26
  "@cloudflare/workers-types": "^4.20260405.1"
27
27
  },
28
28
  "pipeworx": {
29
- "sourceHash": "v1-4bc045e1de966c1a9bd8a24cb7841ad9803cdfe842f2b6db807b64562639bc33",
30
- "sourceCommit": "6fe8fb3e01138dfc4ebe7d5c246503aab9278d06"
29
+ "sourceHash": "v1-510fd66ca4a1743183dd5075ecc73df84758f6eeef177a53b00aaae2036235fe",
30
+ "sourceCommit": "ba9dd6df5992aeb16ef2425ee86d1752c34ca636"
31
31
  }
32
32
  }
package/server.json CHANGED
@@ -2,8 +2,8 @@
2
2
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
3
3
  "name": "io.github.pipeworx-io/medicare-pricing",
4
4
  "title": "Medicare Pricing",
5
- "description": "What does Medicare PAY — physician fee schedule, lab rates, and per-day unit",
6
- "version": "0.1.3",
5
+ "description": "What does Medicare PAY — physician fee schedule, lab rates, and per-day unit limits.",
6
+ "version": "0.1.5",
7
7
  "websiteUrl": "https://pipeworx.io/packs/medicare-pricing",
8
8
  "repository": {
9
9
  "url": "https://github.com/pipeworx-io/mcp-medicare-pricing",
@@ -0,0 +1,332 @@
1
+ // GENERATED by scripts/build-fqhc-gaf-table.mjs -- do not hand-edit.
2
+ // Publisher: CMS, FQHC Prospective Payment System Geographic Adjustment Factors
3
+ // (one table per calendar year, "with 1.0 floor"). [year, state, locality_number, locality_name, gaf]
4
+ export const FQHC_GAF_ROWS: ReadonlyArray<readonly [number, string, string, string, number]> = [
5
+ [2024,"AL","00","ALABAMA",0.899],
6
+ [2024,"AK","01","ALASKA",1.246],
7
+ [2024,"AZ","00","ARIZONA",0.947],
8
+ [2024,"AR","13","ARKANSAS",0.894],
9
+ [2024,"CA","54","BAKERSFIELD",1.009],
10
+ [2024,"CA","55","CHICO",1.008],
11
+ [2024,"CA","71","EL CENTRO",1.008],
12
+ [2024,"CA","56","FRESNO",1.008],
13
+ [2024,"CA","57","HANFORD-CORCORAN",1.008],
14
+ [2024,"CA","18","LOS ANGELES-LONG BEACH-ANAHEIM (LOS ANGELES/ORANGE CNTY)",1.068],
15
+ [2024,"CA","58","MADERA",1.008],
16
+ [2024,"CA","59","MERCED",1.008],
17
+ [2024,"CA","60","MODESTO",1.008],
18
+ [2024,"CA","51","NAPA",1.129],
19
+ [2024,"CA","17","OXNARD-THOUSAND OAKS-VENTURA",1.055],
20
+ [2024,"CA","61","REDDING",1.008],
21
+ [2024,"CA","62","RIVERSIDE-SAN BERNARDINO-ONTARIO",1.008],
22
+ [2024,"CA","63","SACRAMENTO-ROSEVILLE-FOLSOM",1.047],
23
+ [2024,"CA","64","SALINAS",1.051],
24
+ [2024,"CA","72","SAN DIEGO-CHULA VISTA-CARLSBAD",1.059],
25
+ [2024,"CA","05","SAN FRANCISCO-OAKLAND-BERKELEY (SAN FRANCISCO/SAN MATEO/ALAMEDA/CONTRA COSTA CNTY)",1.194],
26
+ [2024,"CA","52","SAN FRANCISCO-OAKLAND-BERKELEY (MARIN CNTY)",1.194],
27
+ [2024,"CA","65","SAN JOSE-SUNNYVALE-SANTA CLARA (SAN BENITO CNTY)",1.207],
28
+ [2024,"CA","73","SAN LUIS OBISPO-PASO ROBLES",1.026],
29
+ [2024,"CA","09","SAN JOSE-SUNNYVALE-SANTA CLARA (SANTA CLARA CNTY)",1.207],
30
+ [2024,"CA","66","SANTA CRUZ-WATSONVILLE",1.062],
31
+ [2024,"CA","74","SANTA MARIA-SANTA BARBARA",1.049],
32
+ [2024,"CA","67","SANTA ROSA-PETALUMA",1.078],
33
+ [2024,"CA","68","STOCKTON",1.008],
34
+ [2024,"CA","53","VALLEJO",1.129],
35
+ [2024,"CA","69","VISALIA",1.008],
36
+ [2024,"CA","70","YUBA CITY",1.008],
37
+ [2024,"CA","75","REST OF CALIFORNIA",1.008],
38
+ [2024,"CO","01","COLORADO",0.986],
39
+ [2024,"CT","00","CONNECTICUT",1.011],
40
+ [2024,"DC","01","DC + MD/VA SUBURBS",1.074],
41
+ [2024,"DE","01","DELAWARE",0.959],
42
+ [2024,"FL","03","FORT LAUDERDALE",0.957],
43
+ [2024,"FL","04","MIAMI",0.971],
44
+ [2024,"FL","99","REST OF FLORIDA",0.931],
45
+ [2024,"GA","01","ATLANTA",0.957],
46
+ [2024,"GA","99","REST OF GEORGIA",0.905],
47
+ [2024,"HI","01","HAWAII, GUAM",1.026],
48
+ [2024,"ID","00","IDAHO",0.916],
49
+ [2024,"IL","16","CHICAGO",0.972],
50
+ [2024,"IL","12","EAST ST. LOUIS",0.921],
51
+ [2024,"IL","15","SUBURBAN CHICAGO",0.984],
52
+ [2024,"IL","99","REST OF ILLINOIS",0.918],
53
+ [2024,"IN","00","INDIANA",0.923],
54
+ [2024,"IA","00","IOWA",0.919],
55
+ [2024,"KS","00","KANSAS",0.915],
56
+ [2024,"KY","00","KENTUCKY",0.902],
57
+ [2024,"LA","01","NEW ORLEANS",0.929],
58
+ [2024,"LA","99","REST OF LOUISIANA",0.904],
59
+ [2024,"ME","03","SOUTHERN MAINE",0.964],
60
+ [2024,"ME","99","REST OF MAINE",0.919],
61
+ [2024,"MD","01","BALTIMORE/SURR. CNTYS",1.004],
62
+ [2024,"MD","99","REST OF MARYLAND",0.972],
63
+ [2024,"MA","01","METROPOLITAN BOSTON",1.069],
64
+ [2024,"MA","99","REST OF MASSACHUSETTS",0.995],
65
+ [2024,"MI","01","DETROIT",0.953],
66
+ [2024,"MI","99","REST OF MICHIGAN",0.918],
67
+ [2024,"MN","00","MINNESOTA",0.97],
68
+ [2024,"MS","00","MISSISSIPPI",0.891],
69
+ [2024,"MO","02","METROPOLITAN KANSAS CITY",0.935],
70
+ [2024,"MO","01","METROPOLITAN ST. LOUIS",0.936],
71
+ [2024,"MO","99","REST OF MISSOURI",0.894],
72
+ [2024,"MT","01","MONTANA",0.958],
73
+ [2024,"NE","00","NEBRASKA",0.92],
74
+ [2024,"NV","00","NEVADA",0.958],
75
+ [2024,"NH","40","NEW HAMPSHIRE",0.974],
76
+ [2024,"NJ","01","NORTHERN NJ",1.069],
77
+ [2024,"NJ","99","REST OF NEW JERSEY",1.028],
78
+ [2024,"NM","05","NEW MEXICO",0.916],
79
+ [2024,"NY","01","MANHATTAN",1.067],
80
+ [2024,"NY","02","NYC SUBURBS/LONG ISLAND",1.082],
81
+ [2024,"NY","03","POUGHKPSIE/N NYC SUBURBS",1.03],
82
+ [2024,"NY","04","QUEENS",1.08],
83
+ [2024,"NY","99","REST OF NEW YORK",0.935],
84
+ [2024,"NC","00","NORTH CAROLINA",0.925],
85
+ [2024,"ND","01","NORTH DAKOTA",0.958],
86
+ [2024,"OH","00","OHIO",0.918],
87
+ [2024,"OK","00","OKLAHOMA",0.909],
88
+ [2024,"OR","01","PORTLAND",1.012],
89
+ [2024,"OR","99","REST OF OREGON",0.952],
90
+ [2024,"PA","01","METROPOLITAN PHILADELPHIA",0.995],
91
+ [2024,"PA","99","REST OF PENNSYLVANIA",0.925],
92
+ [2024,"PR","20","PUERTO RICO",0.962],
93
+ [2024,"RI","01","RHODE ISLAND",0.989],
94
+ [2024,"SC","01","SOUTH CAROLINA",0.919],
95
+ [2024,"SD","02","SOUTH DAKOTA",0.958],
96
+ [2024,"TN","35","TENNESSEE",0.911],
97
+ [2024,"TX","31","AUSTIN",0.979],
98
+ [2024,"TX","20","BEAUMONT",0.914],
99
+ [2024,"TX","09","BRAZORIA",0.968],
100
+ [2024,"TX","11","DALLAS",0.967],
101
+ [2024,"TX","28","FORT WORTH",0.963],
102
+ [2024,"TX","15","GALVESTON",0.965],
103
+ [2024,"TX","18","HOUSTON",0.967],
104
+ [2024,"TX","99","REST OF TEXAS",0.933],
105
+ [2024,"UT","09","UTAH",0.928],
106
+ [2024,"VT","50","VERMONT",0.955],
107
+ [2024,"VA","00","VIRGINIA",0.952],
108
+ [2024,"VI","50","VIRGIN ISLANDS",0.962],
109
+ [2024,"WA","02","SEATTLE (KING CNTY)",1.08],
110
+ [2024,"WA","99","REST OF WASHINGTON",0.98],
111
+ [2024,"WV","16","WEST VIRGINIA",0.895],
112
+ [2024,"WI","00","WISCONSIN",0.939],
113
+ [2024,"WY","21","WYOMING",0.958],
114
+ [2025,"AL","00","ALABAMA",0.939],
115
+ [2025,"AK","01","ALASKA",1.304],
116
+ [2025,"AZ","00","ARIZONA",0.988],
117
+ [2025,"AR","13","ARKANSAS",0.934],
118
+ [2025,"CA","54","BAKERSFIELD",1.053],
119
+ [2025,"CA","55","CHICO",1.051],
120
+ [2025,"CA","71","EL CENTRO",1.051],
121
+ [2025,"CA","56","FRESNO",1.051],
122
+ [2025,"CA","57","HANFORD-CORCORAN",1.051],
123
+ [2025,"CA","18","LOS ANGELES-LONG BEACH-ANAHEIM (LOS ANGELES/ORANGE CNTY)",1.113],
124
+ [2025,"CA","58","MADERA",1.051],
125
+ [2025,"CA","59","MERCED",1.051],
126
+ [2025,"CA","60","MODESTO",1.051],
127
+ [2025,"CA","51","NAPA",1.176],
128
+ [2025,"CA","17","OXNARD-THOUSAND OAKS-VENTURA",1.1],
129
+ [2025,"CA","61","REDDING",1.051],
130
+ [2025,"CA","62","RIVERSIDE-SAN BERNARDINO-ONTARIO",1.051],
131
+ [2025,"CA","63","SACRAMENTO-ROSEVILLE-FOLSOM",1.091],
132
+ [2025,"CA","64","SALINAS",1.096],
133
+ [2025,"CA","72","SAN DIEGO-CHULA VISTA-CARLSBAD",1.104],
134
+ [2025,"CA","05","SAN FRANCISCO-OAKLAND-BERKELEY (SAN FRANCISCO/SAN MATEO/ALAMEDA/CONTRA COSTA CNTY)",1.243],
135
+ [2025,"CA","52","SAN FRANCISCO-OAKLAND-BERKELEY (MARIN CNTY)",1.243],
136
+ [2025,"CA","65","SAN JOSE-SUNNYVALE-SANTA CLARA (SAN BENITO CNTY)",1.257],
137
+ [2025,"CA","73","SAN LUIS OBISPO-PASO ROBLES",1.069],
138
+ [2025,"CA","09","SAN JOSE-SUNNYVALE-SANTA CLARA (SANTA CLARA CNTY)",1.257],
139
+ [2025,"CA","66","SANTA CRUZ-WATSONVILLE",1.107],
140
+ [2025,"CA","74","SANTA MARIA-SANTA BARBARA",1.094],
141
+ [2025,"CA","67","SANTA ROSA-PETALUMA",1.123],
142
+ [2025,"CA","68","STOCKTON",1.051],
143
+ [2025,"CA","53","VALLEJO",1.176],
144
+ [2025,"CA","69","VISALIA",1.051],
145
+ [2025,"CA","70","YUBA CITY",1.051],
146
+ [2025,"CA","75","REST OF CALIFORNIA",1.051],
147
+ [2025,"CO","01","COLORADO",1.029],
148
+ [2025,"CT","00","CONNECTICUT",1.054],
149
+ [2025,"DC","01","DC + MD/VA SUBURBS",1.12],
150
+ [2025,"DE","01","DELAWARE",1.001],
151
+ [2025,"FL","03","FORT LAUDERDALE",0.999],
152
+ [2025,"FL","04","MIAMI",1.013],
153
+ [2025,"FL","99","REST OF FLORIDA",0.972],
154
+ [2025,"GA","01","ATLANTA",0.999],
155
+ [2025,"GA","99","REST OF GEORGIA",0.945],
156
+ [2025,"HI","01","HAWAII, GUAM",1.07],
157
+ [2025,"ID","00","IDAHO",0.957],
158
+ [2025,"IL","16","CHICAGO",1.014],
159
+ [2025,"IL","12","EAST ST. LOUIS",0.962],
160
+ [2025,"IL","15","SUBURBAN CHICAGO",1.026],
161
+ [2025,"IL","99","REST OF ILLINOIS",0.959],
162
+ [2025,"IN","00","INDIANA",0.963],
163
+ [2025,"IA","00","IOWA",0.959],
164
+ [2025,"KS","00","KANSAS",0.956],
165
+ [2025,"KY","00","KENTUCKY",0.942],
166
+ [2025,"LA","01","NEW ORLEANS",0.97],
167
+ [2025,"LA","99","REST OF LOUISIANA",0.944],
168
+ [2025,"ME","03","SOUTHERN MAINE",1.006],
169
+ [2025,"ME","99","REST OF MAINE",0.959],
170
+ [2025,"MD","01","BALTIMORE/SURR. CNTYS",1.047],
171
+ [2025,"MD","99","REST OF MARYLAND",1.014],
172
+ [2025,"MA","01","METROPOLITAN BOSTON",1.115],
173
+ [2025,"MA","99","REST OF MASSACHUSETTS",1.038],
174
+ [2025,"MI","01","DETROIT",0.995],
175
+ [2025,"MI","99","REST OF MICHIGAN",0.958],
176
+ [2025,"MN","00","MINNESOTA",1.012],
177
+ [2025,"MS","00","MISSISSIPPI",0.931],
178
+ [2025,"MO","02","METROPOLITAN KANSAS CITY",0.976],
179
+ [2025,"MO","01","METROPOLITAN ST. LOUIS",0.978],
180
+ [2025,"MO","99","REST OF MISSOURI",0.934],
181
+ [2025,"MT","01","MONTANA",1],
182
+ [2025,"NE","00","NEBRASKA",0.961],
183
+ [2025,"NV","00","NEVADA",1],
184
+ [2025,"NH","40","NEW HAMPSHIRE",1.016],
185
+ [2025,"NJ","01","NORTHERN NJ",1.115],
186
+ [2025,"NJ","99","REST OF NEW JERSEY",1.072],
187
+ [2025,"NM","05","NEW MEXICO",0.957],
188
+ [2025,"NY","01","MANHATTAN",1.112],
189
+ [2025,"NY","02","NYC SUBURBS/LONG ISLAND",1.128],
190
+ [2025,"NY","03","POUGHKPSIE/N NYC SUBURBS",1.074],
191
+ [2025,"NY","04","QUEENS",1.126],
192
+ [2025,"NY","99","REST OF NEW YORK",0.976],
193
+ [2025,"NC","00","NORTH CAROLINA",0.965],
194
+ [2025,"ND","01","NORTH DAKOTA",1],
195
+ [2025,"OH","00","OHIO",0.958],
196
+ [2025,"OK","00","OKLAHOMA",0.949],
197
+ [2025,"OR","01","PORTLAND",1.055],
198
+ [2025,"OR","99","REST OF OREGON",0.993],
199
+ [2025,"PA","01","METROPOLITAN PHILADELPHIA",1.038],
200
+ [2025,"PA","99","REST OF PENNSYLVANIA",0.966],
201
+ [2025,"PR","20","PUERTO RICO",1.003],
202
+ [2025,"RI","01","RHODE ISLAND",1.032],
203
+ [2025,"SC","01","SOUTH CAROLINA",0.959],
204
+ [2025,"SD","02","SOUTH DAKOTA",1],
205
+ [2025,"TN","35","TENNESSEE",0.951],
206
+ [2025,"TX","31","AUSTIN",1.022],
207
+ [2025,"TX","20","BEAUMONT",0.955],
208
+ [2025,"TX","09","BRAZORIA",1.01],
209
+ [2025,"TX","11","DALLAS",1.009],
210
+ [2025,"TX","28","FORT WORTH",1.005],
211
+ [2025,"TX","15","GALVESTON",1.007],
212
+ [2025,"TX","18","HOUSTON",1.009],
213
+ [2025,"TX","99","REST OF TEXAS",0.974],
214
+ [2025,"UT","09","UTAH",0.969],
215
+ [2025,"VT","50","VERMONT",0.997],
216
+ [2025,"VA","00","VIRGINIA",0.994],
217
+ [2025,"VI","50","VIRGIN ISLANDS",1.003],
218
+ [2025,"WA","02","SEATTLE (KING CNTY)",1.126],
219
+ [2025,"WA","99","REST OF WASHINGTON",1.022],
220
+ [2025,"WV","16","WEST VIRGINIA",0.935],
221
+ [2025,"WI","00","WISCONSIN",0.98],
222
+ [2025,"WY","21","WYOMING",1],
223
+ [2026,"AL","00","ALABAMA",0.94],
224
+ [2026,"AK","01","ALASKA",1.29],
225
+ [2026,"AZ","00","ARIZONA",0.985],
226
+ [2026,"AR","13","ARKANSAS",0.932],
227
+ [2026,"CA","54","BAKERSFIELD",1.056],
228
+ [2026,"CA","55","CHICO",1.055],
229
+ [2026,"CA","71","EL CENTRO",1.055],
230
+ [2026,"CA","56","FRESNO",1.055],
231
+ [2026,"CA","57","HANFORD-CORCORAN",1.055],
232
+ [2026,"CA","18","LOS ANGELES-LONG BEACH-ANAHEIM (LOS ANGELES/ORANGE CNTY)",1.109],
233
+ [2026,"CA","58","MADERA",1.055],
234
+ [2026,"CA","59","MERCED",1.055],
235
+ [2026,"CA","60","MODESTO",1.055],
236
+ [2026,"CA","51","NAPA",1.186],
237
+ [2026,"CA","17","OXNARD-THOUSAND OAKS-VENTURA",1.102],
238
+ [2026,"CA","61","REDDING",1.055],
239
+ [2026,"CA","62","RIVERSIDE-SAN BERNARDINO-ONTARIO",1.056],
240
+ [2026,"CA","63","SACRAMENTO-ROSEVILLE-FOLSOM",1.097],
241
+ [2026,"CA","64","SALINAS",1.093],
242
+ [2026,"CA","72","SAN DIEGO-CHULA VISTA-CARLSBAD",1.11],
243
+ [2026,"CA","05","SAN FRANCISCO-OAKLAND-BERKELEY (SAN FRANCISCO/SAN MATEO/ALAMEDA/CONTRA COSTA CNTY)",1.247],
244
+ [2026,"CA","52","SAN FRANCISCO-OAKLAND-BERKELEY (MARIN CNTY)",1.247],
245
+ [2026,"CA","65","SAN JOSE-SUNNYVALE-SANTA CLARA (SAN BENITO CNTY)",1.27],
246
+ [2026,"CA","73","SAN LUIS OBISPO-PASO ROBLES",1.076],
247
+ [2026,"CA","09","SAN JOSE-SUNNYVALE-SANTA CLARA (SANTA CLARA CNTY)",1.27],
248
+ [2026,"CA","66","SANTA CRUZ-WATSONVILLE",1.114],
249
+ [2026,"CA","74","SANTA MARIA-SANTA BARBARA",1.094],
250
+ [2026,"CA","67","SANTA ROSA-PETALUMA",1.125],
251
+ [2026,"CA","68","STOCKTON",1.055],
252
+ [2026,"CA","53","VALLEJO",1.186],
253
+ [2026,"CA","69","VISALIA",1.055],
254
+ [2026,"CA","70","YUBA CITY",1.055],
255
+ [2026,"CA","75","REST OF CALIFORNIA",1.055],
256
+ [2026,"CO","01","COLORADO",1.037],
257
+ [2026,"CT","00","CONNECTICUT",1.047],
258
+ [2026,"DC","01","DC + MD/VA SUBURBS",1.114],
259
+ [2026,"DE","01","DELAWARE",0.997],
260
+ [2026,"FL","03","FORT LAUDERDALE",1.006],
261
+ [2026,"FL","04","MIAMI",1.02],
262
+ [2026,"FL","99","REST OF FLORIDA",0.979],
263
+ [2026,"GA","01","ATLANTA",1.009],
264
+ [2026,"GA","99","REST OF GEORGIA",0.948],
265
+ [2026,"HI","01","HAWAII, GUAM",1.066],
266
+ [2026,"ID","00","IDAHO",0.961],
267
+ [2026,"IL","16","CHICAGO",1.006],
268
+ [2026,"IL","12","EAST ST. LOUIS",0.961],
269
+ [2026,"IL","15","SUBURBAN CHICAGO",1.017],
270
+ [2026,"IL","99","REST OF ILLINOIS",0.958],
271
+ [2026,"IN","00","INDIANA",0.965],
272
+ [2026,"IA","00","IOWA",0.959],
273
+ [2026,"KS","00","KANSAS",0.954],
274
+ [2026,"KY","00","KENTUCKY",0.947],
275
+ [2026,"LA","01","NEW ORLEANS",0.972],
276
+ [2026,"LA","99","REST OF LOUISIANA",0.945],
277
+ [2026,"ME","03","SOUTHERN MAINE",0.996],
278
+ [2026,"ME","99","REST OF MAINE",0.961],
279
+ [2026,"MD","01","BALTIMORE/SURR. CNTYS",1.043],
280
+ [2026,"MD","99","REST OF MARYLAND",1.011],
281
+ [2026,"MA","01","METROPOLITAN BOSTON",1.115],
282
+ [2026,"MA","99","REST OF MASSACHUSETTS",1.034],
283
+ [2026,"MI","01","DETROIT",0.983],
284
+ [2026,"MI","99","REST OF MICHIGAN",0.958],
285
+ [2026,"MN","00","MINNESOTA",1.014],
286
+ [2026,"MS","00","MISSISSIPPI",0.933],
287
+ [2026,"MO","02","METROPOLITAN KANSAS CITY",0.971],
288
+ [2026,"MO","01","METROPOLITAN ST. LOUIS",0.977],
289
+ [2026,"MO","99","REST OF MISSOURI",0.934],
290
+ [2026,"MT","01","MONTANA",1],
291
+ [2026,"NE","00","NEBRASKA",0.963],
292
+ [2026,"NV","00","NEVADA",1],
293
+ [2026,"NH","40","NEW HAMPSHIRE",1.02],
294
+ [2026,"NJ","01","NORTHERN NJ",1.11],
295
+ [2026,"NJ","99","REST OF NEW JERSEY",1.065],
296
+ [2026,"NM","05","NEW MEXICO",0.96],
297
+ [2026,"NY","01","MANHATTAN",1.111],
298
+ [2026,"NY","02","NYC SUBURBS/LONG ISLAND",1.124],
299
+ [2026,"NY","03","POUGHKPSIE/N NYC SUBURBS",1.069],
300
+ [2026,"NY","04","QUEENS",1.121],
301
+ [2026,"NY","99","REST OF NEW YORK",0.976],
302
+ [2026,"NC","00","NORTH CAROLINA",0.968],
303
+ [2026,"ND","01","NORTH DAKOTA",1],
304
+ [2026,"OH","00","OHIO",0.958],
305
+ [2026,"OK","00","OKLAHOMA",0.948],
306
+ [2026,"OR","01","PORTLAND",1.062],
307
+ [2026,"OR","99","REST OF OREGON",0.998],
308
+ [2026,"PA","01","METROPOLITAN PHILADELPHIA",1.029],
309
+ [2026,"PA","99","REST OF PENNSYLVANIA",0.96],
310
+ [2026,"PR","20","PUERTO RICO",1.005],
311
+ [2026,"RI","01","RHODE ISLAND",1.026],
312
+ [2026,"SC","01","SOUTH CAROLINA",0.963],
313
+ [2026,"SD","02","SOUTH DAKOTA",1],
314
+ [2026,"TN","35","TENNESSEE",0.956],
315
+ [2026,"TX","31","AUSTIN",1.029],
316
+ [2026,"TX","20","BEAUMONT",0.957],
317
+ [2026,"TX","09","BRAZORIA",1],
318
+ [2026,"TX","11","DALLAS",1.003],
319
+ [2026,"TX","28","FORT WORTH",0.998],
320
+ [2026,"TX","15","GALVESTON",1.001],
321
+ [2026,"TX","18","HOUSTON",1.001],
322
+ [2026,"TX","99","REST OF TEXAS",0.975],
323
+ [2026,"UT","09","UTAH",0.971],
324
+ [2026,"VT","50","VERMONT",0.995],
325
+ [2026,"VA","00","VIRGINIA",0.992],
326
+ [2026,"VI","50","VIRGIN ISLANDS",1.005],
327
+ [2026,"WA","02","SEATTLE (KING CNTY)",1.135],
328
+ [2026,"WA","99","REST OF WASHINGTON",1.032],
329
+ [2026,"WV","16","WEST VIRGINIA",0.937],
330
+ [2026,"WI","00","WISCONSIN",0.98],
331
+ [2026,"WY","21","WYOMING",1],
332
+ ];