code: def create(cls, statement_format, date_start, date_end,
                 monetary_account_id=None, regional_format=None,
                 custom_headers=None):
          
  
          if custom_headers is None:
              custom_headers = {}
  
          request_map = {
              cls.FIELD_STATEMENT_FORMAT: statement_format,
              cls.FIELD_DATE_START: date_start,
              cls.FIELD_DATE_END: date_end,
              cls.FIELD_REGIONAL_FORMAT: regional_format
          }
          request_map_string = converter.class_to_json(request_map)
          request_map_string = cls._remove_field_for_request(request_map_string)
  
          api_client = client.ApiClient(cls._get_api_context())
          request_bytes = request_map_string.encode()
          endpoint_url = cls._ENDPOINT_URL_CREATE.format(cls._determine_user_id(),
                                                         cls._determine_monetary_account_id(
                                                             monetary_account_id))
          response_raw = api_client.post(endpoint_url, request_bytes,
                                         custom_headers)
  
          return BunqResponseInt.cast_from_bunq_response(
              cls._process_for_id(response_raw)
          )
docs: :type user_id: int
          :type monetary_account_id: int
          :param statement_format: The format type of statement. Allowed values:
          MT940, CSV, PDF.
          :type statement_format: str
          :param date_start: The start date for making statements.
          :type date_start: str
          :param date_end: The end date for making statements.
          :type date_end: str
          :param regional_format: Required for CSV exports. The regional format of
          the statement, can be UK_US (comma-separated) or EUROPEAN
          (semicolon-separated).
          :type regional_format: str
          :type custom_headers: dict[str, str]|None
  
          :rtype: BunqResponseInt