Finished the framewor of the ifization. Has some errors, difficult to print and test