anchor.diff:    static const PASS = 'pass';
     static const FAIL = 'fail';
     static const ERROR = 'error';
  -
  -  String messageType;
  -  int elapsed;
  -  String body;
  +  static const _PREFIX = 'TestMsg:';
  +
  +  final String messageType;
  +  final int elapsed;
  +  final String body;
   
     static String text(String messageType,
                        [int elapsed = 0, String body = '']) =>
  -      '$messageType $elapsed $body';
  +      '$_PREFIX$messageType $elapsed $body';
   
     _Message(this.messageType, [this.elapsed = 0, this.body = '']);
   
  -  _Message.fromString(String msg) {
  -    int idx = msg.indexOf(' ');
  -    messageType = msg.substring(0, idx);
  +  factory _Message.fromString(String msg) {
  +    if(!msg.startsWith(_PREFIX)) {
  +      return null;
  +    }
  +    int idx = msg.indexOf(' ', _PREFIX.length);
  +    var messageType = msg.substring(_PREFIX.length, idx);
       ++idx;
       int idx2 = msg.indexOf(' ', idx);
  -    elapsed = int.parse(msg.substring(idx, idx2));
  +    var elapsed = int.parse(msg.substring(idx, idx2));
       ++idx2;
  -    body = msg.substring(idx2);
  +    var body = msg.substring(idx2);
  +
  +    return new _Message(messageType, elapsed, body);
     }
   
     String toString() => text(messageType, elapsed, body);
  
positive.code: import 'unittest.dart';
  
  /** The messages exchanged between parent and child. */
  
  class _Message {
    static const START = 'start';
    static const LOG = 'log';
  
negative.code:  * in new functions that create child IFrames and run the real tests.
   */
  class ParentInteractiveHtmlConfiguration extends HtmlConfiguration {
    final Map<int,DateTime> _testStarts;
  
  
    /** The stack that was posted back from the child, if any. */
  