anchor.diff:  
   @pragma('vm:entry-point')
   // ignore: unused_element
  -_LocaleClosure _getLocaleClosure() => _localeClosure;
  -
  -@pragma('vm:entry-point')
  -// ignore: unused_element
  -void _updateLocales(List<String> locales) {
  +_LocaleClosure/*?*/ _getLocaleClosure() => _localeClosure;
  +
  +@pragma('vm:entry-point')
  +// ignore: unused_element
  +void _updateLocales(List<String/*!*/>/*!*/ locales) {
     const int stringsPerLocale = 4;
     final int numLocales = locales.length ~/ stringsPerLocale;
     window._locales = List<Locale>(numLocales);
  
positive.code: 
  @pragma('vm:entry-point')
  // ignore: unused_element
  void _updateUserSettingsData(String jsonData) {
    final Map<String, dynamic> data = json.decode(jsonData) as Map<String, dynamic>;
    if (data.isEmpty) {
      return;
  
negative.code: }
  
  /// Invokes [callback] inside the given [zone] passing it [arg1], [arg2], and [arg3].
  void _invoke3<A1, A2, A3>(void callback(A1 a1, A2 a2, A3 a3)/*?*/, Zone/*!*/ zone, A1 arg1, A2 arg2, A3 arg3) {
    if (callback == null)
      return;
  
  