improve toString() methods