rename to DiffClient