anchor.diff:  class BucketAccessControls extends AccessControls {
     BucketAccessControls.fromJson(Map<String,dynamic> json, {String selector: "*"}):
       super._(json, selector: selector);
  -  
  +
     BucketAccessControls._delegate(JsonObject obj, var path, {String selector: "*"}):
       super._delegate(obj, path, selector: selector);
  +
  +  BucketAccessControls(): this.fromJson({});
   }
   
   class ObjectAccessControls extends AccessControls {
  -  
  +
     /**
      * The name of the object to which these controls apply.
      */
     String get object => getField("object");
  -  
  +
     /**
      * The content generation of the object.
      */
     int get generation => getField("generation");
  -  
  +
     ObjectAccessControls.fromJson(Map<String,dynamic> json, {String selector: "*"}):
       super._(json, selector:selector);
  -  
  +
     ObjectAccessControls._delegate(JsonObject obj, var path, {String selector: "*"}):
       super._delegate(obj, path, selector: selector);
  +
  +  /**
  +   * A new [ObjectAccessControls] which is applied to every object created
  +   * in the specified [:bucket:]
  +   */
  +  ObjectAccessControls.defaultForBucket(String bucket): this.fromJson({});
  +
  +  /**
  +   * A new [ObjectAccessControls] for the given object
  +   */
  +  ObjectAccessControls(String bucket, String object): this.fromJson({'bucket': bucket, 'object': object});
   }
   
   /**
  
positive.code:  * Control who has access to a [StorageEntry]
   */
  abstract class AccessControls extends JsonObject {
    
    /**
     * The name of the bucket these controls apply to.
     */
  
negative.code:    * The ID of the access controls.
     */
    String get id => getField("id");
  
    /**
     * The kind of item this is.
     */
  