improved code capture - visualisation
ir functions moved into separated module