From 154112b99cd1f9f76b1ca0602873e9e005fcc0de Mon Sep 17 00:00:00 2001 From: Donnie Flood Date: Sat, 22 Jan 2022 15:21:50 -0700 Subject: [PATCH] implement autocomplete --- coverage/clover.xml | 22 +- coverage/coverage-final.json | 2 +- coverage/lcov-report/data.ts.html | 2985 ++++++++++++++++++++- coverage/lcov-report/index.html | 36 +- coverage/lcov.info | 37 +- src/server/live/autocomplete/component.ts | 212 ++ src/server/live/autocomplete/data.test.ts | 15 + src/server/live/autocomplete/data.ts | 1012 +++++++ src/server/live/router.ts | 4 +- src/server/socket/websocket_server.ts | 2 +- 10 files changed, 4167 insertions(+), 160 deletions(-) create mode 100644 src/server/live/autocomplete/component.ts create mode 100644 src/server/live/autocomplete/data.test.ts create mode 100644 src/server/live/autocomplete/data.ts diff --git a/coverage/clover.xml b/coverage/clover.xml index 97574a54..8e69d7cb 100644 --- a/coverage/clover.xml +++ b/coverage/clover.xml @@ -1,16 +1,14 @@ - - - - - - - - - - - - + + + + + + + + + + diff --git a/coverage/coverage-final.json b/coverage/coverage-final.json index 94ff8f82..82498964 100644 --- a/coverage/coverage-final.json +++ b/coverage/coverage-final.json @@ -1,2 +1,2 @@ -{"/Users/donnie/src/github.com/floodfx/liveviewjs-poc/src/server/live/live-search/data.ts": {"path":"/Users/donnie/src/github.com/floodfx/liveviewjs-poc/src/server/live/live-search/data.ts","statementMap":{"0":{"start":{"line":13,"column":2},"end":{"line":13,"column":51}},"1":{"start":{"line":13,"column":32},"end":{"line":13,"column":49}},"2":{"start":{"line":12,"column":0},"end":{"line":12,"column":16}},"3":{"start":{"line":17,"column":2},"end":{"line":17,"column":53}},"4":{"start":{"line":17,"column":32},"end":{"line":17,"column":51}},"5":{"start":{"line":16,"column":0},"end":{"line":16,"column":16}},"6":{"start":{"line":21,"column":2},"end":{"line":21,"column":16}},"7":{"start":{"line":20,"column":0},"end":{"line":20,"column":16}},"8":{"start":{"line":24,"column":24},"end":{"line":88,"column":null}}},"fnMap":{"0":{"name":"searchByZip","decl":{"start":{"line":12,"column":16},"end":{"line":12,"column":27}},"loc":{"start":{"line":12,"column":39},"end":{"line":14,"column":1}}},"1":{"name":"(anonymous_1)","decl":{"start":{"line":13,"column":23},"end":{"line":13,"column":28}},"loc":{"start":{"line":13,"column":32},"end":{"line":13,"column":49}}},"2":{"name":"searchByCity","decl":{"start":{"line":16,"column":16},"end":{"line":16,"column":28}},"loc":{"start":{"line":16,"column":41},"end":{"line":18,"column":1}}},"3":{"name":"(anonymous_3)","decl":{"start":{"line":17,"column":23},"end":{"line":17,"column":28}},"loc":{"start":{"line":17,"column":32},"end":{"line":17,"column":51}}},"4":{"name":"listStores","decl":{"start":{"line":20,"column":16},"end":{"line":20,"column":26}},"loc":{"start":{"line":20,"column":26},"end":{"line":22,"column":1}}}},"branchMap":{},"s":{"0":0,"1":0,"2":1,"3":1,"4":7,"5":1,"6":0,"7":1,"8":1},"f":{"0":0,"1":0,"2":1,"3":7,"4":0},"b":{}} +{"/Users/donnie/src/github.com/floodfx/liveviewjs-poc/src/server/live/autocomplete/data.ts": {"path":"/Users/donnie/src/github.com/floodfx/liveviewjs-poc/src/server/live/autocomplete/data.ts","statementMap":{"0":{"start":{"line":4,"column":4},"end":{"line":6,"column":null}},"1":{"start":{"line":5,"column":6},"end":{"line":5,"column":null}},"2":{"start":{"line":7,"column":4},"end":{"line":7,"column":90}},"3":{"start":{"line":7,"column":37},"end":{"line":7,"column":88}},"4":{"start":{"line":3,"column":2},"end":{"line":3,"column":18}},"5":{"start":{"line":10,"column":15},"end":{"line":1012,"column":null}}},"fnMap":{"0":{"name":"suggest","decl":{"start":{"line":3,"column":18},"end":{"line":3,"column":25}},"loc":{"start":{"line":3,"column":40},"end":{"line":8,"column":3}}},"1":{"name":"(anonymous_1)","decl":{"start":{"line":7,"column":29},"end":{"line":7,"column":33}},"loc":{"start":{"line":7,"column":37},"end":{"line":7,"column":88}}}},"branchMap":{"0":{"loc":{"start":{"line":4,"column":4},"end":{"line":6,"column":null}},"type":"if","locations":[{"start":{"line":4,"column":4},"end":{"line":6,"column":null}}]}},"s":{"0":1,"1":0,"2":1,"3":1001,"4":1,"5":1},"f":{"0":1,"1":1001},"b":{"0":[0]}} } diff --git a/coverage/lcov-report/data.ts.html b/coverage/lcov-report/data.ts.html index 2d1109eb..af9ebad6 100644 --- a/coverage/lcov-report/data.ts.html +++ b/coverage/lcov-report/data.ts.html @@ -23,30 +23,30 @@

All files data.ts

- 66.66% + 83.33% Statements - 6/9 + 5/6
- 100% + 0% Branches - 0/0 + 0/1
- 40% + 100% Functions - 2/5 + 2/2
- 71.42% + 80% Lines - 5/7 + 4/5
@@ -150,30 +150,953 @@

All files data.ts

85 86 87 -88  +88 +89 +90 +91 +92 +93 +94 +95 +96 +97 +98 +99 +100 +101 +102 +103 +104 +105 +106 +107 +108 +109 +110 +111 +112 +113 +114 +115 +116 +117 +118 +119 +120 +121 +122 +123 +124 +125 +126 +127 +128 +129 +130 +131 +132 +133 +134 +135 +136 +137 +138 +139 +140 +141 +142 +143 +144 +145 +146 +147 +148 +149 +150 +151 +152 +153 +154 +155 +156 +157 +158 +159 +160 +161 +162 +163 +164 +165 +166 +167 +168 +169 +170 +171 +172 +173 +174 +175 +176 +177 +178 +179 +180 +181 +182 +183 +184 +185 +186 +187 +188 +189 +190 +191 +192 +193 +194 +195 +196 +197 +198 +199 +200 +201 +202 +203 +204 +205 +206 +207 +208 +209 +210 +211 +212 +213 +214 +215 +216 +217 +218 +219 +220 +221 +222 +223 +224 +225 +226 +227 +228 +229 +230 +231 +232 +233 +234 +235 +236 +237 +238 +239 +240 +241 +242 +243 +244 +245 +246 +247 +248 +249 +250 +251 +252 +253 +254 +255 +256 +257 +258 +259 +260 +261 +262 +263 +264 +265 +266 +267 +268 +269 +270 +271 +272 +273 +274 +275 +276 +277 +278 +279 +280 +281 +282 +283 +284 +285 +286 +287 +288 +289 +290 +291 +292 +293 +294 +295 +296 +297 +298 +299 +300 +301 +302 +303 +304 +305 +306 +307 +308 +309 +310 +311 +312 +313 +314 +315 +316 +317 +318 +319 +320 +321 +322 +323 +324 +325 +326 +327 +328 +329 +330 +331 +332 +333 +334 +335 +336 +337 +338 +339 +340 +341 +342 +343 +344 +345 +346 +347 +348 +349 +350 +351 +352 +353 +354 +355 +356 +357 +358 +359 +360 +361 +362 +363 +364 +365 +366 +367 +368 +369 +370 +371 +372 +373 +374 +375 +376 +377 +378 +379 +380 +381 +382 +383 +384 +385 +386 +387 +388 +389 +390 +391 +392 +393 +394 +395 +396 +397 +398 +399 +400 +401 +402 +403 +404 +405 +406 +407 +408 +409 +410 +411 +412 +413 +414 +415 +416 +417 +418 +419 +420 +421 +422 +423 +424 +425 +426 +427 +428 +429 +430 +431 +432 +433 +434 +435 +436 +437 +438 +439 +440 +441 +442 +443 +444 +445 +446 +447 +448 +449 +450 +451 +452 +453 +454 +455 +456 +457 +458 +459 +460 +461 +462 +463 +464 +465 +466 +467 +468 +469 +470 +471 +472 +473 +474 +475 +476 +477 +478 +479 +480 +481 +482 +483 +484 +485 +486 +487 +488 +489 +490 +491 +492 +493 +494 +495 +496 +497 +498 +499 +500 +501 +502 +503 +504 +505 +506 +507 +508 +509 +510 +511 +512 +513 +514 +515 +516 +517 +518 +519 +520 +521 +522 +523 +524 +525 +526 +527 +528 +529 +530 +531 +532 +533 +534 +535 +536 +537 +538 +539 +540 +541 +542 +543 +544 +545 +546 +547 +548 +549 +550 +551 +552 +553 +554 +555 +556 +557 +558 +559 +560 +561 +562 +563 +564 +565 +566 +567 +568 +569 +570 +571 +572 +573 +574 +575 +576 +577 +578 +579 +580 +581 +582 +583 +584 +585 +586 +587 +588 +589 +590 +591 +592 +593 +594 +595 +596 +597 +598 +599 +600 +601 +602 +603 +604 +605 +606 +607 +608 +609 +610 +611 +612 +613 +614 +615 +616 +617 +618 +619 +620 +621 +622 +623 +624 +625 +626 +627 +628 +629 +630 +631 +632 +633 +634 +635 +636 +637 +638 +639 +640 +641 +642 +643 +644 +645 +646 +647 +648 +649 +650 +651 +652 +653 +654 +655 +656 +657 +658 +659 +660 +661 +662 +663 +664 +665 +666 +667 +668 +669 +670 +671 +672 +673 +674 +675 +676 +677 +678 +679 +680 +681 +682 +683 +684 +685 +686 +687 +688 +689 +690 +691 +692 +693 +694 +695 +696 +697 +698 +699 +700 +701 +702 +703 +704 +705 +706 +707 +708 +709 +710 +711 +712 +713 +714 +715 +716 +717 +718 +719 +720 +721 +722 +723 +724 +725 +726 +727 +728 +729 +730 +731 +732 +733 +734 +735 +736 +737 +738 +739 +740 +741 +742 +743 +744 +745 +746 +747 +748 +749 +750 +751 +752 +753 +754 +755 +756 +757 +758 +759 +760 +761 +762 +763 +764 +765 +766 +767 +768 +769 +770 +771 +772 +773 +774 +775 +776 +777 +778 +779 +780 +781 +782 +783 +784 +785 +786 +787 +788 +789 +790 +791 +792 +793 +794 +795 +796 +797 +798 +799 +800 +801 +802 +803 +804 +805 +806 +807 +808 +809 +810 +811 +812 +813 +814 +815 +816 +817 +818 +819 +820 +821 +822 +823 +824 +825 +826 +827 +828 +829 +830 +831 +832 +833 +834 +835 +836 +837 +838 +839 +840 +841 +842 +843 +844 +845 +846 +847 +848 +849 +850 +851 +852 +853 +854 +855 +856 +857 +858 +859 +860 +861 +862 +863 +864 +865 +866 +867 +868 +869 +870 +871 +872 +873 +874 +875 +876 +877 +878 +879 +880 +881 +882 +883 +884 +885 +886 +887 +888 +889 +890 +891 +892 +893 +894 +895 +896 +897 +898 +899 +900 +901 +902 +903 +904 +905 +906 +907 +908 +909 +910 +911 +912 +913 +914 +915 +916 +917 +918 +919 +920 +921 +922 +923 +924 +925 +926 +927 +928 +929 +930 +931 +932 +933 +934 +935 +936 +937 +938 +939 +940 +941 +942 +943 +944 +945 +946 +947 +948 +949 +950 +951 +952 +953 +954 +955 +956 +957 +958 +959 +960 +961 +962 +963 +964 +965 +966 +967 +968 +969 +970 +971 +972 +973 +974 +975 +976 +977 +978 +979 +980 +981 +982 +983 +984 +985 +986 +987 +988 +989 +990 +991 +992 +993 +994 +995 +996 +997 +998 +999 +1000 +1001 +1002 +1003 +1004 +1005 +1006 +1007 +1008 +1009 +1010 +1011 +1012 +1013    +1x +1x +    +1001x     +1x             -1x -      -1x -7x     -1x -      -1x       @@ -237,101 +1160,1953 @@

All files data.ts

      - 
 
-export interface Store {
-  name: string;
-  street: string;
-  phone_number: string;
-  city: string;
-  zip: string;
-  open: boolean;
-  hours: string;
-}
- 
-export function searchByZip(zip: string): Store[] {
-  return stores.filter(store => store.zip === zip);
-}
- 
-export function searchByCity(city: string): Store[] {
-  return stores.filter(store => store.city === city);
-}
- 
-export function listStores(): Store[] {
-  return stores;
-}
- 
-const stores: Store[] = [
-  {
-    name: "Downtown Helena",
-    street: "312 Montana Avenue",
-    phone_number: "406-555-0100",
-    city: "Helena, MT",
-    zip: "59602",
-    open: true,
-    hours: "8am - 10pm M-F"
-  },
-  {
-    name: "East Helena",
-    street: "227 Miner's Lane",
-    phone_number: "406-555-0120",
-    city: "Helena, MT",
-    zip: "59602",
-    open: false,
-    hours: "8am - 10pm M-F"
-  },
-  {
-    name: "Westside Helena",
-    street: "734 Lake Loop",
-    phone_number: "406-555-0130",
-    city: "Helena, MT",
-    zip: "59602",
-    open: true,
-    hours: "8am - 10pm M-F"
-  },
-  {
-    name: "Downtown Denver",
-    street: "426 Aspen Loop",
-    phone_number: "303-555-0140",
-    city: "Denver, CO",
-    zip: "80204",
-    open: true,
-    hours: "8am - 10pm M-F"
-  },
-  {
-    name: "Midtown Denver",
-    street: "7 Broncos Parkway",
-    phone_number: "720-555-0150",
-    city: "Denver, CO",
-    zip: "80204",
-    open: false,
-    hours: "8am - 10pm M-F"
-  },
-  {
-    name: "Denver Stapleton",
-    street: "965 Summit Peak",
-    phone_number: "303-555-0160",
-    city: "Denver, CO",
-    zip: "80204",
-    open: true,
-    hours: "8am - 10pm M-F"
-  },
-  {
-    name: "Denver West",
-    street: "501 Mountain Lane",
-    phone_number: "720-555-0170",
-    city: "Denver, CO",
-    zip: "80204",
-    open: true,
-    hours: "8am - 10pm M-F"
-  }
-]
+  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  + 
 
+ 
+  export function suggest(prefix: string) {
+    Iif(prefix === "") {
+      return []
+    }
+    return listCities.filter(city => city.toLowerCase().startsWith(prefix.toLowerCase()));
+  }
+ 
+  export const listCities: string[] = [
+      "Abilene, TX",
+      "Addison, IL",
+      "Akron, OH",
+      "Alameda, CA",
+      "Albany, OR",
+      "Albany, NY",
+      "Albany, GA",
+      "Albuquerque, NM",
+      "Alexandria, LA",
+      "Alexandria, VA",
+      "Alhambra, CA",
+      "Aliso Viejo, CA",
+      "Allen, TX",
+      "Allentown, PA",
+      "Alpharetta, GA",
+      "Altamonte Springs, FL",
+      "Altoona, PA",
+      "Amarillo, TX",
+      "Ames, IA",
+      "Anaheim, CA",
+      "Anchorage, AK",
+      "Anderson, IN",
+      "Ankeny, IA",
+      "Ann Arbor, MI",
+      "Annapolis, MD",
+      "Antioch, CA",
+      "Apache Junction, AZ",
+      "Apex, NC",
+      "Apopka, FL",
+      "Apple Valley, MN",
+      "Apple Valley, CA",
+      "Appleton, WI",
+      "Arcadia, CA",
+      "Arlington, TX",
+      "Arlington Heights, IL",
+      "Arvada, CO",
+      "Asheville, NC",
+      "Athens-Clarke County, GA",
+      "Atlanta, GA",
+      "Atlantic City, NJ",
+      "Attleboro, MA",
+      "Auburn, AL",
+      "Auburn, WA",
+      "Augusta-Richmond County, GA",
+      "Aurora, CO",
+      "Aurora, IL",
+      "Austin, TX",
+      "Aventura, FL",
+      "Avondale, AZ",
+      "Azusa, CA",
+      "Bakersfield, CA",
+      "Baldwin Park, CA",
+      "Baltimore, MD",
+      "Barnstable Town, MA",
+      "Bartlett, IL",
+      "Bartlett, TN",
+      "Baton Rouge, LA",
+      "Battle Creek, MI",
+      "Bayonne, NJ",
+      "Baytown, TX",
+      "Beaumont, CA",
+      "Beaumont, TX",
+      "Beavercreek, OH",
+      "Beaverton, OR",
+      "Bedford, TX",
+      "Bell Gardens, CA",
+      "Belleville, IL",
+      "Bellevue, WA",
+      "Bellevue, NE",
+      "Bellflower, CA",
+      "Bellingham, WA",
+      "Beloit, WI",
+      "Bend, OR",
+      "Bentonville, AR",
+      "Berkeley, CA",
+      "Berwyn, IL",
+      "Bethlehem, PA",
+      "Beverly, MA",
+      "Billings, MT",
+      "Biloxi, MS",
+      "Binghamton, NY",
+      "Birmingham, AL",
+      "Bismarck, ND",
+      "Blacksburg, VA",
+      "Blaine, MN",
+      "Bloomington, IN",
+      "Bloomington, MN",
+      "Bloomington, IL",
+      "Blue Springs, MO",
+      "Boca Raton, FL",
+      "Boise City, ID",
+      "Bolingbrook, IL",
+      "Bonita Springs, FL",
+      "Bossier City, LA",
+      "Boston, MA",
+      "Boulder, CO",
+      "Bountiful, UT",
+      "Bowie, MD",
+      "Bowling Green, KY",
+      "Boynton Beach, FL",
+      "Bozeman, MT",
+      "Bradenton, FL",
+      "Brea, CA",
+      "Bremerton, WA",
+      "Brentwood, CA",
+      "Brentwood, TN",
+      "Bridgeport, CT",
+      "Bristol, CT",
+      "Brockton, MA",
+      "Broken Arrow, OK",
+      "Brookfield, WI",
+      "Brookhaven, GA",
+      "Brooklyn Park, MN",
+      "Broomfield, CO",
+      "Brownsville, TX",
+      "Bryan, TX",
+      "Buckeye, AZ",
+      "Buena Park, CA",
+      "Buffalo, NY",
+      "Buffalo Grove, IL",
+      "Bullhead City, AZ",
+      "Burbank, CA",
+      "Burien, WA",
+      "Burleson, TX",
+      "Burlington, NC",
+      "Burlington, VT",
+      "Burnsville, MN",
+      "Caldwell, ID",
+      "Calexico, CA",
+      "Calumet City, IL",
+      "Camarillo, CA",
+      "Cambridge, MA",
+      "Camden, NJ",
+      "Campbell, CA",
+      "Canton, OH",
+      "Cape Coral, FL",
+      "Cape Girardeau, MO",
+      "Carlsbad, CA",
+      "Carmel, IN",
+      "Carol Stream, IL",
+      "Carpentersville, IL",
+      "Carrollton, TX",
+      "Carson, CA",
+      "Carson City, NV",
+      "Cary, NC",
+      "Casa Grande, AZ",
+      "Casper, WY",
+      "Castle Rock, CO",
+      "Cathedral City, CA",
+      "Cedar Falls, IA",
+      "Cedar Hill, TX",
+      "Cedar Park, TX",
+      "Cedar Rapids, IA",
+      "Centennial, CO",
+      "Ceres, CA",
+      "Cerritos, CA",
+      "Champaign, IL",
+      "Chandler, AZ",
+      "Chapel Hill, NC",
+      "Charleston, SC",
+      "Charleston, WV",
+      "Charlotte, NC",
+      "Charlottesville, VA",
+      "Chattanooga, TN",
+      "Chelsea, MA",
+      "Chesapeake, VA",
+      "Chesterfield, MO",
+      "Cheyenne, WY",
+      "Chicago, IL",
+      "Chico, CA",
+      "Chicopee, MA",
+      "Chino, CA",
+      "Chino Hills, CA",
+      "Chula Vista, CA",
+      "Cicero, IL",
+      "Cincinnati, OH",
+      "Citrus Heights, CA",
+      "Clarksville, TN",
+      "Clearwater, FL",
+      "Cleveland, TN",
+      "Cleveland, OH",
+      "Cleveland Heights, OH",
+      "Clifton, NJ",
+      "Clovis, CA",
+      "Clovis, NM",
+      "Coachella, CA",
+      "Coconut Creek, FL",
+      "Coeur d'Alene, ID",
+      "College Station, TX",
+      "Collierville, TN",
+      "Colorado Springs, CO",
+      "Colton, CA",
+      "Columbia, MO",
+      "Columbia, SC",
+      "Columbus, IN",
+      "Columbus, OH",
+      "Columbus, GA",
+      "Commerce City, CO",
+      "Compton, CA",
+      "Concord, NH",
+      "Concord, NC",
+      "Concord, CA",
+      "Conroe, TX",
+      "Conway, AR",
+      "Coon Rapids, MN",
+      "Coppell, TX",
+      "Coral Gables, FL",
+      "Coral Springs, FL",
+      "Corona, CA",
+      "Corpus Christi, TX",
+      "Corvallis, OR",
+      "Costa Mesa, CA",
+      "Council Bluffs, IA",
+      "Covina, CA",
+      "Covington, KY",
+      "Cranston, RI",
+      "Crystal Lake, IL",
+      "Culver City, CA",
+      "Cupertino, CA",
+      "Cutler Bay, FL",
+      "Cuyahoga Falls, OH",
+      "Cypress, CA",
+      "Dallas, TX",
+      "Daly City, CA",
+      "Danbury, CT",
+      "Danville, VA",
+      "Danville, CA",
+      "Davenport, IA",
+      "Davie, FL",
+      "Davis, CA",
+      "Dayton, OH",
+      "Daytona Beach, FL",
+      "DeKalb, IL",
+      "DeSoto, TX",
+      "Dearborn, MI",
+      "Dearborn Heights, MI",
+      "Decatur, AL",
+      "Decatur, IL",
+      "Deerfield Beach, FL",
+      "Delano, CA",
+      "Delray Beach, FL",
+      "Deltona, FL",
+      "Denton, TX",
+      "Denver, CO",
+      "Des Moines, IA",
+      "Des Plaines, IL",
+      "Detroit, MI",
+      "Diamond Bar, CA",
+      "Doral, FL",
+      "Dothan, AL",
+      "Dover, DE",
+      "Downers Grove, IL",
+      "Downey, CA",
+      "Draper, UT",
+      "Dublin, CA",
+      "Dublin, OH",
+      "Dubuque, IA",
+      "Duluth, MN",
+      "Duncanville, TX",
+      "Dunwoody, GA",
+      "Durham, NC",
+      "Eagan, MN",
+      "East Lansing, MI",
+      "East Orange, NJ",
+      "East Providence, RI",
+      "Eastvale, CA",
+      "Eau Claire, WI",
+      "Eden Prairie, MN",
+      "Edina, MN",
+      "Edinburg, TX",
+      "Edmond, OK",
+      "Edmonds, WA",
+      "El Cajon, CA",
+      "El Centro, CA",
+      "El Monte, CA",
+      "El Paso, TX",
+      "Elgin, IL",
+      "Elizabeth, NJ",
+      "Elk Grove, CA",
+      "Elkhart, IN",
+      "Elmhurst, IL",
+      "Elyria, OH",
+      "Encinitas, CA",
+      "Enid, OK",
+      "Erie, PA",
+      "Escondido, CA",
+      "Euclid, OH",
+      "Eugene, OR",
+      "Euless, TX",
+      "Evanston, IL",
+      "Evansville, IN",
+      "Everett, MA",
+      "Everett, WA",
+      "Fairfield, CA",
+      "Fairfield, OH",
+      "Fall River, MA",
+      "Fargo, ND",
+      "Farmington, NM",
+      "Farmington Hills, MI",
+      "Fayetteville, NC",
+      "Fayetteville, AR",
+      "Federal Way, WA",
+      "Findlay, OH",
+      "Fishers, IN",
+      "Fitchburg, MA",
+      "Flagstaff, AZ",
+      "Flint, MI",
+      "Florence, AL",
+      "Florence, SC",
+      "Florissant, MO",
+      "Flower Mound, TX",
+      "Folsom, CA",
+      "Fond du Lac, WI",
+      "Fontana, CA",
+      "Fort Collins, CO",
+      "Fort Lauderdale, FL",
+      "Fort Myers, FL",
+      "Fort Pierce, FL",
+      "Fort Smith, AR",
+      "Fort Wayne, IN",
+      "Fort Worth, TX",
+      "Fountain Valley, CA",
+      "Franklin, TN",
+      "Frederick, MD",
+      "Freeport, NY",
+      "Fremont, CA",
+      "Fresno, CA",
+      "Friendswood, TX",
+      "Frisco, TX",
+      "Fullerton, CA",
+      "Gainesville, FL",
+      "Gaithersburg, MD",
+      "Galveston, TX",
+      "Garden Grove, CA",
+      "Gardena, CA",
+      "Garland, TX",
+      "Gary, IN",
+      "Gastonia, NC",
+      "Georgetown, TX",
+      "Germantown, TN",
+      "Gilbert, AZ",
+      "Gilroy, CA",
+      "Glendale, CA",
+      "Glendale, AZ",
+      "Glendora, CA",
+      "Glenview, IL",
+      "Goodyear, AZ",
+      "Goose Creek, SC",
+      "Grand Forks, ND",
+      "Grand Island, NE",
+      "Grand Junction, CO",
+      "Grand Prairie, TX",
+      "Grand Rapids, MI",
+      "Grapevine, TX",
+      "Great Falls, MT",
+      "Greeley, CO",
+      "Green Bay, WI",
+      "Greenacres, FL",
+      "Greenfield, WI",
+      "Greensboro, NC",
+      "Greenville, SC",
+      "Greenville, NC",
+      "Greenwood, IN",
+      "Gresham, OR",
+      "Grove City, OH",
+      "Gulfport, MS",
+      "Hackensack, NJ",
+      "Hagerstown, MD",
+      "Hallandale Beach, FL",
+      "Haltom City, TX",
+      "Hamilton, OH",
+      "Hammond, IN",
+      "Hampton, VA",
+      "Hanford, CA",
+      "Hanover Park, IL",
+      "Harlingen, TX",
+      "Harrisburg, PA",
+      "Harrisonburg, VA",
+      "Hartford, CT",
+      "Hattiesburg, MS",
+      "Haverhill, MA",
+      "Hawthorne, CA",
+      "Hayward, CA",
+      "Helena, MT",
+      "Hemet, CA",
+      "Hempstead, NY",
+      "Henderson, NV",
+      "Hendersonville, TN",
+      "Hesperia, CA",
+      "Hialeah, FL",
+      "Hickory, NC",
+      "High Point, NC",
+      "Highland, CA",
+      "Hillsboro, OR",
+      "Hilton Head Island, SC",
+      "Hoboken, NJ",
+      "Hoffman Estates, IL",
+      "Hollywood, FL",
+      "Holyoke, MA",
+      "Homestead, FL",
+      "Honolulu, HI",
+      "Hoover, AL",
+      "Houston, TX",
+      "Huber Heights, OH",
+      "Huntersville, NC",
+      "Huntington, WV",
+      "Huntington Beach, CA",
+      "Huntington Park, CA",
+      "Huntsville, TX",
+      "Huntsville, AL",
+      "Hurst, TX",
+      "Hutchinson, KS",
+      "Idaho Falls, ID",
+      "Independence, MO",
+      "Indianapolis, IN",
+      "Indio, CA",
+      "Inglewood, CA",
+      "Iowa City, IA",
+      "Irvine, CA",
+      "Irving, TX",
+      "Jackson, TN",
+      "Jackson, MS",
+      "Jacksonville, FL",
+      "Jacksonville, NC",
+      "Janesville, WI",
+      "Jefferson City, MO",
+      "Jeffersonville, IN",
+      "Jersey City, NJ",
+      "Johns Creek, GA",
+      "Johnson City, TN",
+      "Joliet, IL",
+      "Jonesboro, AR",
+      "Joplin, MO",
+      "Jupiter, FL",
+      "Jurupa Valley, CA",
+      "Kalamazoo, MI",
+      "Kannapolis, NC",
+      "Kansas City, MO",
+      "Kansas City, KS",
+      "Kearny, NJ",
+      "Keizer, OR",
+      "Keller, TX",
+      "Kenner, LA",
+      "Kennewick, WA",
+      "Kenosha, WI",
+      "Kent, WA",
+      "Kentwood, MI",
+      "Kettering, OH",
+      "Killeen, TX",
+      "Kingsport, TN",
+      "Kirkland, WA",
+      "Kissimmee, FL",
+      "Knoxville, TN",
+      "Kokomo, IN",
+      "La Crosse, WI",
+      "La Habra, CA",
+      "La Mesa, CA",
+      "La Mirada, CA",
+      "La Puente, CA",
+      "La Quinta, CA",
+      "Lacey, WA",
+      "Lafayette, LA",
+      "Lafayette, IN",
+      "Laguna Niguel, CA",
+      "Lake Charles, LA",
+      "Lake Elsinore, CA",
+      "Lake Forest, CA",
+      "Lake Havasu City, AZ",
+      "Lake Oswego, OR",
+      "Lakeland, FL",
+      "Lakeville, MN",
+      "Lakewood, OH",
+      "Lakewood, CO",
+      "Lakewood, WA",
+      "Lakewood, CA",
+      "Lancaster, CA",
+      "Lancaster, PA",
+      "Lancaster, TX",
+      "Lancaster, OH",
+      "Lansing, MI",
+      "Laredo, TX",
+      "Largo, FL",
+      "Las Cruces, NM",
+      "Las Vegas, NV",
+      "Lauderhill, FL",
+      "Lawrence, KS",
+      "Lawrence, IN",
+      "Lawrence, MA",
+      "Lawton, OK",
+      "Layton, UT",
+      "League City, TX",
+      "Lee's Summit, MO",
+      "Leesburg, VA",
+      "Lehi, UT",
+      "Lenexa, KS",
+      "Leominster, MA",
+      "Lewisville, TX",
+      "Lexington-Fayette, KY",
+      "Lima, OH",
+      "Lincoln, CA",
+      "Lincoln, NE",
+      "Lincoln Park, MI",
+      "Linden, NJ",
+      "Little Rock, AR",
+      "Littleton, CO",
+      "Livermore, CA",
+      "Livonia, MI",
+      "Lodi, CA",
+      "Logan, UT",
+      "Lombard, IL",
+      "Lompoc, CA",
+      "Long Beach, CA",
+      "Longmont, CO",
+      "Longview, TX",
+      "Lorain, OH",
+      "Los Angeles, CA",
+      "Louisville/Jefferson County, KY",
+      "Loveland, CO",
+      "Lowell, MA",
+      "Lubbock, TX",
+      "Lynchburg, VA",
+      "Lynn, MA",
+      "Lynwood, CA",
+      "Macon, GA",
+      "Madera, CA",
+      "Madison, AL",
+      "Madison, WI",
+      "Malden, MA",
+      "Manassas, VA",
+      "Manchester, NH",
+      "Manhattan, KS",
+      "Mankato, MN",
+      "Mansfield, TX",
+      "Mansfield, OH",
+      "Manteca, CA",
+      "Maple Grove, MN",
+      "Maplewood, MN",
+      "Marana, AZ",
+      "Margate, FL",
+      "Maricopa, AZ",
+      "Marietta, GA",
+      "Marlborough, MA",
+      "Martinez, CA",
+      "Marysville, WA",
+      "McAllen, TX",
+      "McKinney, TX",
+      "Medford, OR",
+      "Medford, MA",
+      "Melbourne, FL",
+      "Memphis, TN",
+      "Menifee, CA",
+      "Mentor, OH",
+      "Merced, CA",
+      "Meriden, CT",
+      "Meridian, MS",
+      "Meridian, ID",
+      "Mesa, AZ",
+      "Mesquite, TX",
+      "Methuen, MA",
+      "Miami, FL",
+      "Miami Beach, FL",
+      "Miami Gardens, FL",
+      "Middletown, OH",
+      "Middletown, CT",
+      "Midland, MI",
+      "Midland, TX",
+      "Midwest City, OK",
+      "Milford, CT",
+      "Milpitas, CA",
+      "Milwaukee, WI",
+      "Minneapolis, MN",
+      "Minnetonka, MN",
+      "Minot, ND",
+      "Miramar, FL",
+      "Mishawaka, IN",
+      "Mission, TX",
+      "Mission Viejo, CA",
+      "Missoula, MT",
+      "Missouri City, TX",
+      "Mobile, AL",
+      "Modesto, CA",
+      "Moline, IL",
+      "Monroe, LA",
+      "Monrovia, CA",
+      "Montclair, CA",
+      "Montebello, CA",
+      "Monterey Park, CA",
+      "Montgomery, AL",
+      "Moore, OK",
+      "Moorhead, MN",
+      "Moreno Valley, CA",
+      "Morgan Hill, CA",
+      "Mount Pleasant, SC",
+      "Mount Prospect, IL",
+      "Mount Vernon, NY",
+      "Mountain View, CA",
+      "Muncie, IN",
+      "Murfreesboro, TN",
+      "Murray, UT",
+      "Murrieta, CA",
+      "Muskegon, MI",
+      "Muskogee, OK",
+      "Nampa, ID",
+      "Napa, CA",
+      "Naperville, IL",
+      "Nashua, NH",
+      "Nashville-Davidson, TN",
+      "National City, CA",
+      "New Bedford, MA",
+      "New Berlin, WI",
+      "New Braunfels, TX",
+      "New Britain, CT",
+      "New Brunswick, NJ",
+      "New Haven, CT",
+      "New Orleans, LA",
+      "New Rochelle, NY",
+      "New York, NY",
+      "Newark, CA",
+      "Newark, NJ",
+      "Newark, OH",
+      "Newport Beach, CA",
+      "Newport News, VA",
+      "Newton, MA",
+      "Niagara Falls, NY",
+      "Noblesville, IN",
+      "Norfolk, VA",
+      "Normal, IL",
+      "Norman, OK",
+      "North Charleston, SC",
+      "North Las Vegas, NV",
+      "North Lauderdale, FL",
+      "North Little Rock, AR",
+      "North Miami, FL",
+      "North Miami Beach, FL",
+      "North Port, FL",
+      "North Richland Hills, TX",
+      "Northglenn, CO",
+      "Norwalk, CA",
+      "Norwalk, CT",
+      "Norwich, CT",
+      "Novato, CA",
+      "Novi, MI",
+      "O'Fallon, MO",
+      "Oak Lawn, IL",
+      "Oak Park, IL",
+      "Oakland, CA",
+      "Oakland Park, FL",
+      "Oakley, CA",
+      "Ocala, FL",
+      "Oceanside, CA",
+      "Ocoee, FL",
+      "Odessa, TX",
+      "Ogden, UT",
+      "Oklahoma City, OK",
+      "Olathe, KS",
+      "Olympia, WA",
+      "Omaha, NE",
+      "Ontario, CA",
+      "Orange, CA",
+      "Orem, UT",
+      "Orland Park, IL",
+      "Orlando, FL",
+      "Ormond Beach, FL",
+      "Oro Valley, AZ",
+      "Oshkosh, WI",
+      "Overland Park, KS",
+      "Owensboro, KY",
+      "Oxnard, CA",
+      "Pacifica, CA",
+      "Palatine, IL",
+      "Palm Bay, FL",
+      "Palm Beach Gardens, FL",
+      "Palm Coast, FL",
+      "Palm Desert, CA",
+      "Palm Springs, CA",
+      "Palmdale, CA",
+      "Palo Alto, CA",
+      "Panama City, FL",
+      "Paramount, CA",
+      "Park Ridge, IL",
+      "Parker, CO",
+      "Parma, OH",
+      "Pasadena, CA",
+      "Pasadena, TX",
+      "Pasco, WA",
+      "Passaic, NJ",
+      "Paterson, NJ",
+      "Pawtucket, RI",
+      "Peabody, MA",
+      "Peachtree Corners, GA",
+      "Pearland, TX",
+      "Pembroke Pines, FL",
+      "Pensacola, FL",
+      "Peoria, AZ",
+      "Peoria, IL",
+      "Perris, CA",
+      "Perth Amboy, NJ",
+      "Petaluma, CA",
+      "Pflugerville, TX",
+      "Pharr, TX",
+      "Phenix City, AL",
+      "Philadelphia, PA",
+      "Phoenix, AZ",
+      "Pico Rivera, CA",
+      "Pine Bluff, AR",
+      "Pinellas Park, FL",
+      "Pittsburg, CA",
+      "Pittsburgh, PA",
+      "Pittsfield, MA",
+      "Placentia, CA",
+      "Plainfield, IL",
+      "Plainfield, NJ",
+      "Plano, TX",
+      "Plantation, FL",
+      "Pleasanton, CA",
+      "Plymouth, MN",
+      "Pocatello, ID",
+      "Pomona, CA",
+      "Pompano Beach, FL",
+      "Pontiac, MI",
+      "Port Arthur, TX",
+      "Port Orange, FL",
+      "Port St. Lucie, FL",
+      "Portage, MI",
+      "Porterville, CA",
+      "Portland, OR",
+      "Portland, ME",
+      "Portsmouth, VA",
+      "Poway, CA",
+      "Prescott, AZ",
+      "Prescott Valley, AZ",
+      "Providence, RI",
+      "Provo, UT",
+      "Pueblo, CO",
+      "Puyallup, WA",
+      "Quincy, IL",
+      "Quincy, MA",
+      "Racine, WI",
+      "Raleigh, NC",
+      "Rancho Cordova, CA",
+      "Rancho Cucamonga, CA",
+      "Rancho Palos Verdes, CA",
+      "Rancho Santa Margarita, CA",
+      "Rapid City, SD",
+      "Reading, PA",
+      "Redding, CA",
+      "Redlands, CA",
+      "Redmond, WA",
+      "Redondo Beach, CA",
+      "Redwood City, CA",
+      "Reno, NV",
+      "Renton, WA",
+      "Revere, MA",
+      "Rialto, CA",
+      "Richardson, TX",
+      "Richland, WA",
+      "Richmond, CA",
+      "Richmond, VA",
+      "Rio Rancho, NM",
+      "Riverside, CA",
+      "Riverton, UT",
+      "Roanoke, VA",
+      "Rochester, MN",
+      "Rochester, NY",
+      "Rochester Hills, MI",
+      "Rock Hill, SC",
+      "Rock Island, IL",
+      "Rockford, IL",
+      "Rocklin, CA",
+      "Rockville, MD",
+      "Rockwall, TX",
+      "Rocky Mount, NC",
+      "Rogers, AR",
+      "Rohnert Park, CA",
+      "Romeoville, IL",
+      "Rosemead, CA",
+      "Roseville, CA",
+      "Roseville, MI",
+      "Roswell, NM",
+      "Roswell, GA",
+      "Round Rock, TX",
+      "Rowlett, TX",
+      "Roy, UT",
+      "Royal Oak, MI",
+      "Sacramento, CA",
+      "Saginaw, MI",
+      "Salem, OR",
+      "Salem, MA",
+      "Salina, KS",
+      "Salinas, CA",
+      "Salt Lake City, UT",
+      "Sammamish, WA",
+      "San Angelo, TX",
+      "San Antonio, TX",
+      "San Bernardino, CA",
+      "San Bruno, CA",
+      "San Buenaventura (Ventura), CA",
+      "San Clemente, CA",
+      "San Diego, CA",
+      "San Francisco, CA",
+      "San Gabriel, CA",
+      "San Jacinto, CA",
+      "San Jose, CA",
+      "San Leandro, CA",
+      "San Luis Obispo, CA",
+      "San Marcos, CA",
+      "San Marcos, TX",
+      "San Mateo, CA",
+      "San Rafael, CA",
+      "San Ramon, CA",
+      "Sandy, UT",
+      "Sandy Springs, GA",
+      "Sanford, FL",
+      "Santa Ana, CA",
+      "Santa Barbara, CA",
+      "Santa Clara, CA",
+      "Santa Clarita, CA",
+      "Santa Cruz, CA",
+      "Santa Fe, NM",
+      "Santa Maria, CA",
+      "Santa Monica, CA",
+      "Santa Rosa, CA",
+      "Santee, CA",
+      "Sarasota, FL",
+      "Savannah, GA",
+      "Sayreville, NJ",
+      "Schaumburg, IL",
+      "Schenectady, NY",
+      "Scottsdale, AZ",
+      "Scranton, PA",
+      "Seattle, WA",
+      "Shakopee, MN",
+      "Shawnee, KS",
+      "Sheboygan, WI",
+      "Shelton, CT",
+      "Sherman, TX",
+      "Shoreline, WA",
+      "Shreveport, LA",
+      "Sierra Vista, AZ",
+      "Simi Valley, CA",
+      "Sioux City, IA",
+      "Sioux Falls, SD",
+      "Skokie, IL",
+      "Smyrna, TN",
+      "Smyrna, GA",
+      "Somerville, MA",
+      "South Bend, IN",
+      "South Gate, CA",
+      "South Jordan, UT",
+      "South San Francisco, CA",
+      "Southaven, MS",
+      "Southfield, MI",
+      "Spanish Fork, UT",
+      "Sparks, NV",
+      "Spartanburg, SC",
+      "Spokane, WA",
+      "Spokane Valley, WA",
+      "Springdale, AR",
+      "Springfield, OH",
+      "Springfield, OR",
+      "Springfield, IL",
+      "Springfield, MA",
+      "Springfield, MO",
+      "St. Charles, MO",
+      "St. Clair Shores, MI",
+      "St. Cloud, FL",
+      "St. Cloud, MN",
+      "St. George, UT",
+      "St. Joseph, MO",
+      "St. Louis, MO",
+      "St. Louis Park, MN",
+      "St. Paul, MN",
+      "St. Peters, MO",
+      "St. Petersburg, FL",
+      "Stamford, CT",
+      "Stanton, CA",
+      "State College, PA",
+      "Sterling Heights, MI",
+      "Stillwater, OK",
+      "Stockton, CA",
+      "Streamwood, IL",
+      "Strongsville, OH",
+      "Suffolk, VA",
+      "Sugar Land, TX",
+      "Summerville, SC",
+      "Sumter, SC",
+      "Sunnyvale, CA",
+      "Sunrise, FL",
+      "Surprise, AZ",
+      "Syracuse, NY",
+      "Tacoma, WA",
+      "Tallahassee, FL",
+      "Tamarac, FL",
+      "Tampa, FL",
+      "Taunton, MA",
+      "Taylor, MI",
+      "Taylorsville, UT",
+      "Temecula, CA",
+      "Tempe, AZ",
+      "Temple, TX",
+      "Terre Haute, IN",
+      "Texarkana, TX",
+      "Texas City, TX",
+      "The Colony, TX",
+      "Thornton, CO",
+      "Thousand Oaks, CA",
+      "Tigard, OR",
+      "Tinley Park, IL",
+      "Titusville, FL",
+      "Toledo, OH",
+      "Topeka, KS",
+      "Torrance, CA",
+      "Tracy, CA",
+      "Trenton, NJ",
+      "Troy, NY",
+      "Troy, MI",
+      "Tucson, AZ",
+      "Tulare, CA",
+      "Tulsa, OK",
+      "Turlock, CA",
+      "Tuscaloosa, AL",
+      "Tustin, CA",
+      "Twin Falls, ID",
+      "Tyler, TX",
+      "Union City, CA",
+      "Union City, NJ",
+      "Upland, CA",
+      "Urbana, IL",
+      "Urbandale, IA",
+      "Utica, NY",
+      "Vacaville, CA",
+      "Valdosta, GA",
+      "Vallejo, CA",
+      "Valley Stream, NY",
+      "Vancouver, WA",
+      "Victoria, TX",
+      "Victorville, CA",
+      "Vineland, NJ",
+      "Virginia Beach, VA",
+      "Visalia, CA",
+      "Vista, CA",
+      "Waco, TX",
+      "Walnut Creek, CA",
+      "Waltham, MA",
+      "Warner Robins, GA",
+      "Warren, OH",
+      "Warren, MI",
+      "Warwick, RI",
+      "Washington, DC",
+      "Waterbury, CT",
+      "Waterloo, IA",
+      "Watsonville, CA",
+      "Waukegan, IL",
+      "Waukesha, WI",
+      "Wausau, WI",
+      "Wauwatosa, WI",
+      "Wellington, FL",
+      "Weslaco, TX",
+      "West Allis, WI",
+      "West Covina, CA",
+      "West Des Moines, IA",
+      "West Haven, CT",
+      "West Jordan, UT",
+      "West New York, NJ",
+      "West Palm Beach, FL",
+      "West Sacramento, CA",
+      "West Valley City, UT",
+      "Westerville, OH",
+      "Westfield, MA",
+      "Westland, MI",
+      "Westminster, CO",
+      "Westminster, CA",
+      "Weston, FL",
+      "Weymouth Town, MA",
+      "Wheaton, IL",
+      "Wheeling, IL",
+      "White Plains, NY",
+      "Whittier, CA",
+      "Wichita, KS",
+      "Wichita Falls, TX",
+      "Wilkes-Barre, PA",
+      "Wilmington, DE",
+      "Wilmington, NC",
+      "Wilson, NC",
+      "Winston-Salem, NC",
+      "Winter Garden, FL",
+      "Woburn, MA",
+      "Woodbury, MN",
+      "Woodland, CA",
+      "Woonsocket, RI",
+      "Worcester, MA",
+      "Wylie, TX",
+      "Wyoming, MI",
+      "Yakima, WA",
+      "Yonkers, NY",
+      "Yorba Linda, CA",
+      "York, PA",
+      "Youngstown, OH",
+      "Yuba City, CA",
+      "Yucaipa, CA",
+      "Yuma, AZ"
+    ]
+