Break to_s into smaller methods