code: func NewAsPathPrependAction(action config.SetAsPathPrepend) (*AsPathPrependAction, error) {
  	a := &AsPathPrependAction{
  		repeat: action.RepeatN,
  	}
  	switch action.As {
  	case "":
  		if a.repeat == 0 {
  			return nil, nil
  		}
  		return nil, fmt.Errorf("specify as to prepend")
  	case "last-as":
  		a.useLeftMost = true
  	default:
  		asn, err := strconv.ParseUint(action.As, 10, 32)
  		if err != nil {
  			return nil, fmt.Errorf("AS number string invalid")
  		}
  		a.asn = uint32(asn)
  	}
  	return a, nil
  }
docs: // NewAsPathPrependAction creates AsPathPrependAction object.
  // If ASN cannot be parsed, nil will be returned.