Muhlenberg sophomore Vicky Hoffman was the other individual winner, taking the 200 free by .12 seconds.

"I was really surprised," said Moser, who took more than six seconds off her seed time to edge Wilson sophomore Lexie Gartner. "I thought it was a longshot to win. But by the end, I just let it all out and went for it."

Moser, who didn't start swimming distance until mid-season this year, didn't think she got the touch.

"I didn't know it until I looked up at the scoreboard," said Moser, who finished third in the 200 free. "The finish was so close, and I thought I had lost, actually."

Skorupski, who finished third in the 100 breast, thought she had the IM win after taking the lead during the breaststroke leg.

"The (seed) times were close, so I figured I could win it," said Skorupski. "As the race went on, I felt like, 'I've got this,' especially once I hit breaststroke.

"I was like, 'This is my event; I'm not going to lose.' Once I got to the freestyle turn, I just kept going. I didn't want to get beat."

The season has been an unusual one for Reading High, which wasn't able to host meets at its Geigle Complex pool because of a PIAA ruling about water depth at the starting blocks. The Knights swam away meets and used Albright's pool for one.

"We love our home meets," said Skorupski, like Moser, a Berks Catholic student who swims for Reading High under a co-op arrangement. "We go all out for our home meets. But it was still overall a good season and we brought it together."