use string_types to support python 2 and 3