anchor.diff:   * files that it contains are loose files; they do not have parent folders.
    */
   class Workspace implements Container {
  +
  +  Logger workspaceLogger = new Logger('spark.workspace');
     Container _parent = null;
     chrome_gen.Entry _entry = null;
   
  
positive.code:   // read the workspace data from storage and restore entries
    Future restore() {
      return _store.getValue('workspace').then((s) {
          List ids = s.split(' ').where((id) => id.length > 0).toList();
          List futures = [];
          ids.forEach((id) {
            futures.add(chrome_gen.fileSystem.restoreEntry(id).then((entry) => link(entry)));
          });
          return Future.wait(futures).then((_) => new Future.value());
      });
    }
  
    // store info for workspace children
    Future save() {
      String string = '';
      _children.forEach((c) {
        string = '${chrome_gen.fileSystem.retainEntry(c._entry)} $string';
      });
      return _store.setValue('workspace', string);
    }
  
    Future<Resource> _gatherChildren(Container container) {
  
negative.code: library spark.workspace;
  
  import 'dart:async';
  import 'dart:convert' show JSON;
  
  import 'package:chrome_gen/chrome_app.dart' as chrome_gen;
  import 'package:logging/logging.dart';
  
  import 'preferences.dart';
  
  