Brilliant, thank you very much! (Also, thanks for including examples of how to implement "die" and "warn": I rarely use these signals myself, but having just run your code on my data, it allowed me to identify a major error in the formatting of some of the data that would have caused a major headache later!).