docs: async def replication(self, *, dc=None):
          """Checks status of ACL replication
  
          Parameters:
              dc (str): Specify datacenter that will be used.
                        Defaults to the agent's local datacenter.
          Returns:
              Object: Replication information
  
          Returns the status of the ACL replication process in the datacenter.
          This is intended to be used by operators, or by automation checking
          the health of ACL replication.
  
          By default, the datacenter of the agent is queried; however, the dc
          can be provided using the "dc" parameter.
  
          It returns a body like this::
  
              {
                  "Enabled": True,
                  "Running": True,
                  "SourceDatacenter": "dc1",
                  "ReplicatedIndex": 1976,
                  "LastSuccess": datetime(2016, 8, 5, 6, 28, 58, tzinfo=tzutc()),
                  "LastError": datetime(2016, 8, 5, 6, 28, 58, tzinfo=tzutc())
              }
  
          **Enabled** reports whether ACL replication is enabled for the
          datacenter.
  
          **Running** reports whether the ACL replication process is running.
          The process may take approximately 60 seconds to begin running after
          a leader election occurs.
  
          **SourceDatacenter** is the authoritative ACL datacenter that ACLs
          are being replicated from, and will match the acl_datacenter
          configuration.
  
          **ReplicatedIndex** is the last index that was successfully replicated.
          You can compare this to the Index meta returned by the items() endpoint
          to determine if the replication process has gotten all available ACLs.
          Note that replication runs as a background process approximately every
          30 seconds, and that local updates are rate limited to 100
          updates/second, so so it may take several minutes to perform the
          initial sync of a large set of ACLs. After the initial sync, replica
          lag should be on the order of about 30 seconds.
  
          **LastSuccess** is the UTC time of the last successful sync operation.
          Note that since ACL replication is done with a blocking query, this
          may not update for up to 5 minutes if there have been no ACL changes
          to replicate. A zero value of "0001-01-01T00:00:00Z" will be present
          if no sync has been successful.
  
          **LastError** is the UTC time of the last error encountered during a
          sync operation. If this time is later than LastSuccess, you can assume
          the replication process is not in a good state. A zero value of
          "0001-01-01T00:00:00Z" will be present if no sync has resulted in an
          error.
          """
          params = {"dc": dc}
          response = await self._api.get("/v1/acl/replication", params=params)
          return response.body