func NewSoftware(software string) Software {
	return Software(software)
}
NewSoftware returns *Software from string.
package stun
func NewUsername(username string) Username {
	return Username(username)
}
type Username []byte
func (u Username) String() string {
	return string(u)
}
const maxUsernameB = 513
func (u Username) AddTo(m *Message) error {
	return TextAttribute(u).AddToAs(m, AttrUsername, maxUsernameB)
}
func (u *Username) GetFrom(m *Message) error {
	return (*TextAttribute)(u).GetFromAs(m, AttrUsername)
}
func NewRealm(realm string) Realm {
	return Realm(realm)
}
type Realm []byte
func (n Realm) String() string {
	return string(n)
}
const maxRealmB = 763
func (n Realm) AddTo(m *Message) error {
	return TextAttribute(n).AddToAs(m, AttrRealm, maxRealmB)
}
func (n *Realm) GetFrom(m *Message) error {
	return (*TextAttribute)(n).GetFromAs(m, AttrRealm)
}
const softwareRawMaxB = 763
type Software []byte
func (s Software) String() string {
	return string(s)
}