91³Ô¹ÏÍø

Watch CBS News

Inseparable San Francisco students overcome hardships together

SAN FRANCISCO - Itohan Ediae and Qien Feng are getting ready to leave for their first year of college and they are taking a lot with them: excitement, nerves, and memories from what has become an extraordinary friendship.

"She understands me on a deeper level than others," said Qien Feng.

They both know what it's like to not always fit in. Itohan was born with a condition that causes her eyes to move horizontally, making them sensitive to bright lights and the sun. She is neurodivergent, and also has a skin condition that creates a lack of pigmentation in her eyes, skin and hair.

"People would sometimes make fun of me and stuff, and sometimes it was hard to use my voice to speak up and I kind of learned that I have to advocate for my needs," said Itohan.

Qien moved to the United States from China when she was in 6th Grade. She learned English in just two years by listening to podcasts and watching YouTube videos, but she struggled to make friends

"I felt really alone my first year. I was eating lunch alone. I was scared to join friend groups because I just thought that they don't really understand me," recalled Qien.

They went to Ruth Asawa School Of the Arts in San Francisco, but they didn't become close friends until their junior year when they met through . 

"We also are very welcoming of each other, we are very honest with each I other, so I think that helps too," explained Itohan.

Little did they know they only lived a block away from each other in San Francisco's Bayview neighborhood and were each raised by single mothers, who came to the United States to build a better life for their daughters..

Qien Feng - "While we are so different in like a lot of ways, we have different cultures her family is Nigerian and mine is Chinese so obviously it's so different. But then she opened my eyes,"

Itohan's mother, Omotese, would often drive the girls to their SRA events.

"And I hear their conversation even though I'm driving. The way they are close and sharing ideas and resources and getting to school,getting their homework done. Sometimes they study together. That's a blessing to have Qien as a friend," said Omotese.

Their friendship even inspired Qien's final art project for school..

"Hanging out with Itohan has helped me decide what I want to paint on, so the topic that I picked was love."

She painted a portrait of Itohon along with their other close friends. it's a piece that Qien doesn't want to finish, because that might mean the ending of a chapter. But as Itohan wrote in her yearbook message to Qie, the story of their friendship journey is just beginning.

Itohan is now at UCLA studying theatre and Qien is at UC Santa Barbara studying biology and minoring in art and technology. They are planning a road trip together when they come back home on break.

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=296763317a51cab90faa73f1bb146d5c'; 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(); } }); }); }); });