def process_opres_input(key, value, key_options):
    """
    Check if `value` or `key` is a Result object and populate the
    options accordingly.
    :param key:
    :param value:
    :param key_options:
    :return:
    """
    opres = None

    if isinstance(value, OperationResult):
        opres = value
    elif isinstance(key, OperationResult):
        opres = key
    elif isinstance(value, (long, int)):
        key_options['cas'] = value

    if opres is not None:
        key = opres.key
        key_options['cas'] = opres.cas
    return key, value, key_options