added support for more data types