added str type support