Connect with us

Oklahoma

Oklahoma State expected to lose talented EDGE to transfer portal

Published

on

Oklahoma State expected to lose talented EDGE to transfer portal


Oklahoma State EDGE Kyran Duhon plans to enter the NCAA transfer portal, On3 has learned. Duhon was a member of the 2024 recruiting class.

Duhon spent one year at Oklahoma State, logged 16 total tackles (eight solo) across nine games. He began his career at UTEP, where he had a productive true freshman season, Duhon finished 2024 with 43 total tackles, including seven sacks and two PBUs.

At UTEP, his one season there resulted in second team All-Conference USA honors. He was also named to the On3 True Freshman All-America Team as well as the the Conference USA All-Freshman team.

However, Duhon’s stay in Stillwater didn’t go as expected. Oklahoma State finished the season with a 1-11 record, which included the Cowboys firing longtime head coach Mike Gundy after a 1-2 start. Doug Meacham was named interim head coach but ended the year 0-9.

Advertisement

Eric Morris has since been named as the program’s next head coach. He comes from North Texas, which finished with an 11-2 record and a trip to the American Conference championship game this past season. However, it doesn’t appear that Duhon will be sticking around during the changing of the guard at Oklahoma State this offseason.

Before college, Duhon was the No. 1,706 overall player in the class, and was recruited as the the No. 165 linebacker during the cycle, per the Rivals Industry Rankings, which is a proprietary algorithm that compiles ratings and rankings from all four primary recruiting media services. He was ranked as the No. 242 overall player out of Texas.

Once the NCAA transfer portal opens on Jan. 2, players can officially enter their names in the NCAA transfer portal and go on to initiate contact with their preferred schools. The portal will be open for 15 days and close on Jan. 16.

Notably, players who are on teams competing in the national championship game are allowed five extra days to make their portal decision. The College Football Playoff championship game will be played on Jan. 19, so the players on those teams will be allowed until Jan. 24 to enter the portal and choose their next school.

To keep up with the latest players on the move, check out On3’s Transfer Portal wire. The On3 Transfer Portal Instagram account and Twitter account are excellent resources to stay up to date with the latest moves.

Advertisement





Source link

Continue Reading
Click to comment

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Oklahoma

Oklahoma City artist returns with Thunder-themed window art for NBA playoffs

Published

on

Oklahoma City artist returns with Thunder-themed window art for NBA playoffs


Melissa Griggs-Hendricks and her team are back to paint Thunder-inspired designs on windows across Oklahoma City, spreading excitement for the NBA playoffs

Advertisement

Oklahoma City artist returns with Thunder-themed window art for NBA playoffs

Melissa Griggs-Hendricks and her team are back to paint Thunder-inspired designs on windows across Oklahoma City, spreading excitement for the NBA playoffs

Advertisement

WELL, OKLAHOMA CITY, IT IS ALMOST TIME FOR THE NBA PLAYOFFS AND WE ARE READY TO THUNDER UP. I’LL TELL YOU WHAT, OUR CITY SURE KNOWS HOW TO SHOW UP AND SHOW OUT. FROM WATCH PARTIES TO HOUSE DECORATIONS, OKC HAS GOT IT GOING ON AND THAT INCLUDES A LOCAL PAINTER. YOU MIGHT REMEMBER FROM LAST SEASON. OUR KOCO EVAN ONSTOT JOINING US LIVE IN THE NEWSROOM. WE HAVE THIS IN OUR NEWSROOM. EVAN, WE’RE ABOUT TO SEE BLUE AND ORANGE ALL OVER OKC. RIGHT. AND A LOT OF IT IS GOING TO BE THANKS TO ARTIST MELISSA GRIGGS HENDRICKS. WE WATCHED MELISSA AND HER TEAM CREATE THUNDER MAGIC ALL OVER OKLAHOMA LAST YEAR, AND NOW SHE IS BACK. AND MAYBE EVEN BETTER THAN BEFORE. MELISSA AND HER ASSISTANT CANDACE PAINT THUNDER IMAGES ON WINDOWS. ABBY, YOU MENTIONED WE HAD ONE RIGHT HERE IN THE KOCO NEWSROOM. AND SO THIS YEAR, THESE LADIES ARE BACK TO SPREAD SOME THUNDER EXCITEMENT. THEY SAY THEY’VE GOT EVEN MORE DESIGNS THIS YEAR AND THEY BELIEVE THEY CAN DOUBLE THE ART THIS SEASON. THEY JUST CAN’T WAIT FOR THE PLAYOFFS TO START. LAST YEAR FOR THE PLAYOFFS, WITHIN A TWO AND A HALF MONTH SPAN, WE PAINTED 157 LOCATIONS. SOME OF THOSE WERE HUGE AND SOME WERE SMALL. AS ONE WINDOW, WE HAVE A GUESS OF ABOUT 25 GALLONS. WE MAY HAVE MISSED A FEW. IT DOESN’T TAKE A TON OF PAPER FOR DESIGN TYPICALLY, BUT YEAH, ABOUT 25 GALLONS LAST YEAR. THIS YEAR I THINK WE’RE GOING TO DO A WHOLE LOT MORE. IT FEELS AMAZING TO BE BACK. I’M SO EXCITED. WE JUST HAD SUCH A GREAT TIME LAST YEAR AND I’VE REALLY MISSED THIS COMMUNITY OF JUST GETTING TO SEE EVERYBODY AND JUST BE A HUGE PART OF ALL THE EXCITEMENT FOR THE PLAYOFFS. YEAH, THEY DO INCREDIBLE WORK. NOW. MELISSA SAYS THAT IF YOU ARE INTERESTED IN HAVING ANY OF YOUR WINDOWS PAINTED, YOU JUST GOT TO CONTACT HER THROUGH EMAIL. WE’RE GOING TO POST A

Advertisement

Oklahoma City artist returns with Thunder-themed window art for NBA playoffs

Melissa Griggs-Hendricks and her team are back to paint Thunder-inspired designs on windows across Oklahoma City, spreading excitement for the NBA playoffs

Updated: 7:52 PM CDT Apr 10, 2026

Editorial Standards

Advertisement

Oklahoma City is preparing for the NBA playoffs, and artist Melissa Griggs-Hendricks is bringing Thunder spirit to life with her signature window art. >> Download the KOCO 5 app | Subscribe to KOCO 5’s YouTube channel | Sign up for KOCO 5’s Morning NewsletterGriggs-Hendricks, along with her assistant Candace, is painting Thunder-themed images on windows throughout the city, including one at the KOCO newsroom. “Last year for the playoffs, within a two-and-a-half-month span, we painted 157 locations. Some of those were huge and some were small as one window,” Griggs-Hendricks said. “We have a guess of about 25 gallons. We may have missed it. It doesn’t take a ton of paint for a design. Typically, they get about 25 this year. I think we’re going to do a whole lot more.” She expressed her enthusiasm for returning this season. “It feels amazing to be back. I’m so excited. We just had such a great time last year, and I really miss this community of just getting to see everybody and just be a huge part of all the excitement for the playoffs,” Griggs-Hendricks said. Get the latest news stories of interest by clicking here.Griggs-Hendricks and her team say they have even more designs planned this year and believe they can double their output from last season. Top HeadlinesWoman dies after being hit by a train in Pauls Valley, OHP saysOut-of-this-world playlist: Here’s what the Artemis II astronauts have been listening in spaceOHP releases details of deadly crash involving Oklahoma State softball team’s busRollover crash involving multiple vehicles causes significant traffic on SB I-35 near GoldsbyPennsylvania woman’s Ring camera captures machete-wielding neighbor

Oklahoma City is preparing for the NBA playoffs, and artist Melissa Griggs-Hendricks is bringing Thunder spirit to life with her signature window art.

Advertisement

>> Download the KOCO 5 app | Subscribe to KOCO 5’s YouTube channel | Sign up for KOCO 5’s Morning Newsletter

Griggs-Hendricks, along with her assistant Candace, is painting Thunder-themed images on windows throughout the city, including one at the KOCO newsroom.

“Last year for the playoffs, within a two-and-a-half-month span, we painted 157 locations. Some of those were huge and some were small as one window,” Griggs-Hendricks said. “We have a guess of about 25 gallons. We may have missed it. It doesn’t take a ton of paint for a design. Typically, they get about 25 this year. I think we’re going to do a whole lot more.”

Advertisement

She expressed her enthusiasm for returning this season.

“It feels amazing to be back. I’m so excited. We just had such a great time last year, and I really miss this community of just getting to see everybody and just be a huge part of all the excitement for the playoffs,” Griggs-Hendricks said.

Get the latest news stories of interest by clicking here.

Griggs-Hendricks and her team say they have even more designs planned this year and believe they can double their output from last season.


Top Headlines

Advertisement
Advertisement

`;
}

function refreshWeatherIframe(containerId) {
var iframeId = ‘weather-iframe-‘ + containerId;
var iframe = document.getElementById(iframeId);
if (iframe && iframe.src) {
var originalSrc = iframe.src;
iframe.src = originalSrc + (originalSrc.indexOf(‘?’) > -1 ? ‘&’ : ‘?’) + ‘t=” + Date.now();
}
}

function initializeWeatherBox(container) {
var containerId = container.getAttribute(“data-container-id’);
var isWeatherBoxV2 = containerId === ‘home-weather-v2’;

function switchWeatherTab(tabName, clickedElement) {
container.querySelectorAll(‘[data-tab-id]’).forEach(function(tab) {
tab.classList.remove(‘open’);
tab.setAttribute(‘aria-selected’, ‘false’);
});

clickedElement.classList.add(‘open’);
clickedElement.setAttribute(‘aria-selected’, ‘true’);

Advertisement

container.querySelectorAll(‘[data-content-id]’).forEach(function(content) {
content.style.display = ‘none’;
content.setAttribute(‘hidden’, ‘true’);
});

var targetContent = container.querySelector(‘[data-content-id=”‘ + tabName + ‘”]’);
if (targetContent) {
targetContent.style.display = ‘block’;
targetContent.removeAttribute(‘hidden’);
}
}

function loadWeatherData() {
// If weather data is already being loaded, wait for it
if (window.weatherDataPromise) {
window.weatherDataPromise.then(function(data) {
if (data && data.data) {
var weatherContainer = container.closest(‘.weather-box-container’);
if (weatherContainer) {
weatherContainer.style.display = ‘flex’;
updateCurrentWeather(data.data);
updateForecastTabs(data.data);
updateWeatherAlertsBar(data.data);
}
}
});
return;
}

var location = { zip: window.DEFAULT_ZIPCODE };

try {
var storedLocations = localStorage.getItem(‘hrst.zip.history’);
if (storedLocations) {
var locations = JSON.parse(storedLocations);
if (locations && locations.length > 0) {
location = locations[0];
}
}
} catch (e) {}

Advertisement

var apiUrl = (window.DEWY_HOSTNAME || ”) + ‘/api/v1/weather/full/’ + location.zip;

if (window.fetch) {
window.weatherDataPromise = fetch(apiUrl)
.then(function(response) { return response.json(); })
.then(function(data) {
if (data && data.data) {
var article = container.closest(‘.article–wrapper’);
var weatherContainer = container.closest(‘.weather-box-container’);
if (weatherContainer) {
weatherContainer.style.display = ‘flex’;
updateCurrentWeather(data.data);
updateForecastTabs(data.data);
updateWeatherAlertsBar(data.data);
}
return data;
}
})
.catch(function(error) {
console.error(‘Error loading weather:’, error);
// Reset to unknown background on error
updateWeatherBackground(‘unknown’);
});
}
}

function updateWeatherAlertsBar(weatherData) {
var weatherWatchHeader = container.querySelector(‘.weather-watch-header’);
if (!weatherWatchHeader) return;

var weatherWatchText = weatherWatchHeader.querySelector(‘.weather-watch-text’);
var weatherWatchLink = weatherWatchHeader.querySelector(‘.weather-watch-link’);

if (weatherData.alerts_count > 0) {
weatherWatchHeader.className=”weather-watch-header has-alerts”;
if (weatherWatchText) {
weatherWatchText.textContent = `Weather Alerts (${weatherData.alerts_count})`;
}
if (weatherWatchLink) {
if (!weatherWatchLink.getAttribute(‘data-initial-href’)) {
weatherWatchLink.setAttribute(‘data-initial-href’, weatherWatchLink.getAttribute(‘href’));
weatherWatchLink.setAttribute(‘data-initial-onclick’, weatherWatchLink.getAttribute(‘onclick’) || ”);
}
weatherWatchLink.setAttribute(‘href’, “https://www.koco.com/alerts”);
weatherWatchLink.setAttribute(‘onclick’, “return handleWeatherLinkClick(event, ‘click_alerts’, ‘click’, ‘mobile-weather’, “https://www.koco.com/alerts”);”);
}
} else {
weatherWatchHeader.className=”weather-watch-header”;
if (weatherWatchText) {
weatherWatchText.textContent = containerId === ‘home-weather-v2’ ? ‘Watch Latest Forecast’ : ‘Latest Forecast’;
}
if (weatherWatchLink) {
var initialHref = weatherWatchLink.getAttribute(‘data-initial-href’);
var initialOnclick = weatherWatchLink.getAttribute(‘data-initial-onclick’);
if (initialHref) {
weatherWatchLink.setAttribute(‘href’, initialHref);
}
if (initialOnclick) {
weatherWatchLink.setAttribute(‘onclick’, initialOnclick);
}
}
}
}

Advertisement

function updateCurrentWeather(weatherData) {
if (weatherData.current) {
var tempValue = weatherData.current.temp_f || ”;
var skyValue = weatherData.current.sky || ”;
var feelsLikeValue = weatherData.current.feels_like_f || weatherData.current.temp_f || ”;

var tempEl = container.querySelector(‘.weather-grid–current-temp-value’);
if (tempEl) {
tempEl.textContent = tempValue;
tempEl.setAttribute(‘aria-label’, tempValue + ‘ degrees Fahrenheit’);
}

var iconEl = container.querySelector(‘.weather-grid–current-icon’);
if (iconEl && weatherData.current.icon_name) {
iconEl.className=”weather-grid–current-icon weather-current-icon icon icon-weather-” + weatherData.current.icon_name;
}

var skyEl = container.querySelector(‘.weather-grid–sky’);
if (skyEl) {
skyEl.textContent = skyValue;
skyEl.setAttribute(‘aria-label’, ‘Current condition: ‘ + skyValue);
}

var feelsEl = container.querySelector(‘.weather-grid–feels’);
if (feelsEl) {
feelsEl.textContent = feelsLikeValue + ‘°F’;
feelsEl.setAttribute(‘aria-label’, feelsLikeValue + ‘ degrees Fahrenheit’);
}

Advertisement

var weatherContainer = container.querySelector(‘.weather-temp-container’);
if (weatherContainer) {
var summary = ‘Current temperature ‘ + tempValue + ‘ degrees Fahrenheit, ‘ +
skyValue + ‘, feels like ‘ + feelsLikeValue + ‘ degrees’;
weatherContainer.setAttribute(‘aria-label’, summary);
}

updateWeatherBackground(weatherData.current.icon_name);
}
}

function updateWeatherBackground(iconName) {
try {
var bgPath = weatherImages.backgrounds[iconName] || weatherImages.backgrounds.unknown;
container.style.backgroundImage=”url(” + bgPath + ‘)’;
} catch (e) {
console.log(‘Error updating weather background:’, e);
}
}

function updateForecastTabs(weatherData) {
var visibleItems = isWeatherBoxV2 ? 6 : 5;

if (weatherData.hourly) {
var hourlyContainer = container.querySelector(‘.weather-hourly-forecast’);
if (hourlyContainer) {
var html=””;
var maxHours = Math.min(visibleItems, weatherData.hourly.length);

Advertisement

for (var i = 0; i 0 ? currentIndex – 1 : tabs.length – 1;
tabs[prevIndex].focus();
break;
case ‘ArrowRight’:
e.preventDefault();
var nextIndex = currentIndex

`;
}

function refreshWeatherIframe(containerId) {
var iframeId = ‘weather-iframe-‘ + containerId;
var iframe = document.getElementById(iframeId);
if (iframe && iframe.src) {
var originalSrc = iframe.src;
iframe.src = originalSrc + (originalSrc.indexOf(‘?’) > -1 ? ‘&’ : ‘?’) + ‘t=” + Date.now();
}
}

function initializeWeatherBox(container) {
var containerId = container.getAttribute(“data-container-id’);
var isWeatherBoxV2 = containerId === ‘home-weather-v2’;

function switchWeatherTab(tabName, clickedElement) {
container.querySelectorAll(‘[data-tab-id]’).forEach(function(tab) {
tab.classList.remove(‘open’);
tab.setAttribute(‘aria-selected’, ‘false’);
});

Advertisement

clickedElement.classList.add(‘open’);
clickedElement.setAttribute(‘aria-selected’, ‘true’);

container.querySelectorAll(‘[data-content-id]’).forEach(function(content) {
content.style.display = ‘none’;
content.setAttribute(‘hidden’, ‘true’);
});

var targetContent = container.querySelector(‘[data-content-id=”‘ + tabName + ‘”]’);
if (targetContent) {
targetContent.style.display = ‘block’;
targetContent.removeAttribute(‘hidden’);
}
}

function loadWeatherData() {
// If weather data is already being loaded, wait for it
if (window.weatherDataPromise) {
window.weatherDataPromise.then(function(data) {
if (data && data.data) {
var weatherContainer = container.closest(‘.weather-box-container’);
if (weatherContainer) {
weatherContainer.style.display = ‘flex’;
updateCurrentWeather(data.data);
updateForecastTabs(data.data);
updateWeatherAlertsBar(data.data);
}
}
});
return;
}

var location = { zip: window.DEFAULT_ZIPCODE };

Advertisement

try {
var storedLocations = localStorage.getItem(‘hrst.zip.history’);
if (storedLocations) {
var locations = JSON.parse(storedLocations);
if (locations && locations.length > 0) {
location = locations[0];
}
}
} catch (e) {}

var apiUrl = (window.DEWY_HOSTNAME || ”) + ‘/api/v1/weather/full/’ + location.zip;

if (window.fetch) {
window.weatherDataPromise = fetch(apiUrl)
.then(function(response) { return response.json(); })
.then(function(data) {
if (data && data.data) {
var article = container.closest(‘.article–wrapper’);
var weatherContainer = container.closest(‘.weather-box-container’);
if (weatherContainer) {
weatherContainer.style.display = ‘flex’;
updateCurrentWeather(data.data);
updateForecastTabs(data.data);
updateWeatherAlertsBar(data.data);
}
return data;
}
})
.catch(function(error) {
console.error(‘Error loading weather:’, error);
// Reset to unknown background on error
updateWeatherBackground(‘unknown’);
});
}
}

function updateWeatherAlertsBar(weatherData) {
var weatherWatchHeader = container.querySelector(‘.weather-watch-header’);
if (!weatherWatchHeader) return;

var weatherWatchText = weatherWatchHeader.querySelector(‘.weather-watch-text’);
var weatherWatchLink = weatherWatchHeader.querySelector(‘.weather-watch-link’);

Advertisement

if (weatherData.alerts_count > 0) {
weatherWatchHeader.className=”weather-watch-header has-alerts”;
if (weatherWatchText) {
weatherWatchText.textContent = `Weather Alerts (${weatherData.alerts_count})`;
}
if (weatherWatchLink) {
if (!weatherWatchLink.getAttribute(‘data-initial-href’)) {
weatherWatchLink.setAttribute(‘data-initial-href’, weatherWatchLink.getAttribute(‘href’));
weatherWatchLink.setAttribute(‘data-initial-onclick’, weatherWatchLink.getAttribute(‘onclick’) || ”);
}
weatherWatchLink.setAttribute(‘href’, “https://www.koco.com/alerts”);
weatherWatchLink.setAttribute(‘onclick’, “return handleWeatherLinkClick(event, ‘click_alerts’, ‘click’, ‘sidelist-weather’, “https://www.koco.com/alerts”);”);
}
} else {
weatherWatchHeader.className=”weather-watch-header”;
if (weatherWatchText) {
weatherWatchText.textContent = containerId === ‘home-weather-v2’ ? ‘Watch Latest Forecast’ : ‘Latest Forecast’;
}
if (weatherWatchLink) {
var initialHref = weatherWatchLink.getAttribute(‘data-initial-href’);
var initialOnclick = weatherWatchLink.getAttribute(‘data-initial-onclick’);
if (initialHref) {
weatherWatchLink.setAttribute(‘href’, initialHref);
}
if (initialOnclick) {
weatherWatchLink.setAttribute(‘onclick’, initialOnclick);
}
}
}
}

function updateCurrentWeather(weatherData) {
if (weatherData.current) {
var tempValue = weatherData.current.temp_f || ”;
var skyValue = weatherData.current.sky || ”;
var feelsLikeValue = weatherData.current.feels_like_f || weatherData.current.temp_f || ”;

var tempEl = container.querySelector(‘.weather-grid–current-temp-value’);
if (tempEl) {
tempEl.textContent = tempValue;
tempEl.setAttribute(‘aria-label’, tempValue + ‘ degrees Fahrenheit’);
}

var iconEl = container.querySelector(‘.weather-grid–current-icon’);
if (iconEl && weatherData.current.icon_name) {
iconEl.className=”weather-grid–current-icon weather-current-icon icon icon-weather-” + weatherData.current.icon_name;
}

var skyEl = container.querySelector(‘.weather-grid–sky’);
if (skyEl) {
skyEl.textContent = skyValue;
skyEl.setAttribute(‘aria-label’, ‘Current condition: ‘ + skyValue);
}

Advertisement

var feelsEl = container.querySelector(‘.weather-grid–feels’);
if (feelsEl) {
feelsEl.textContent = feelsLikeValue + ‘°F’;
feelsEl.setAttribute(‘aria-label’, feelsLikeValue + ‘ degrees Fahrenheit’);
}

var weatherContainer = container.querySelector(‘.weather-temp-container’);
if (weatherContainer) {
var summary = ‘Current temperature ‘ + tempValue + ‘ degrees Fahrenheit, ‘ +
skyValue + ‘, feels like ‘ + feelsLikeValue + ‘ degrees’;
weatherContainer.setAttribute(‘aria-label’, summary);
}

updateWeatherBackground(weatherData.current.icon_name);
}
}

function updateWeatherBackground(iconName) {
try {
var bgPath = weatherImages.backgrounds[iconName] || weatherImages.backgrounds.unknown;
container.style.backgroundImage=”url(” + bgPath + ‘)’;
} catch (e) {
console.log(‘Error updating weather background:’, e);
}
}

function updateForecastTabs(weatherData) {
var visibleItems = isWeatherBoxV2 ? 6 : 5;

Advertisement

if (weatherData.hourly) {
var hourlyContainer = container.querySelector(‘.weather-hourly-forecast’);
if (hourlyContainer) {
var html=””;
var maxHours = Math.min(visibleItems, weatherData.hourly.length);

for (var i = 0; i 0 ? currentIndex – 1 : tabs.length – 1;
tabs[prevIndex].focus();
break;
case ‘ArrowRight’:
e.preventDefault();
var nextIndex = currentIndex

Loading more articles…



Source link

Advertisement
Continue Reading

Oklahoma

Oklahoma City man claiming to be financial investor charged with fraud

Published

on

Oklahoma City man claiming to be financial investor charged with fraud


A federal grand jury has charged an Oklahoma City man with dozens of counts of wire fraud, money laundering, and aggravated identity theft.

From June 2021 through December 2025, officials say 36-year-old Matthew Mclain Veazey presented himself as a successful financial investment professional. Public records indicate that Veazey encouraged friend and family to send him money by claiming he had special access to favorable investment opportunities due to his connections.

However, authorities say Veazey kept the money for himself and used it for personal expenses.

Court records allege that investors gave Veazey $2.38 million, but those funds were never repaid. Authorities say Veazey fabricated text messages and email communications from real people to convince victims that his investment activities were real.

Advertisement

This week, a federal grand jury returned a 30-count indictment charging Veazey with 21 counts of wire fraud, five counts of money laundering, and four counts of aggravated identity theft.

Comment with Bubbles

BE THE FIRST TO COMMENT

If convicted, Veazey faces up to 20 years in federal prison and fines up to $250,000 for each count of wire fraud, up to 10 years in federal prison and fines up to $250,000 for each count of money laundering.



Source link

Advertisement
Continue Reading

Oklahoma

PORTAL TARGET BREAKDOWN: Oklahoma State guard Amari Whiting

Published

on

PORTAL TARGET BREAKDOWN: Oklahoma State guard Amari Whiting


Portal season is just getting underway. The Iowa Women’s Basketball team suffered five losses to the transfer portal, leaving them, at this moment, with six players on next year’s roster, including just two guards. For the first time since the portal became commonplace in college sports, the Hawkeyes, led by head coach Jan Jensen are […]



Source link

Continue Reading

Trending