docs: private HttpResponse execute(Method method, String region, String bucketName, String objectName,
                                 Map<String,String> headerMap, Map<String,String> queryParamMap,
                                 Object body, int length)
      throws InvalidBucketNameException, NoSuchAlgorithmException, InsufficientDataException, IOException,
             InvalidKeyException, NoResponseException, XmlPullParserException, ErrorResponseException,
             InternalException {
  
      if (headerMap != null) {
        headerMap = normalizeHeaders(headerMap);
      }
  
      Multimap<String, String> queryParamMultiMap = null;
      if (queryParamMap != null) {
        queryParamMultiMap = Multimaps.forMap(queryParamMap);
      }
  
      Multimap<String, String> headerMultiMap = null;
      if (headerMap != null) {
        headerMultiMap = Multimaps.forMap(headerMap);
      }
  
      return executeReq(method, region, bucketName, objectName, headerMultiMap, queryParamMultiMap, body, length);
    }