You cannot take players on ELC's, and can't take more than 1 player per team. No protection otherwise. Players have to play in their positions that Capfriendly has, so if Capfriendly has a player as C only, they can't be on a wing.
Ilya Sorokin is not eligible for the expansion draft.
This wasn't expansion draft rules. It was any player that's not on an ELC, put into a position they are listed as per capfriendly, and max of 1 player per team.
However, if expansion draft eligibility were required, I would change Sorokin with Korpisalo. I would still be 100K under the cap in that scenario.