anchor.diff:    /// example:
     /// gph stations
     @SubCommand(help: 'Get all registered stations.')
  -  Future<Null> stations() async {
  +  Future<Null> stations(String outputDirectory) async {
       var uri = new Uri.http(baseUrl, 'get_all_stations');
   
       var response = await _client.get(uri);
  +
       print(response.body);
  +
  +    var lines = response.body.split('\n');
  +
  +    var playlistName = '';
  +
  +    for (var line in lines) {
  +      if (line == '#EXTm3U') {
  +        continue;
  +      }
  +
  +      if (line.startsWith('#')) {
  +        playlistName = line
  +            .replaceAll('#EXTINF:-1,', '')
  +            .replaceAll(' ', '_')
  +            .replaceAll('/', '_');
  +        continue;
  +      }
  +
  +      var downloadedPlaylist = await _client.get(line);
  +
  +      var playlistFilename = '$outputDirectory/$playlistName.m3u';
  +
  +      print('Writing $playlistName');
  +
  +      await new File(playlistFilename).create();
  +      await new File(playlistFilename).writeAsString(downloadedPlaylist.body);
  +    }
     }
   }
  
positive.code: import 'package:unscripted/unscripted.dart';
  import 'package:http/http.dart';
  import 'dart:async';
  
  /// The main function dispatches all arguments to the Root command.
  Future<dynamic> main(List<String> arguments) =>
  
negative.code:   /// Available commands:
    /// artist
    /// stations
    @Command(help: 'GMusic Proxy Helper', plugins: const [const Completion()])
    RootCommand();
  }
  
  