ensure client functions always return value (should convert to promises)