separated exception analysing