code: def report_factory(app, report_name, **kwargs):
      
      # pylint: disable=protected-access
      created = pendulum.now().to_rfc3339_string()
      user_model = app._swimlane.user.as_usergroup_selection()
  
      return Report(
          app,
          {
              "$type": Report._type,
              "groupBys": [],
              "aggregates": [],
              "applicationIds": [app.id],
              "columns": [],
              "sorts": {
                  "$type": "System.Collections.Generic.Dictionary`2"
                           "[[System.String, mscorlib],"
                           "[Core.Models.Search.SortTypes, Core]], mscorlib",
              },
              "filters": [],
              "defaultSearchReport": False,
              "allowed": [],
              "permissions": {
                  "$type": "Core.Models.Security.PermissionMatrix, Core"
              },
              "createdDate": created,
              "modifiedDate": created,
              "createdByUser": user_model,
              "modifiedByUser": user_model,
              "id": None,
              "name": report_name,
              "disabled": False,
              "keywords": ""
          },
          **kwargs
      )
docs: Report instance factory populating boilerplate raw data
  
      Args:
          app (App): Swimlane App instance
          report_name (str): Generated Report name
  
      Keyword Args
          **kwargs: Kwargs to pass to the Report class