added: why ir is necessary