This is the only time we use the 'payload' variable. Maybe we save a mem copy by just splitting directly from the pack?:

```go
    pack = plc.Pack
    lines := strings.Split(strings.Trim(pack.Message.GetPayload(), " \n"), "\n")
    pack.Recycle()
```