diff --git a/CHANGELOG.md b/CHANGELOG.md
index 7c4dcc3..72fde19 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,7 @@
+## 0.5.1+4
+
+* Use a more refined implementation of `Map` in `PbMapMixin`
+
 ## 0.5.1+3
 
 * Performance: eliminate some dynamic calls.
diff --git a/lib/src/protobuf/mixins/map_mixin.dart b/lib/src/protobuf/mixins/map_mixin.dart
index 0032552..0928681 100644
--- a/lib/src/protobuf/mixins/map_mixin.dart
+++ b/lib/src/protobuf/mixins/map_mixin.dart
@@ -11,7 +11,7 @@
 ///
 /// This mixin is enabled via an option in
 /// dart_options.proto in dart-protoc-plugin.
-abstract class PbMapMixin implements Map {
+abstract class PbMapMixin implements Map<String, dynamic> {
   // GeneratedMessage properties and methods used by this mixin.
 
   BuilderInfo get info_;
@@ -29,8 +29,8 @@
   }
 
   @override
-  operator []=(key, val) {
-    var tag = getTagNumber(key as String);
+  void operator []=(String key, val) {
+    var tag = getTagNumber(key);
     if (tag == null) {
       throw new ArgumentError(
           "field '${key}' not found in ${info_.messageName}");
@@ -39,13 +39,13 @@
   }
 
   @override
-  get keys => info_.byName.keys;
+  Iterable<String> get keys => info_.byName.keys;
 
   @override
   bool containsKey(Object key) => info_.byName.containsKey(key);
 
   @override
-  get length => info_.byName.length;
+  int get length => info_.byName.length;
 
   @override
   remove(key) {
diff --git a/pubspec.yaml b/pubspec.yaml
index 2e205fc..40cc6b8 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -1,5 +1,5 @@
 name: protobuf
-version: 0.5.1+3
+version: 0.5.1+4
 author: Dart Team <misc@dartlang.org>
 description: Runtime library for protobuf support.
 homepage: https://github.com/dart-lang/dart-protobuf
diff --git a/test/map_mixin_test.dart b/test/map_mixin_test.dart
index b732a96..ce0143a 100644
--- a/test/map_mixin_test.dart
+++ b/test/map_mixin_test.dart
@@ -15,7 +15,7 @@
 import 'mock_util.dart' show MockMessage, mockInfo;
 
 // A minimal protobuf implementation compatible with PbMapMixin.
-class Rec extends MockMessage with MapMixin, PbMapMixin {
+class Rec extends MockMessage with MapMixin<String, dynamic>, PbMapMixin {
   get info_ => _info;
   static final _info = mockInfo("Rec", () => new Rec());
 
