docs: function deprecateField(book, key, instance, property, value, msg) {
      var store = undefined;
  
      var prepare = function() {
          if (!is.undefined(store)) return;
  
          if (is.fn(value)) store = value();
          else store = value;
      };
  
      var getter = function(){
          prepare();
  
          logNotice(book, key, msg);
          return store;
      };
      var setter = function(v) {
          prepare();
  
          logNotice(book, key, msg);
          store = v;
          return store;
      };
  
      Object.defineProperty(instance, property, {
          get: getter,
          set: setter,
          enumerable: true,
          configurable: true
      });
  }