just checked and std::from_chars and std::to_chars seem to be correct (on msvc) when converting between them (literally checked all floats)
.. except nans and floats where it outputs numbers instead? which is weird .. but I guess that could be special cased ..
no idea how slow this implementation is though
