impy analyser logic