anchor.diff:  import 'dart:convert';
   
   import '../command.dart';
  +import '../command_runner.dart';
   import '../http.dart';
   import '../log.dart' as log;
   import '../oauth2.dart' as oauth2;
  
positive.code:     final credentials = oauth2.loadCredentials(cache);
      if (credentials == null) {
        final userInfo = await _retrieveUserInfo();
        log.message('You are now logged in as $userInfo');
      } else {
        final userInfo = await _retrieveUserInfo();
        if (userInfo == null) {
          log.warning('Your credentials seems broken.\n'
              'Run `pub logout` to delete your credentials  and try again.');
        }
        log.warning('You are already logged in as $userInfo\n'
            'Run `pub logout` to log out and try again.');
  
negative.code:       if (userInfoRequest.statusCode != 200) return null;
        try {
          final userInfo = json.decode(userInfoRequest.body);
          final name = userInfo['name'];
          final email = userInfo['email'];
          if (name is String && email is String) {
            return _UserInfo(name, email);
          } else {
            log.fine(
                'Bad response from $userInfoEndpoint: ${userInfoRequest.body}');
            return null;
          }
        } on FormatException catch (e) {
          log.fine(
              'Bad response from $userInfoEndpoint ($e): ${userInfoRequest.body}');
          return null;
        }
      });
  