fixing the cycle vistor to handle cast expressions
changing expeption messages to be more professional