Okay so heres the deal, I got into a minor accident that damaged the radiator. On the ride home the coolant was leaking and the engine began to overheat so i pulled over and let it idle like it said to. The radiator has since been replaced and the car runs fine without overheating and is driven every day without a problem. Now the service engine light is on and I have two codes. The first one is p0443 EVAP solenoid control circuit malfunction, and the second one being p1258 Engine Metal Over-temperature protection which I am thinking means that it tripped when my engine overheated after the accident, the guys at oreilleys were saying I may need to replace the head gasket but there are also a few other reasons this could be happening. Any advice or tips would be greatly appreciated .