91³Ô¹ÏÍø

Watch CBS News

Former South Jersey firefighter celebrates major health milestone

PHILADELPHIA (CBS) -- Lung transplant surgery has come a long way. Thirty years ago it was just starting, now one of the first patients at Penn Medicine says he feels lucky and grateful.

"I was in great physical shape. I was a firefighter, played baseball, hockey and basketball," Mike Marinelli said.

At age 34 Mike Marinelli, who lived in South Jersey, was diagnosed with pulmonary hypertension.

A lung transplant was the only way to save his life. This was back in 1993.

"They told Judy at one point I wasn't going to live through the night," Marinelli said.

Judy, Marinelli's wife, watched as her husband's first transplant failed. A year later he had a second one.

"He makes it through everything," Judy said.

Now Marinelli and his wife live in South Carolina and are celebrating his 30th anniversary with a special guest over a Zoom reunion.

17pkg-ss-30-yr-anniversary-penn-lung-transplant-transfer-frame-1175.jpg
CBS News Philadelphia.

Dr. Jason Christie was Mike's pulmonologist at Penn Medicine.

"You kept me alive for all this time," Marinelli told Christie. "If it wasn't for you and Judy, nah, there wouldn't be no me right now."

Surviving three decades after two lung transplants is incredibly rare.

"What we knew then compared to what we know now, everything has improved so much over time," Christie said.

Christie said Mike's case inspired him to specialize in lung transplants and he formed a special bond with the Marinelli's.

"To see Mike live the life that he's lived," means the world to Christie.

It's emotional seeing what happens when you save someone's life.

"I got to walk my daughter down the aisle," Marinelli said. "I got to see four grandkids grow up."

17pkg-ss-30-yr-anniversary-penn-lung-transplant-transfer-frame-1001.jpg
CBS News Philadelphia.

There's another special connection here. It's another friendship that started at Penn Medicine, except this is between Marinelli and the nurse who took care of him 30 years ago.

"I took care of him for a while and now he just won't go away," Kathy Ritchie joked.

The families are now vacationing together and celebrating how they beat the odds.

Marinelli doesn't take any of it for granted.

"I'm incredibly grateful and forever grateful," Marinelli said.

It's unclear what caused Marinelli's pulmonary hypertension; his first symptom was shortness of breath.

He says he's looking forward to celebrating many more transplant anniversaries.

View CBS News In
CBS News App Open
Chrome Safari Continue
const link = doc.createElement('link'); link.rel = 'stylesheet'; link.href = '/fly/fly/bundles/cbsnewscontent/css/cmp-banner.min.css?v=50747257b890e014813016b79ece0fb2'; doc.head.appendChild(link); doc.body.innerHTML = CONSENT_MESSAGE; } else { el.insertAdjacentHTML('afterend', CONSENT_MESSAGE); } }); } function hidePrivacyMessage() { // Remove from the main document document.querySelectorAll(`.${CONSENT_MESSAGE_CLASS}`).forEach(el => el.remove()); // Remove from inside any iframes document.querySelectorAll('iframe').forEach(iframe => { const doc = iframe.contentDocument || iframe.contentWindow.document; doc.querySelectorAll(`.${CONSENT_MESSAGE_CLASS}`).forEach(el => el.remove()); }); } function activateGatedScripts() { // Handle both new format (cmp-gated-script) and old OneTrust/Ketch format (optanon-category-4) const gatedScripts = Array.from(document.querySelectorAll('script.cmp-gated-script, script.optanon-category-4')); // Activate scripts sequentially with a small delay to avoid timing issues let delay = 0; gatedScripts.forEach(function(placeholder, index) { setTimeout(function() { // Skip if already processed if (placeholder.hasAttribute('data-cmp-processed')) { return; } placeholder.setAttribute('data-cmp-processed', 'true'); const newScript = document.createElement('script'); newScript.type = 'text/javascript'; // Try new format first (data-cmp-src), then fall back to old format (data-src) const src = placeholder.getAttribute('data-cmp-src') || placeholder.getAttribute('data-src'); if (src) { newScript.src = src; } else if (placeholder.textContent) { // Inline script - just copy the content newScript.textContent = placeholder.textContent; } // Handle new format attributes (data-cmp-attrs) - for both inline and external scripts const attrs = placeholder.getAttribute('data-cmp-attrs'); if (attrs) { const tempDiv = document.createElement('div'); tempDiv.innerHTML = '
<\/div>'; const tempAttrs = tempDiv.firstChild.attributes; for (let i = 0; i < tempAttrs.length; i++) { // For external scripts, allow defer/async. For inline scripts, skip them (not valid) if (src || (tempAttrs[i].name !== 'async' && tempAttrs[i].name !== 'defer')) { newScript.setAttribute(tempAttrs[i].name, tempAttrs[i].value); } } } // Copy other attributes from old OneTrust format for (let i = 0; i < placeholder.attributes.length; i++) { const attr = placeholder.attributes[i]; // Skip attributes we've already handled or don't want to copy if (!['class', 'data-src', 'data-type', 'data-cmp-src', 'data-cmp-attrs', 'data-cmp-processed', 'type', 'async', 'defer', 'src'].includes(attr.name)) { newScript.setAttribute(attr.name, attr.value); } } placeholder.parentNode.replaceChild(newScript, placeholder); // If external script, manually trigger window.onload handlers after it loads // This handles widgets that use window.onload for initialization if (src) { newScript.addEventListener('load', function() { // If page already loaded and script set a new onload handler, trigger it if (document.readyState === 'complete' && window.onload) { const originalOnload = window.onload; window.onload = null; // Clear temporarily to prevent loops originalOnload(); // Execute the handler } }); } }, delay); delay += 500; // 500ms delay between each script to allow full loading }); } cbsoptanon.onScriptsReady(function(cmp) { cmp.ot.targetingAllowed(function(allowed) { if (!allowed) { showPrivacyMessage(); } else { activateGatedScripts(); } }); cmp.ot.awaitInitialConsent(function(consent_model) { cmp.ot.addOnConsentChangedHandler(function() { cmp.ot.targetingAllowed(function(allowed) { if (allowed) { hidePrivacyMessage(); activateGatedScripts(); } else { showPrivacyMessage(); } }); }); }); });