added _toString()