IIRC, the callbacks weren't dynamic in the other version... Any particular reason for this change? It seems like the callback would always be `Void->Void`, no?