Analisa Tipu thought she was going to die in a ferocious Hawke's Bay sea at the weekend.
She was swallowing seawater and struggling to keep her head above the surface when 15-year-old Callum Williams reached her where she had been dragged 250 metres from shore at Waipatiki Beach on Saturday.
Miss Tipu had been diving under the surf with her cousin, Leilani Wong, 18, when they were dragged out to sea.
If it wasn't for the gallant, quick-thinking efforts of a group of Napier teens - Callum; Lucan Battison, 14; Kris Troy, 15; Nick Roydhouse, 17; Daniel Troy, 17; Izaiah Lange, 15; Bailyn Sullivan 14; and Andrea Skelly, 16 - the situation could easily have turned to tragedy, Hawke's Bay Police Senior Sergeant Mike Stevenson said.
"It was crazy," Miss Tipu said. "We were able to touch the ground one minute and we went under a wave and suddenly we couldn't anymore and it all went downhill from there."
While Lucan and Izaiah were able to reach Leilani quickly, and Daniel and Kris took her to shore, it took Callum 45 minutes to navigate the waves and swift current to get to Miss Tipu.
"Just before I saw him I remember thinking 'oh my gosh, this is really happening, this isn't some nightmare I'm going to wake up from'," she said. "I really didn't think I was going to make it.
"Words can't express how grateful I am for everyone that was there."
Callum said when he reached Miss Tipu she was underwater, and he kept asking her questions and making her count her breaths to keep her conscious.
"I saw her face when I got carried up by a wave and she was going under the water and spewing up water," he said. "So I put her arm around my shoulder and kept saying, 'Breathe, breathe ... it's going to be okay ... I'm here'.
"Then I slowly started dragging her into shore, but I was really tired and she kept kind of dropping her head down into the water. I was thinking, 'What have I got myself into?' But I didn't have any option but to keep going."
Other beach-goers were trying to reach the girls on boogie boards, kayaks and surfboards but the crashing waves kept knocking them back. Kayaker Andrew White and an unidentified surfer eventually reached the pair, and also helped retrieve Andrea, who swam out and helped comfort Miss Tipu, but got into trouble herself.
Once ashore, Callum's mother Cushla Williams, an off-duty nurse, treated Miss Tipu who had lost consciousness and was coughing up water, while other beach-goers loaded a trailer with boogie boards and towels to transport the girls to the Battisons' batch.
Holidaying doctors also rushed to the bach and helped treat the girls, covering them in mattresses and towels for warmth while an ambulance and rescue helicopter were called.
Mr Stevenson said police would like to identify the surfer to give him the praise he deserves for his part in the rescue.
Miss Tipu was flown to Hawke's Bay Hospital by Lowe Corporation Rescue Helicopter where she was treated for hypothermia and released on Sunday.
Andrea and Leilani were seen by St John Ambulance staff at the beach.
Anyone with information about the surfer should contact Kris McGehan at HB Police on (06) 831 0700.