change the protocol interface