added str() conversion