New firewall system for Sympl using nftables

Suddenly today, I’m getting a slew of errors, one email each fifteen minutes:

cron /usr/local/bin/nftfw -q blacklist

   Traceback (most recent call last):
  File "/usr/local/bin/nftfw", line 10, in <module>
    sys.exit(main())
  File "/usr/local/lib/python3.7/dist-packages/nftfw/__main__.py", line 128, in main
    sc.run(args.action)
  File "/usr/local/lib/python3.7/dist-packages/nftfw/scheduler.py", line 65, in run
    self.execute(command)
  File "/usr/local/lib/python3.7/dist-packages/nftfw/scheduler.py", line 143, in execute
    changes = bl.blacklist()
  File "/usr/local/lib/python3.7/dist-packages/nftfw/blacklist.py", line 87, in blacklist
    work = log_reader(self.cf)
  File "/usr/local/lib/python3.7/dist-packages/nftfw/logreader.py", line 57, in log_reader
    res = one_log_reader(cf, filename, patinfo, update_position)
  File "/usr/local/lib/python3.7/dist-packages/nftfw/logreader.py", line 167, in one_log_reader
    out = scanlog(patinfo, fhandle)
  File "/usr/local/lib/python3.7/dist-packages/nftfw/logreader.py", line 209, in scanlog
    for ip, patinfo in active:
  File "/usr/local/lib/python3.7/dist-packages/nftfw/logreader.py", line 205, in <genexpr>
    active = (f for f in found if f)
  File "/usr/local/lib/python3.7/dist-packages/nftfw/logreader.py", line 203, in <genexpr>
    found = (matchline(allregex, line) for line in lines)
  File "/usr/lib/python3.7/codecs.py", line 322, in decode
    (result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode bytes in position 1298-1299: invalid continuation byte