added methods up to toString()