// Function from file: thermomachine.dm
        public override void RefreshParts(  )
        {
            double L = 0;             //null -Pdan
            Obj_Item_Weapon_StockParts_MicroLaser M = null;

            base.RefreshParts();

            foreach (dynamic _a in Lang13.Enumerate(this.component_parts, typeof(Obj_Item_Weapon_StockParts_MicroLaser)))
            {
                M = _a;

                L += M.rating;
            }

            // still not sure wtf is going on here
            this.min_temperature = Num13.Max(273.41 - (initial_min_temp + L * 15), 2.7);
            return;
        }