split out rump abi, so can easily monkeymatch version