Not sure if this can be made to work without real specialization, but requires some more investigation.