code: func NewSCTPProxy(frontendAddr, backendAddr *sctp.SCTPAddr) (*SCTPProxy, error) {
  	listener, err := sctp.ListenSCTP("sctp", frontendAddr)
  	if err != nil {
  		return nil, err
  	}
  	// If the port in frontendAddr was 0 then ListenSCTP will have a picked
  	// a port to listen on, hence the call to Addr to get that actual port:
  	return &SCTPProxy{
  		listener:     listener,
  		frontendAddr: listener.Addr().(*sctp.SCTPAddr),
  		backendAddr:  backendAddr,
  	}, nil
  }
docs: // NewSCTPProxy creates a new SCTPProxy.