diff --git a/lib/src/records.dart b/lib/src/records.dart
index 40a8d4e..6e5342b 100644
--- a/lib/src/records.dart
+++ b/lib/src/records.dart
@@ -5,7 +5,7 @@
 library observable.src.records;
 
 import 'package:collection/collection.dart';
-import 'package:quiver/core.dart';
+import 'package:quiver/core.dart' as quiver;
 
 import 'internal.dart';
 
diff --git a/lib/src/records/list_change_record.dart b/lib/src/records/list_change_record.dart
index 1fd81c7..cfbd005 100644
--- a/lib/src/records/list_change_record.dart
+++ b/lib/src/records/list_change_record.dart
@@ -120,7 +120,8 @@
 
   @override
   int get hashCode {
-    return hash4(object, index, addedCount, const ListEquality().hash(removed));
+    return quiver.hash4(
+        object, index, addedCount, const ListEquality().hash(removed));
   }
 
   @override
diff --git a/lib/src/records/map_change_record.dart b/lib/src/records/map_change_record.dart
index dc252d2..dfd528a 100644
--- a/lib/src/records/map_change_record.dart
+++ b/lib/src/records/map_change_record.dart
@@ -65,7 +65,7 @@
 
   @override
   int get hashCode {
-    return hashObjects([
+    return quiver.hashObjects([
       key,
       oldValue,
       newValue,
diff --git a/lib/src/records/property_change_record.dart b/lib/src/records/property_change_record.dart
index a606649..e42077f 100644
--- a/lib/src/records/property_change_record.dart
+++ b/lib/src/records/property_change_record.dart
@@ -37,7 +37,7 @@
   }
 
   @override
-  int get hashCode => hash4(object, name, oldValue, newValue);
+  int get hashCode => quiver.hash4(object, name, oldValue, newValue);
 
   @override
   String toString() => ''
diff --git a/lib/src/records/set_change_record.dart b/lib/src/records/set_change_record.dart
index 2846e31..ea09f60 100644
--- a/lib/src/records/set_change_record.dart
+++ b/lib/src/records/set_change_record.dart
@@ -32,7 +32,7 @@
       o is SetChangeRecord<E> && element == o.element && isRemove == o.isRemove;
 
   @override
-  int get hashCode => hash2(element, isRemove);
+  int get hashCode => quiver.hash2(element, isRemove);
 
   @override
   String toString() {
diff --git a/pubspec.yaml b/pubspec.yaml
index c0fe892..f20f030 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -8,6 +8,6 @@
 dependencies:
   collection: '^1.11.0'
   meta: '^1.0.4'
-  quiver: '>=0.24.0 <0.26.0'
+  quiver: '>=0.24.0 <0.27.0'
 dev_dependencies:
   test: '^0.12.17'
