yFoo = this.args.foo;
    }

    MySnapshot.prototype = {
      __proto__: tr.model.ObjectSnapshot.prototype
    };

    const instance = new tr.model.ObjectInstance(
        {}, '0x1000', 'cat', 'MySnapshot', 10);
    try {
      tr.model.ObjectSnapshot.subTypes.register(
          MySnapshot,
          {typeName: 'MySnapshot'});
      const snapshot = instance.addSnapshot(15, {foo: 'bar'});
      assert.instanceOf(snapshot, MySnapshot);
      assert.strictEqual(snapshot.myFoo, 'bar');
    } finally {
    