anchor.diff:           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, delete_bucket/2,
  +         set_endpoint/1, delete_endpoint/1, add_bucket/2, add_bucket/3, delete_bucket/2,
            update_acl/3
           ]).
   
  
positive.code:             {error, ?ERROR_NOT_SATISFY_CONDITION}
      end.
  
  add_bucket_1(AccessKeyBin, BucketBin) ->
      case leo_s3_bucket:put(AccessKeyBin, BucketBin) of
          ok ->
              rpc_call_for_gateway(add_bucket, [AccessKeyBin, BucketBin, undefined]);
          {error, badarg} ->
              {error, ?ERROR_INVALID_BUCKET_FORMAT};
          {error, _Cause} ->
  
negative.code:                 ok ->
                      {error, ?ERROR_COULD_NOT_UPDATE_BUCKET};
                  not_found ->
                      add_bucket_1(AccessKeyBin, BucketBin, CannedACL);
                  {error, _} ->
                      {error, ?ERROR_INVALID_ARGS}
              end;
  