Skip to main content
Smart Metering Innovations

Choosing a Smart Meter Upgrade Path Without Mistaking Data Volume for Insight

Smart meters keep getting smarter—or at least that's what the spec sheets say. Every year brings higher sampling rates, new communication protocols, and dashboards that promise to reveal 'hidden patterns' in your energy data. But if you've been in this game long enough, you know the dirty secret: a meter that sends data every minute instead of every hour is not automatically a better meter. It's just a louder one. The real challenge isn't collecting more points. It's choosing an upgrade path that actually improves operational decisions—without drowning your team in noise, vendor lock-in, or cost overruns. This article is a field guide for utility engineers, facility managers, and energy consultants who need to separate genuine insight from mere data volume. We'll cover what works, what fails, and when to walk away from the upgrade altogether.

Smart meters keep getting smarter—or at least that's what the spec sheets say. Every year brings higher sampling rates, new communication protocols, and dashboards that promise to reveal 'hidden patterns' in your energy data. But if you've been in this game long enough, you know the dirty secret: a meter that sends data every minute instead of every hour is not automatically a better meter. It's just a louder one.

The real challenge isn't collecting more points. It's choosing an upgrade path that actually improves operational decisions—without drowning your team in noise, vendor lock-in, or cost overruns. This article is a field guide for utility engineers, facility managers, and energy consultants who need to separate genuine insight from mere data volume. We'll cover what works, what fails, and when to walk away from the upgrade altogether.

Where This Upgrade Decision Actually Lives

Utility operations teams and the pressure to modernize

The upgrade decision doesn't live in a strategy deck. It lives in the cluttered corner of a network operations center where someone's phone buzzes at 2:47 AM with a voltage sag alarm that turns out to be a transformer tap changer hunting—not a grid event. I've sat in those rooms. The ops lead has three monitors propped on stacked binders, one of them showing a dashboard that polls meters every fifteen minutes. The vendor sales rep promised "real-time granularity" last quarter. What the team actually got was a data lake that nobody has time to query. That's the real workplace: budget holders who approved the upgrade based on a pilot with twelve meters in a climate-controlled lab, now staring at production data from twelve thousand meters spread across a flood plain and two mountain ridges. The pressure to modernize comes from above—board-level sustainability targets, regulatory filings—but the cost shows up in ops. Overtime. Missed alarms. A creeping sense that the new data is mostly noise.

The catch is that "insight" and "volume" get swapped constantly. A facility manager for a campus with forty buildings once told me, "I need better data." What he meant was he needed a single alert when a submeter tripped, not 400 daily CSV exports. Wrong order. The upgrade path they almost signed would have doubled their data ingestion pipeline—more servers, more ETL jobs, more dashboard refreshes. They skipped the question nobody asks: What decision changes when we see this faster? Most teams can't answer. They buy the pipe before they know what water they're drinking.

"We upgraded to five-minute intervals and immediately lost the ability to spot a meter that had stopped transmitting. Too much green on the screen."

— Senior engineer, municipal water & power utility, after an 18-month deployment

Facility managers caught between budget cycles and vendor promises

That engineer's story isn't rare. The upgrade decision actually lives in fiscal-year anxiety—the knowledge that if you don't spend this year's capital allocation, you lose it. So facility managers buy the "advanced" metering package with hourly reads, phase-level analytics, and power-quality waveforms. Then the data arrives and nobody wrote the business logic to interpret a waveform. The meters produce 40 MB per building per day. The team's analyst left six months ago. What breaks first is trust. The CFO sees a line item for "meter data platform" and asks what it's producing. The honest answer—"more rows"—doesn't survive the next budget cycle. I have watched teams revert to manually reading the old pulse-output meters because those gave them one number they actually used: total kWh per shift. That hurts. It's not Luddism; it's survival.

The gap between pilot projects and production-scale deployments is where most upgrade paths collapse. A pilot runs on clean-labeled test assets. Production hits the meter in the boiler room that was installed in 1998, wired backward, and shares a conduit with a VFD that injects harmonics every time the chiller starts. That seam blows out. The vendor says "configuration issue." The ops team says "we told you." And the upgrade decision—the one that felt so rational six months ago—turns into a maintenance sink. One facility manager I spoke with estimated that 60% of their "smart meter" budget went to chasing bad data, not using good data. The upgrade path they should have chosen was smaller, slower, and honest about what they would actually ignore.

Quick reality check—most teams skip the hardest step: deciding what data not to collect. The vendor's default settings log everything. That's not insight. That's deferred pain. The upgrade decision lives in the willingness to say "we won't record voltage angles for those feeders" or "quarter-hour data is sufficient for this tenant." That decision is uncomfortable. It requires knowing what you're optimizing for. Most teams don't know until they've burned a year of storage costs and three engineer-months on a dashboard nobody opens. The path forward starts not with more data, but with a single, honest question: what pattern, if we missed it, would cost us a day of production? Start there. Collect only that. Add nothing else until the first pattern actually drives a decision. That's where the upgrade decision actually lives—in the gap between what you could measure and what you will act on.

Foundations People Routinely Confuse

Interval granularity vs. actionable insight

I once watched a utility team celebrate rolling out 15-minute meter reads across 40,000 endpoints. Six months later they couldn't name a single decision those fine-grained intervals had actually changed. The data looked beautiful on dashboards—smooth hourly curves, no gaps—but the operations team still ran on daily load profiles. That gap is where budgets bleed.

The seduction is obvious: more data points must mean better visibility. Wrong order. A 15-minute interval tells you when a commercial freezer kicks on. A 60-minute interval tells you the same thing if you know the building's thermal mass. The extra resolution only pays off when you have an action that needs that window—peak shaving dispatch, sub-hourly demand response, or grid-edge voltage control. Without those use cases, you're funding storage, not insight.

Quick reality check—most distribution operators I talk to still use 4-hour settlement windows. They don't need 96 daily readings to settle a bill. They need three or four readings that match the tariff structure. Pushing finer granularity before you have the tariff or the automated response loop is cargo-cult metering. The pitfall: you train everyone to look at pretty charts instead of fixing the business logic that actually reduces peak costs.

Latency vs. relevance in operational response

Fast data sounds like a universal good. It's not. A meter that reports every 15 minutes but takes 12 hours to appear in the billing system has worse operational relevance than a once-daily read that lands at 6 AM sharp with no lag. The metric that matters is time-to-decision, not time-to-screen.

Consider a voltage sag event: you get a sub-second notification from the meter, but the engineering team reviews it weekly. That fast pipe is wasted. Conversely, a daily load report that hits the planner's inbox at 8 AM every Monday lets them schedule transformer swaps before Tuesday's peak. That's timely data. Speed without a consumption cadence is a performance exhaust—you see it, then forget it.

Field note: water plans crack at handoff.

Most teams skip this: ask yourself what decision deadline the data serves. If the answer is "end-of-month billing review," a 24-hour latency is fine. If it's "curtail this feeder within the next 5 minutes," then sub-second matters. Confusing those two contexts is why smart meter rollouts often kill staff productivity—they chase real-time feeds for monthly processes. The catch is that vendors rarely sell "slow enough for your actual workflow." They sell maximum speed. You have to dial it back yourself.

Precision vs. accuracy in measurement and billing

Precision is how many decimal places the meter shows. Accuracy is whether those digits are right. A meter that reports 100.000 kWh to three decimals is precise. If the CT clamp is installed backwards, it's also useless.

I have seen a utility reject a meter because it displayed to 0.001 kWh instead of 0.0001 kWh. They were fixated on decimal depth while their actual billing errors came from transformer losses calculated with outdated line constants. That hurts. You can have a 0.1% accurate meter sitting behind a 5% loss assumption in the billing engine, and nobody questions the assumption.

'The industry spent a decade arguing over measurement class 0.2 versus 0.5 while real revenue leakage sat in unvalidated data pathways.'

— senior metering engineer, regional co-op, 2023

Accuracy is a system property, not a meter spec. The meter might be perfect, but if the communications gateway truncates the last digit, or the head-end system rounds mid-calculation, the precision evaporates. The pragmatic path: validate the entire chain from sensor to invoice for a sample of 100 sites before you commit to a hardware class. Precision without accuracy is theatre. And theatre doesn't stop regulator penalties.

Patterns That Actually Work in the Field

Adaptive polling: asking for data when you need it

Most teams start with fixed-interval polling—every 15 minutes, every hour, like clockwork. That sounds clean until your network chokes at midnight because every meter decided to phone home simultaneously. I have seen a mid-sized deployment grind to a halt because 8,000 smart meters sent 15-minute interval data over a narrowband IoT link built for exception-only traffic. The fix was not more bandwidth. It was adaptive polling: the meter reports on a schedule only when nothing unusual happens, then triggers immediate high-frequency bursts when consumption spikes or voltage sags. The trade-off is real—you trade predictable network load for a more complex state machine on the meter side. A utility in the Nordics used this to reduce daily data volume by 62% while catching 94% of the anomalies that actually mattered to their grid team. That last 6%? They decided it was noise, and they were right.

Adaptive polling lives or dies on its thresholds. Set them too tight and the meter screams every time a kettle turns on. Too loose and you miss the transformer overload that costs a substation. The trick is starting with operational bounds, not statistical curiosities—voltage outside ±5% of nominal, not a moving standard deviation of reactive power. I rebuilt a polling scheme once where the ops team drew their thresholds on a paper printout of last month's events. Ugly. Worked. The catch is that many vendors bury these parameters behind admin menus labelled "Expert—don't touch." You will need to push back. Ask for the raw knobs.

'We were collecting 40 million data points a day and still missed the breaker trip. Adaptive polling forced us to ask what we actually needed to see—not what we could store.'

— Systems lead at a regional distribution co-op, after their third polling redesign

Edge-based anomaly detection before the cloud

Sending raw waveforms to the cloud is cargo-cult analytics. It feels thorough but costs you latency and storage for data you will never query. The pattern that actually works in the field is lightweight edge inference: a 50-line rule engine or a tiny decision tree running on the meter's microcontroller. One team I worked with deployed a voltage sag classifier that ran in under 2 KB of RAM. It flagged only three event types—sag, swell, interruption—and ignored everything else. The cloud received maybe 200 records per meter per month instead of 4,000. That's not a minor saving; it's the difference between a $200/month data bill and one you can expense without a procurement review.

What usually breaks first is the firmware update pipeline. Edge models drift because the grid changes—new solar installations, seasonal load shifts, aging transformers. If you can't push revised detection rules to 10,000 meters in under a day, your edge analytics will slowly go blind. One utility wrote their detection logic as plain-text Lua scripts that the central system could broadcast to every meter in a batch. Crude but effective. The alternative—bricking a meter during a failed OTA update—is not theoretical. I have sat through the post-mortem. The lesson is: keep the edge logic simple enough to audit in one sitting, and test the update rollback path before you need it.

Hybrid architectures that keep local control alive

Pure cloud architectures fail when the network drops. Pure local architectures fail when you need aggregate insight. Hybrid is the obvious middle—obvious, but rarely built well. The proven pattern is a local gateway that buffers time-series data for up to 72 hours, runs its own rule engine for load-shedding commands, and only syncs to the cloud during off-peak windows. One agricultural water district used this setup across 400 pump meters spread over 80 square kilometres. The cloud went down for three days after a fibre cut. The gates still opened and closed on schedule because the gateways held the irrigation schedule locally. The cloud sync replayed the missing data in a single burst when the link returned. No lost events, no manual override.

The pitfall is treating the gateway as a dumb cache. It's not. It must understand priority—which alarms to forward immediately (fire, flood, voltage collapse) versus which can wait until morning (consumption drift, temperature warnings). I have seen a gateway fill its storage with 40,000 "door open" alerts from substation cabinets while the transformer oil temperature alarm never made it out. That stings. Design your hybrid architecture around escalation rules, not throughput. And never assume the cloud sync is reliable. Test with a week-long disconnect scenario before you deploy. The teams that skip that step usually find out during a real outage—and that's the wrong classroom.

Anti-Patterns That Make Teams Revert

Dashboard overload and alert fatigue

The meter data pours in. Every fifteen minutes, another batch of voltage dips, current spikes, phase angles. Your operations center lights up like a casino floor—green tiles turning amber, amber to red. Feels productive. Feels like control. What usually breaks first is the human sitting in front of those screens. I have watched teams build dashboards with seventy-three live tiles, each one screaming for attention. Within six weeks, nobody looks at any of them. The alerts get dismissed before they render. That critical threshold warning? Buried under forty-three noise events from the same substation. The catch is this: data volume feels like progress, but insight comes from curated signal. A utility I worked with spent $340,000 on a real-time visualization platform. Six months later, the engineering manager admitted they only used two views—daily consumption and one outage log. The rest was just expensive wallpaper.

Odd bit about conservation: the dull step fails first.

Vendor lock-in through proprietary protocols

You sign a contract for smart meters that speak a closed language. The sales pitch promises "straightforward setup"—that word again. Then you discover the head-end system won't talk to your existing billing engine without a custom gateway. Replacement parts? Only from them. Firmware updates? Locked behind a yearly subscription that triples after year two. That is the anti-pattern that makes CFOs order a rollback. I have seen a mid-sized municipality abandon a perfectly functional AMI deployment because the vendor changed the API spec without notice—twelve thousand meters suddenly orphaned. The trade-off is brutal: proprietary systems often deliver better initial performance, but the long-term cost of switching becomes a barrier that eventually collapses under its own weight. Teams revert to manual meter reading because the alternative is paying ransoms to a single supplier.

Most teams skip this: calculating the exit price before they start. They budget for hardware and installation, not for the eventual divorce. When the proprietary vendor raises maintenance fees by forty percent, the upgrade path they sold you becomes a trap. One rhetorical question worth asking—would you buy a car whose engine could only be serviced by the dealership's cousin? Yet utilities sign those contracts every quarter. The anti-pattern here isn't technology; it's procurement that prioritizes short-term deployment speed over long-term freedom of movement.

Over-engineering for edge cases that never happen

An architect designs for the 0.01% scenario. The meter must record microsecond-level harmonics. The network must support five thousand simultaneous firmware pushes. The data lake must ingest streaming telemetry from every endpoint at sub-second latency. Then the system goes live—and the biggest anomaly is a squirrel chewing through a secondary line. That sounds fine until you realize the complexity tax: each extra feature adds failure modes, training overhead, and maintenance debt. We fixed this once by stripping a pilot deployment down to three metrics: total consumption, peak demand, and outage start/end timestamps. Everything else was deferred. The pilot ran two years without a single rollback. The over-engineered system three blocks over? Reverted to clipboard-and-pen after thirteen months.

‘The smartest meter is the one your team actually trusts at 3 a.m. when the alarms go off.’

— field operations lead, after watching a $2M dashboard get ignored for a spreadsheet

The pattern repeats: engineers love solving hard problems, so they build for the hardest problem they can imagine. But smart metering upgrades fail when the solution outpaces the operational reality. A crew that struggles to read yesterday's CSV won't suddenly thrive with real-time graph databases. Start with what hurts today. Add tomorrow's complexity only after today's pain is gone. Otherwise, the rollback button starts looking pretty good—and that's a cost nobody budgets for.

Maintenance, Drift, and Long-Term Costs

Protocol Drift and Firmware Fragmentation Over Time

I once visited a utility that had upgraded two years prior—their field engineers carried six different firmware versions across the same meter model. No one could explain why. The upgrade had shipped a unified build, but patch cycles drifted. One batch got a hotfix for a voltage glitch. Another got a late security patch from the vendor. A third site never received the OTA update because the concentrator was in a basement with marginal cellular. That’s protocol drift. It isn’t dramatic—it’s a quiet accumulation of divergent states. And it kills interoperability faster than any planning document predicts.

The catch is that drift is invisible until something breaks. A downstream head-end expects a certain data frame; it gets an older byte layout. Suddenly, billing ingestion stalls. The team spends three days tracing which meter population is sending what. That’s not hypothetical—I’ve sat in the war room. The meter fleet looked unified on the dashboard. In the field, it was a fragmented archipelago. Most vendors give you a compatibility matrix at purchase. They don’t give you a drift budget—the cost of re-syncing every six months. That cost is real. Budget for it.

What usually breaks first is the reporting pipeline. A new meter model ships with an extended register set; the upgrade middleware passes it through, but the analytics layer chokes on an unexpected field. Quick reality check—that’s not a data-volume problem. It’s a schema-compliance problem. You bought insight. You got a format mismatch. The real maintenance burden isn’t hardware; it’s the constant negotiation between what meters *can* send and what your stack *understands*.

The Hidden Cost of Backward Compatibility

Backward compatibility sounds prudent. In practice, it’s a slow bleed. Every new firmware must still speak the dialect of the oldest meter in the ground. That constrains what you can ask for—no new data types, no compressed payloads, no richer event logs, because the legacy node processes them as noise. So you carry an anchor. The upgrade path that preserves total backward compatibility is the path that never fully unlocks your investment. You get the dashboard. You don’t get the depth.

Wrong order, usually: teams prioritize backward compat first, then wonder why insight feels thin. The trade-off is uncomfortable to admit. Do you strand a thousand older endpoints, or do you cap the entire fleet at the lowest common denominator? I’ve seen both choices. The former generates angry calls from field ops. The latter generates lukewarm analytics nobody trusts. Neither shows up in the original ROI spreadsheet. That’s the hidden cost—not a line item, but a recurring drag on the value you thought you bought.

'We spent six months perfecting backward compatibility. Then we spent another six months wondering why the new data looked exactly like the old data.'

— Integration lead, mid-size municipal utility, after a 2,500-node upgrade

That hurts. The meter data volume doubled—but the insight plateaued. The team had confused protocol support with informational gain. Maintaining compatibility cost them the very granularity that justified the upgrade. If you preserve every old behavior, you guarantee the new system never behaves differently.

Staff Training and Turnover as Recurring Expenses

Training is not a one-off. You send three engineers to a week-long boot camp. They learn the new metering platform, the revised head-end commands, the peculiarities of the field toolchain. Six months later, two of them leave. One goes to a vendor, the other to a different utility offering a raise. The institutional knowledge walks out the door. Now the remaining team has to train replacements—on a system that has already accumulated its own quirks. That training isn’t generic; it’s site-specific. The documentation is already stale because nobody updated the runbook after the last firmware drift.

Most teams skip this: a recurring training budget that scales with fleet size and upgrade age. They budget hardware. They budget integration. They don’t budget the fact that every year, 15–20% of the operational staff will need to be re-skilled on a moving target. Turnover isn’t a personnel issue—it’s a system-maintenance cost. And it compounds. A new hire makes mistakes that take twice as long to debug because the system’s state is no longer the clean state the manual describes. That’s friction. You can measure it in escalated tickets, extended outage windows, and the slow erosion of the confidence field crews have in the upgrade.

Field note: water plans crack at handoff.

What can you do? Build a minimal but mandatory knowledge-retention cadence: quarterly half-day refreshers, a living FAQ that actually gets edited after incidents, and a rotation where a senior engineer shadows a junior through one real field issue per month. That sounds like overhead. It’s cheaper than the alternative—a team that reverts to spreadsheet-based guessing because the smart meters feel too opaque to trust.

When You Should Absolutely Not Upgrade

The existing system still meets operational SLAs

I visited a mid-sized utility last year where the smart meter rollout was five years old, still humming, still hitting 99.97% daily read success. The board wanted an upgrade. Because the vendor was threatening end-of-life in 2028. Because some conference presentation promised real-time voltage sag alerts. Nobody had asked the field team a single question. The catch is—operational SLAs are not a floor, they're a ceiling disguised as a floor. If your current head-end system consistently delivers billing-grade data within the agreed window, and your outage detection meets regulatory five-minute benchmarks, adding a faster pipe or a fancier dashboard doesn't make the grid more reliable. It makes the ops center busier. The seam blows out when you force-fit a high-volume platform onto a low-latency workflow that never asked for it. Upgrade only when your SLA fails so often that penalties exceed the hardware refresh—not when a slide deck makes your current uptime look embarrassing.

'The cheapest upgrade is the one you never approve because the problem you think you have is actually a training gap in the outage management system.'

— utility operations analyst, after a failed pilot

New features would add complexity without clear benefit

Consider sub-meter interval polling at one-minute granularity. Sounds modern. Sounds like insight. Most distribution engineers I have worked with can't use data faster than fifteen-minute intervals for any planning model—load forecasting algorithms were built for 15- or 30-minute slices, and retraining them on high-frequency streams takes months of data science that nobody budgeted for. What usually breaks first is the storage layer: a million endpoints at one-minute intervals generate roughly 1.4 billion records per day. That's not insight. That's a problem. You lose a day cleaning timestamps, another day fighting database contention during billing runs, and suddenly your 'upgrade' has turned a stable environment into a firewatch rotation. The pitfall is mistaking data volume for visibility. If nobody on the engineering team can articulate a decision that requires sub-five-minute resolution, then the feature exists only to justify the hardware cost. That hurts the P&L more than doing nothing.

Wrong order. Teams often deploy the new meters first, then ask what to do with the extra columns. I have seen a utility install phasor measurement units across three substations—capable of microsecond synchronization—only to realize the SCADA historian could not ingest the timestamps without crashing every Tuesday morning. The upgrade became a downgrade. The operational team reverted to the old collector within six weeks.

Cybersecurity risks outweigh the marginal gains

Every added communication path is an exposed surface. That's not paranoia—that's the arithmetic of industrial control systems. When you upgrade from a closed, serial-based concentrator to an IP-enabled edge gateway, you gain remote firmware updates and you gain a vulnerability disclosure process you probably don't have staff to monitor. Quick reality check—the average smart meter fleet has a patch cycle of eighteen months. The average zero-day exploit is weaponized in seven days. That delta kills the business case. I have watched a team spend $400,000 on a backhaul upgrade only to spend another $150,000 on a network segmentation project because the integrator refused to guarantee isolation between the meter WAN and the corporate LAN. The marginal gain was a 3% improvement in daily read latency. The marginal risk was a breach vector into the distribution management system. Not yet. Not until your security team certifies the upgrade path against the NISTIR 7628 profile—or equivalent—and not until the vendor commits to a published secure development lifecycle with actual evidence, not a PDF badge.

Open Questions That Still Bother Practitioners

Who really owns the meter data after an upgrade?

You sign the contract, the upgrade completes, and suddenly a partner portal shows you consumption graphs you didn't ask for. The tricky bit—ownership wasn't in the scoping document. I have seen practitioners spend three months after go-live negotiating who can query fifteen-minute intervals. The meter sits on private land, the utility funded the hardware, the cloud platform stores the payload. Where does the data actually live?

Most teams skip this: the upgrade itself can reassign data rights without anyone signing a new clause. A vendor once told me, "You own the data—but we own the derived insights." That phrase alone killed a deployment. Ask yourself—can you export raw interval data without per-request fees? Can you delete historical records after switching providers? If the answer requires a lawyer, you haven't upgraded the right thing.

'We assumed the data was ours because we paid for the meter. The meter is hardware. The data is a revenue stream.'

— Grid operations lead, after a six-month dispute over consumption anomalies

Drop the assumption that ownership follows cost. It follows contract language you probably didn't read.

Can AI-driven analytics justify the hardware cost?

Vendors pitch anomaly detection as the reason to rip out existing meters. Real question—does the pattern detection pay for the new silicon? I have watched teams install high-resolution meters, feed data into a machine learning pipeline, and produce alerts for voltage dips that last four seconds. The utility fixed zero of those dips. Why? The maintenance crew couldn't locate the fault faster than their existing manual log.

The catch is ROI math that assumes perfect action. AI on a smart meter fleet looks great in a slide deck—it reduces truck rolls, predicts transformer failure, optimizes load balancing. That sounds fine until you realize the model needs two years of clean training data you don't have. Quick reality check—one site spent forty thousand dollars on edge AI modules and discovered their biggest saving was identifying a billing error from 2019. Not a sensor win. An accounting fix.

Hardware cost recovers only when the analytics change a decision you already make. If you can't name three operational decisions the upgrade will alter, the AI is a science project on someone else's budget.

What happens when the cloud provider changes terms?

A meter upgrade that depends on a specific cloud API is a ticking lease. I have seen a team lock into a platform that offered free ingestion for the first 100,000 devices. Year two—they changed the pricing tier. The monthly bill tripled. The upgrade was technically complete, but the business case collapsed because no one modeled vendor dependency as an operational expense.

Wrong order: pick the meter first, then the cloud. Right order: identify which data flows are portable and which are proprietary. If your meter speaks a custom protocol that only one cloud interprets, you haven't upgraded your infrastructure—you've rented a cage. Practitioners debate this openly: is the cloud provider a partner or a landlord? The honest answer changes how you architect the ingest layer. Plan to walk away within three years, or plan to pay whatever they ask.

One concrete next action: demand a plain-language exit clause in the service agreement. Not a legal paragraph. A sentence that says "we can export full-resolution data in CSV format within 30 days of request." If the vendor hesitates, you already have your answer—and you should not upgrade with them.

Share this article:

Comments (0)

No comments yet. Be the first to comment!