From #116 Trying improve the mess in here but it's very difficult without breaking interfaces.
From #116
Trying improve the mess in here but it's very difficult without breaking interfaces.