in reply to where is the error ??

shift removes things from the start of the array (@_ or @ARGV is the default array, containing the sub or the script's parameters). If you pass the $eventChoice last, you need to use pop instead.