anchor.diff:        _entries = {};
       } else {
         var content = file.readAsStringSync();
  -      var json = JSON.decode(content);
  +      var map = type.decode(content);
         
  -      if (json is! Map) {
  +      if (map is! Map) {
           throw new Exception("JSON was not a map!");
         }
   
         for (var checker in _checkers) {
  -        checker(json);
  +        checker(map);
         }
   
  -      _entries = json;
  +      _entries = map;
       }
     }
   
  
positive.code: part of polymorphic.api;
  
  typedef void StorageChecker(Map<String, dynamic> content);
  
  class Storage extends StorageContainer {
    final String path;
    
    List<StorageChecker> _checkers = [];
    Map<String, dynamic> _entries;
    Timer _timer;
  
negative.code:       file.parent.createSync(recursive: true);
      }
  
      file.writeAsStringSync(type.encode(_entries) + "\n");
    }
    
    void startSaveTimer({Duration interval: const Duration(seconds: 2)}) {
  