BTW - It is currently throwing an ApplicationException.  I would recommend this be changed to an ArgumentException for obvious reasons.