anchor.diff:              {error, ?ERROR_NOT_SATISFY_CONDITION}
       end.
   
  -add_bucket_1(AccessKeyBin, BucketBin) ->
  -    case leo_s3_bucket:put(AccessKeyBin, BucketBin) of
  +add_bucket_1(AccessKeyBin, BucketBin, CannedACL) ->
  +    case leo_s3_bucket:put(AccessKeyBin, BucketBin, CannedACL) of
           ok ->
  -            rpc_call_for_gateway(add_bucket, [AccessKeyBin, BucketBin, undefined]);
  +            rpc_call_for_gateway(add_bucket, [AccessKeyBin, BucketBin, CannedACL, undefined]);
           {error, badarg} ->
               {error, ?ERROR_INVALID_BUCKET_FORMAT};
           {error, _Cause} ->
  
positive.code: -spec(add_bucket(binary(), binary()) ->
               ok | {error, any()}).
  add_bucket(AccessKey, Bucket) ->
      AccessKeyBin = case is_binary(AccessKey) of
                         true  -> AccessKey;
                         false -> list_to_binary(AccessKey)
  
negative.code:          notify/3, notify/4, purge/1, remove/1,
           whereis/2, recover/3, compact/2, compact/4, stats/2,
           synchronize/1, synchronize/2, synchronize/3,
           set_endpoint/1, delete_endpoint/1, add_bucket/2, add_bucket/3, delete_bucket/2,
           update_acl/3
          ]).
  
  