Apologies for the typo with my list of fields - I mistakenly pasted from old code - I've got the correct (1,2,3) in my new stuff, although I was pulling my hair out there for a while.
That is helpful, thank you. So, the parts of the line are line, line, line when they're divvied up by Text::CSV::Simple. You've dumped line into an array to break up its components, that's great.
So I can manipulate line and line to grab the other parts I need. In that loop, I should be able to output something line-by-line like (pseudocode) "@parts line@line", which is effectively "SMTP_ADDRESS USER@SERVER".
That's fantastic, I was imagining all kinds of wierd structures in my head, not a simple and understandable one.