works with _rev