rules user freindly toString