equatable v0.2.1
diff --git a/CHANGELOG.md b/CHANGELOG.md
index bd7ac22..4f37373 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,7 @@
+# 0.2.1
+
+Update Dart support to `>=2.0.0 <3.0.0`
+
 # 0.2.0
 
 Add `EquatableMixin` and `EquatableMixinBase`
diff --git a/lib/src/equatable_utils.dart b/lib/src/equatable_utils.dart
index d3a6e8b..7d297f4 100644
--- a/lib/src/equatable_utils.dart
+++ b/lib/src/equatable_utils.dart
@@ -8,14 +8,14 @@
   return hashCode;
 }
 
-bool equals(dynamic list1, dynamic list2) {
+bool equals(List list1, List list2) {
   if (identical(list1, list2)) return true;
   if (list1 == null || list2 == null) return false;
   int length = list1.length;
   if (length != list2.length) return false;
   for (int i = 0; i < length; i++) {
-    if (list1[i] is Iterable) {
-      if (!equals(list1[i], list2[i])) return false;
+    if (list1[i] is List && list1[i] is List) {
+      if (!equals(list1[i] as List, list2[i] as List)) return false;
     } else {
       if (list1[i] != list2[i]) return false;
     }
diff --git a/pubspec.yaml b/pubspec.yaml
index 5c5f7df..b39a07b 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -1,11 +1,11 @@
 name: equatable
 description: An abstract class that helps to implement equality without needing to explicitly override == and hashCode.
-version: 0.2.0
+version: 0.2.1
 author: felix.angelov <felangelov@gmail.com>
 homepage: https://github.com/felangel/equatable
 
 environment:
-  sdk: ">=2.1.0 <3.0.0"
+  sdk: ">=2.0.0 <3.0.0"
 
 dev_dependencies:
   test: ">=1.3.0 <2.0.0"