828 {
829 if (val1 != val2)
830 {
831 if (!float.IsNaN(val1))
832 {
833 if (!(val2 < val1))
834 {
835 return val2;
836 }
837 return val1;
838 }
839 return val1;
840 }
841 if (!float.IsNegative(val2))
842 {
843 return val2;
844 }
845 return val1;
846 }