add support for string (not tested)