Future<Uint8List> get cover async { final h = await header; if (h.hasCover()) return _gzipDecoder.decodeBytes(h.cover) as Uint8List; return info(0).then((info) => info.cover as Uint8List); }