<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 async def read_registers(self, address, count):
 """Read modbus registers. The Modbus protocol doesn't allow responses longer than 250 bytes (ie. 125 registers, 62 DF addresses), which this function manages by chunking larger requests. """

        registers = []
        while count > 124:
            r = await self._request('read_holding_registers', address, 124)
            registers += r.registers
            address, count = address + 124, count - 124
        r = await self._request('read_holding_registers', address, count)
        registers += r.registers
        return registers