note why rpcutil is split