Isn't this dangerous to have this special case?  Why not just have Name-0 for the first chunk, seems like this would end up with a special case on the receiving side as well, where a general count would be better.  Looking at the receiving side you are relying on sort.  I'd think a better strategy might be to have a special key denoting that a field has been split and a count.  Like what if you had some additional but optional fields in the event.  The first would be a string array which contained a list of split fields, the second and subsequent are counts of the fields.  So say you had a key call "foo" which was split into 5 chunks and another called "bar" which was split into 2, you could have these fields

```erlang
"mondemand.split" = ["foo","bar"],
"mondemand.split.foo" = 5,
"mondemand.split.bar" = 2,
```
Then assuming you get a dict in lwes_event:from_binary/2 you can do something like

```erlang
dechunk (Name, NumberOfParts, EventAsDict) ->
  [ dict:fetch (part_name (Name, Index)) || Index <- lists:seq (0,NumberOfParts) ].
```

To reconstruct.