Implemented the thermo factory