Stem HiddenServiceOptions does not reflect reality

Suppose I have in my torrc:

HiddenServiceDir x
HiddenServicePort a
HiddenServicePort b

HiddenServiceDir y
HiddenServicePort c

This means run service x on port a,b and a different (hopefully unlinkable) service y on port c.

However stem's HiddenServiceOptions gives output like

{'HiddenServicePort': [a, b, c], 'HiddenServiceDir': [x, y]}

This loses information from the original config and there is no way for stem's client to reconstruct the original meaning of the torrc.