fixed bug in __str__