updated the required result type to include KeyValueResult