add float decoding