第一步优化勾选功能

This commit is contained in:
27942
2026-02-04 21:03:52 +08:00
parent 1aa4acab9d
commit 8bcd4c1347
455 changed files with 32136 additions and 7627 deletions

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

File diff suppressed because one or more lines are too long

View File

@@ -384,9 +384,20 @@ class MainWindow(QMainWindow):
self.update_status_label.setStyleSheet("color: #666; font-size: 10px;")
update_row.addWidget(self.update_status_label)
update_row.addStretch()
self.batch_upload_checkbox = CheckBox("批量上传(如果文件夹中有多个视频,将使用批量上传模式)")
self.batch_upload_checkbox = CheckBox("批量上传")
self.batch_upload_checkbox.setChecked(False)
self.batch_upload_checkbox.setToolTip("勾选后同一多多ID的多个视频将批量上传按序号顺序处理")
update_row.addWidget(self.batch_upload_checkbox)
# 最大批量数输入框
batch_limit_label = QLabel("最大批量数:")
batch_limit_label.setStyleSheet("color: #666; font-size: 10px; margin-left: 8px;")
update_row.addWidget(batch_limit_label)
self.batch_limit_input = LineEdit()
self.batch_limit_input.setPlaceholderText("5")
self.batch_limit_input.setText("5")
self.batch_limit_input.setFixedWidth(50)
self.batch_limit_input.setToolTip("每次批量上传的最大视频数量,超过则分批上传")
update_row.addWidget(self.batch_limit_input)
update_row_widget = QWidget()
update_row_widget.setLayout(update_row)
grid.addWidget(update_row_widget, 2, 0, 1, 4)
@@ -1755,6 +1766,33 @@ class MainWindow(QMainWindow):
except Exception:
return None
def _is_schedule_time_expired(self, time_start):
"""检查定时发布时间是否已过期(早于当前时间)
Args:
time_start: 定时发布时间字符串,如 "2026-01-15 09:30:00"
Returns:
bool: 如果时间已过期返回True否则返回False。如果时间为空或无法解析返回False不跳过
"""
if not time_start:
return False
try:
# 解析时间字符串
schedule_dt = self._parse_schedule_time(time_start)
if not schedule_dt:
return False
# 与当前时间比较
now = datetime.now()
if schedule_dt < now:
return True
return False
except Exception as e:
logger.warning(f"检查定时发布时间是否过期时出错: {e}")
return False
def _parse_interval_seconds(self, interval_value):
"""解析间隔时间(默认按分钟),支持秒/分钟/小时(如: 30, 10m, 2h, 10分钟, 2小时
@@ -3294,8 +3332,8 @@ class MainWindow(QMainWindow):
self.batch_failed_count = existing_failed
self.set_status_cards(pending=existing_pending, success=existing_success, failed=existing_failed)
# 应用定时发布 + 间隔时间逻辑(跨分页全局应用)
self._apply_schedule_intervals(configs_to_process)
# 注意:不再在此处调用 _apply_schedule_intervals
# 间隔时间计算已在"更新数据"按钮中完成,用户可能在之后手动修改了时间,应保留用户修改
self.log_text.append("=" * 50)
self.log_text.append(f"开始分析配置,准备批量上传...")
@@ -3368,6 +3406,18 @@ class MainWindow(QMainWindow):
# 获取用户是否勾选了"批量上传"复选框
use_batch_upload = self.batch_upload_checkbox.isChecked()
self.log_text.append(f"批量上传模式: {'已勾选' if use_batch_upload else '未勾选'}")
# 获取最大批量数
batch_limit = 5 # 默认值
try:
batch_limit_text = self.batch_limit_input.text().strip()
if batch_limit_text:
batch_limit = int(batch_limit_text)
if batch_limit < 1:
batch_limit = 1
except (ValueError, AttributeError):
batch_limit = 5
self.log_text.append(f"最大批量数: {batch_limit}")
for user_id, items in grouped_by_user_id.items():
all_files = []
@@ -3377,52 +3427,149 @@ class MainWindow(QMainWindow):
if item['config_index'] not in related_config_indices:
related_config_indices.append(item['config_index'])
video_files = [f for f in all_files if f['path'].is_file() and any(f['path'].suffix.lower() == ext for ext in video_extensions)]
image_folders = [f for f in all_files if f['path'].is_dir()]
# 按序号排序所有文件
def get_sort_key(f):
try:
return int(f.get('index', '0'))
except (ValueError, TypeError):
return 0
all_files_sorted = sorted(all_files, key=get_sort_key)
# 准备工作线程需要的配置同一个多多ID共用基准配置
first_config = items[0].get('config', {})
# 根据用户是否勾选批量上传来决定处理方式
if use_batch_upload and len(video_files) > 1:
# 勾选了批量上传且有多个视频:使用 action1 批量上传
self.batch_task_queue.append({
'type': 'batch_video',
'config': first_config,
'files': video_files,
'user_id': user_id,
'count': len(video_files),
'config_indices': related_config_indices
})
else:
# 未勾选批量上传 或 只有1个视频逐个使用 action 方法上传
for video_file in video_files:
vid_index = video_file.get('index', '')
matching_idx = next((it['config_index'] for it in items if it['config'].get('序号') == vid_index), related_config_indices[0] if related_config_indices else 0)
matching_config = next((it['config'] for it in items if it['config'].get('序号') == vid_index), first_config)
# 按序号顺序处理,遇到视频时收集连续视频进行批量上传
i = 0
while i < len(all_files_sorted):
current_file = all_files_sorted[i]
is_video = current_file['path'].is_file() and any(
current_file['path'].suffix.lower() == ext for ext in video_extensions)
if is_video and use_batch_upload:
# 收集从当前位置开始的连续视频按序号顺序最多batch_limit个
video_batch = []
batch_config_indices = []
j = i
while j < len(all_files_sorted) and len(video_batch) < batch_limit:
f = all_files_sorted[j]
f_is_video = f['path'].is_file() and any(
f['path'].suffix.lower() == ext for ext in video_extensions)
if f_is_video:
# 检查定时发布时间是否已过期
f_time_start = f.get('time_start', '')
if self._is_schedule_time_expired(f_time_start):
f_index = f.get('index', '')
self.log_text.append(f" 跳过序号 {f_index}:定时发布时间已过期 ({f_time_start})")
# 更新表格状态为"已跳过"
matching_idx = next(
(it['config_index'] for it in items if it['config'].get('序号') == f_index),
None)
if matching_idx is not None:
self._update_table_status(matching_idx, "已跳过(时间过期)", is_config_index=True)
self.configs[matching_idx]['情况'] = '已跳过(时间过期)'
j += 1
continue
video_batch.append(f)
f_index = f.get('index', '')
matching_idx = next(
(it['config_index'] for it in items if it['config'].get('序号') == f_index),
related_config_indices[0] if related_config_indices else 0)
if matching_idx not in batch_config_indices:
batch_config_indices.append(matching_idx)
j += 1
else:
# 遇到非视频文件,停止收集
break
if video_batch:
if len(video_batch) > 1:
# 批量上传多个视频
self.batch_task_queue.append({
'type': 'batch_video',
'config': first_config,
'files': video_batch,
'user_id': user_id,
'count': len(video_batch),
'config_indices': batch_config_indices
})
else:
# 只有1个视频单独上传
vid_index = video_batch[0].get('index', '')
matching_config = next(
(it['config'] for it in items if it['config'].get('序号') == vid_index),
first_config)
self.batch_task_queue.append({
'type': 'single_video',
'config': matching_config,
'files': video_batch,
'user_id': user_id,
'count': 1,
'config_indices': batch_config_indices
})
i = j
elif is_video:
# 未勾选批量上传,逐个上传视频
vid_index = current_file.get('index', '')
# 检查定时发布时间是否已过期
f_time_start = current_file.get('time_start', '')
if self._is_schedule_time_expired(f_time_start):
self.log_text.append(f" 跳过序号 {vid_index}:定时发布时间已过期 ({f_time_start})")
matching_idx = next(
(it['config_index'] for it in items if it['config'].get('序号') == vid_index),
None)
if matching_idx is not None:
self._update_table_status(matching_idx, "已跳过(时间过期)", is_config_index=True)
self.configs[matching_idx]['情况'] = '已跳过(时间过期)'
i += 1
continue
matching_idx = next(
(it['config_index'] for it in items if it['config'].get('序号') == vid_index),
related_config_indices[0] if related_config_indices else 0)
matching_config = next(
(it['config'] for it in items if it['config'].get('序号') == vid_index),
first_config)
self.batch_task_queue.append({
'type': 'single_video',
'config': matching_config,
'files': [video_file],
'files': [current_file],
'user_id': user_id,
'count': 1,
'config_indices': [matching_idx]
})
# 2. 图片文件夹任务
for img_folder in image_folders:
f_idx = img_folder.get('index', '')
matching_idx = next((it['config_index'] for it in items if it['config'].get('序号') == f_idx), related_config_indices[0])
matching_config = next((it['config'] for it in items if it['config'].get('序号') == f_idx), first_config)
self.batch_task_queue.append({
'type': 'image_folder',
'config': matching_config,
'files': [img_folder],
'user_id': user_id,
'count': 1,
'config_indices': [matching_idx]
})
i += 1
else:
# 图片文件夹
f_idx = current_file.get('index', '')
# 检查定时发布时间是否已过期
f_time_start = current_file.get('time_start', '')
if self._is_schedule_time_expired(f_time_start):
self.log_text.append(f" 跳过序号 {f_idx}:定时发布时间已过期 ({f_time_start})")
matching_idx = next(
(it['config_index'] for it in items if it['config'].get('序号') == f_idx),
None)
if matching_idx is not None:
self._update_table_status(matching_idx, "已跳过(时间过期)", is_config_index=True)
self.configs[matching_idx]['情况'] = '已跳过(时间过期)'
i += 1
continue
matching_idx = next(
(it['config_index'] for it in items if it['config'].get('序号') == f_idx),
related_config_indices[0])
matching_config = next(
(it['config'] for it in items if it['config'].get('序号') == f_idx),
first_config)
self.batch_task_queue.append({
'type': 'image_folder',
'config': matching_config,
'files': [current_file],
'user_id': user_id,
'count': 1,
'config_indices': [matching_idx]
})
i += 1
if self.batch_task_queue:
self._process_next_batch_task()

32
main.py
View File

@@ -613,7 +613,7 @@ class Pdd:
if immediate_publish:
immediate_publish.click()
logger.info(" ✓ 已点击'立即发布'选项")
time.sleep(0.5)
time.sleep(3)
else:
logger.warning(" ✗ 未找到'立即发布'选项")
@@ -1284,21 +1284,21 @@ class Pdd:
else:
logger.info(" - 未找到'我已阅读并同意'复选框,可能已默认勾选")
one_key_publish = creator_tab.ele('x://*[text()="一键发布"]', timeout=3)
if one_key_publish:
logger.info(" ✓ 找到'一键发布'按钮")
one_key_publish.click()
logger.info(" ✓ 已点击一键发布按钮")
logger.info(" 正在验证一键发布是否成功...")
ok, reason = self._verify_publish_success(creator_tab=creator_tab, video_container=None)
if ok:
logger.info(f" ✓ 一键发布校验通过:{reason}")
else:
logger.warning(f" ✗ 一键发布校验失败:{reason}")
time.sleep(2)
else:
logger.warning(" ✗ 未找到'一键发布'按钮")
# one_key_publish = creator_tab.ele('x://*[text()="一键发布"]', timeout=3)
# if one_key_publish:
# logger.info(" ✓ 找到'一键发布'按钮")
# one_key_publish.click()
# logger.info(" ✓ 已点击一键发布按钮")
#
# logger.info(" 正在验证一键发布是否成功...")
# ok, reason = self._verify_publish_success(creator_tab=creator_tab, video_container=None)
# if ok:
# logger.info(f" ✓ 一键发布校验通过:{reason}")
# else:
# logger.warning(f" ✗ 一键发布校验失败:{reason}")
# time.sleep(2)
# else:
# logger.warning(" ✗ 未找到'一键发布'按钮")
except Exception as e:
logger.warning(f" ✗ 一键发布失败: {e}")
import traceback

View File

@@ -1 +0,0 @@
[{"description":"treehash per file","signed_content":{"payload":"eyJjb250ZW50X2hhc2hlcyI6W3siYmxvY2tfc2l6ZSI6NDA5NiwiZGlnZXN0Ijoic2hhMjU2IiwiZmlsZXMiOlt7InBhdGgiOiJsaXN0ZGF0YS5qc29uIiwicm9vdF9oYXNoIjoidzdCdWtiRnV5NU1lNk1Ndzc5SUszWEloX2R0VzB0NUk0RkRnUVZldVF1ZyJ9LHsicGF0aCI6Im1hbmlmZXN0Lmpzb24iLCJyb290X2hhc2giOiJRVjJld2Npb0hsVkJaMW1tek5YSTdtYjd0SXRjSjQyUXphNFFPUHJKTi1RIn1dLCJmb3JtYXQiOiJ0cmVlaGFzaCIsImhhc2hfYmxvY2tfc2l6ZSI6NDA5Nn1dLCJpdGVtX2lkIjoibmlub2RhYmNlanBlZ2xmamJraGRwbGFvZ2xwY2JmZmoiLCJpdGVtX3ZlcnNpb24iOiI4LjU4NjYuNzgwMyIsInByb3RvY29sX3ZlcnNpb24iOjF9","signatures":[{"header":{"kid":"publisher"},"protected":"eyJhbGciOiJSUzI1NiJ9","signature":"Bdid54WHxcNszKj6PE6yfwhavYWsiEQ_K3MHyir-5CUwHUvfczQK4_3CBA1IMCSc2oRu4hyt8pnWnHbtNkVDr9p-9xoTriZfD1LV9K9yAAg7jRJZwTgUVo54WSt77HuxyGnUaMZJCLWHUs27vjbmhu7iWFs8S3u78g31XOqtOTgAJf3RRLhrUMYsBwbWAzv4v_U7SqfFL2JCAqZNEZG9kKxPN4N0nO5Job72vb7GFywIo_vjJdE_2tSBzERIM90S9IgJR9ZpKomdT9Jza5ublrIVjZ-pOgQCmSO0PamODK66dvaoQyYYePQEsjDZWgao62u2rAI_ytuUzh8BfVqiNlUiTKVhZrpymrPfkhXR5PAPzbYt12rOSbHRqpVzFI_pgPr2QYjCXRl0vKG2uwfBFvSjE6mq-b5k81-0YXK7xgqfoQw4zMd3rFK6ab5t6nKLXKOTIz8625IUpqV3ujEjqlBjX9u5kowKrU72t6YTqR2lUsSPMa6a0xz1cKCZC7esrZsh73j8TyTU18VszOduDgLurTYzlUXiBvAPCkidqPF9RbHNYMJ9O5hMbhqcZGEf-MTE4YrDEH3E5vq6p3yVTLave6xHcktmf9XwnEcFH7XXjh419RkDBpdxpCLgBwFrpoSMH8hqbnr_vycEPEdbkJdr5p59A5Ypt3e9a1-oik4"},{"header":{"kid":"webstore"},"protected":"eyJhbGciOiJSUzI1NiJ9","signature":"QnYXTj9TwuDFoZTf8j6oGfpC4ltPysivi1I0_IqwMzaMSP6_SlMjqSTnsz7_yZmeqBeJ0QfkzDiAaEi8_lpkcpHh6-zliJzc7HhE38s64w7m1bx-LUlJWZU2TPg9Te1EV3Ye4_qnLdgmNC07JP-Uo8re1ldtIXMSLZIrIdxNIJ7DxD_1mOduynbPwa1CyFWpIHi-0tr0G-1x6SDPAICtt6-FU1M4HkDlg57CC6CCwUFLSaJbEiHu2N0l1qw7q8qmfY1aAcNA1EFHG-230KijoTPkCLRpFGal8gMYIn0d9iao4VtrSe2aCBpuijk1kjV_RMfT0ks-8lCy7b4FQ_-lyQ"}]}}]

View File

@@ -1,542 +0,0 @@
{
"navigation_blocked": [
{"from": "*", "to": "[*.]googleplex.com"},
{"from": "*", "to": "[*.]corp.goog"},
{"from": "*", "to": "[*.]corp.google.com"},
{"from": "*", "to": "[*.]proxy.googleprod.com"},
{"from": "*", "to": "[*.]sandbox.google.com"},
{"from": "*", "to": "[*.]borg.google.com"},
{"from": "*", "to": "[*.]prod.google.com"},
{"from": "*", "to": "accounts.google.com"},
{"from": "*", "to": "admin.google.com"},
{"from": "*", "to": "borg.google.com"},
{"from": "*", "to": "bugs.chromium.org"},
{"from": "*", "to": "chromewebstore.google.com"},
{"from": "*", "to": "chromium-review.googlesource.com"},
{"from": "*", "to": "colab.research.google.com"},
{"from": "*", "to": "colab.sandbox.google.com"},
{"from": "*", "to": "console.actions.google.com"},
{"from": "*", "to": "console.cloud.google.com"},
{"from": "*", "to": "console.developers.google.com"},
{"from": "*", "to": "console.firebase.google.com"},
{"from": "*", "to": "corp.googleapis.com"},
{"from": "*", "to": "issuetracker.google.com"},
{"from": "*", "to": "mail-settings.google.com"},
{"from": "*", "to": "myaccount.google.com"},
{"from": "*", "to": "passwords.google.com"},
{"from": "*", "to": "remotedesktop.google.com"},
{"from": "*", "to": "script.google.com"},
{"from": "*", "to": "shell.cloud.google.com"},
{"from": "*", "to": "ssh.cloud.google.com"},
{"from": "*", "to": "storage.googleapis.com"},
{"from": "*", "to": "takeout.google.com"},
{"from": "*", "to": "[*.]1stopvapor.com"},
{"from": "*", "to": "[*.]1x-winprizes.com"},
{"from": "*", "to": "[*.]3chi.com"},
{"from": "*", "to": "[*.]710pipes.com"},
{"from": "*", "to": "[*.]7oh.com"},
{"from": "*", "to": "[*.]7ohblack.com"},
{"from": "*", "to": "[*.]80percentarms.com"},
{"from": "*", "to": "[*.]aeroprecisionusa.com"},
{"from": "*", "to": "[*.]aimpoint.us"},
{"from": "*", "to": "[*.]airlockindustries.com"},
{"from": "*", "to": "[*.]alamorange.com"},
{"from": "*", "to": "[*.]alcapone-us.com"},
{"from": "*", "to": "[*.]allagash.com"},
{"from": "*", "to": "[*.]alliedbeverage.com"},
{"from": "*", "to": "[*.]ambushtoys.com"},
{"from": "*", "to": "[*.]amchar.com"},
{"from": "*", "to": "[*.]americanreloading.com"},
{"from": "*", "to": "[*.]americanspirit.com"},
{"from": "*", "to": "[*.]angelsenvy.com"},
{"from": "*", "to": "[*.]apothecarium.com"},
{"from": "*", "to": "[*.]area52.com"},
{"from": "*", "to": "[*.]arizer.com"},
{"from": "*", "to": "[*.]armslist.com"},
{"from": "*", "to": "[*.]atlanticfirearms.com"},
{"from": "*", "to": "[*.]atrius.dev"},
{"from": "*", "to": "[*.]attitudeseedbankusa.com"},
{"from": "*", "to": "[*.]b5systems.com"},
{"from": "*", "to": "[*.]bacardi.com"},
{"from": "*", "to": "[*.]backfireshop.com"},
{"from": "*", "to": "[*.]backpackboyzmi.com"},
{"from": "*", "to": "[*.]baileys.com"},
{"from": "*", "to": "[*.]bakedbags.com"},
{"from": "*", "to": "[*.]ballys.com"},
{"from": "*", "to": "[*.]bardstownbourbon.com"},
{"from": "*", "to": "[*.]barnesbullets.com"},
{"from": "*", "to": "[*.]barneysfarm.com"},
{"from": "*", "to": "[*.]barneysfarm.us"},
{"from": "*", "to": "[*.]barrelking.com"},
{"from": "*", "to": "[*.]batmachine.com"},
{"from": "*", "to": "[*.]beamdistilling.com"},
{"from": "*", "to": "[*.]bearcreekarsenal.com"},
{"from": "*", "to": "[*.]bearquartz.com"},
{"from": "*", "to": "[*.]berettagalleryusa.com"},
{"from": "*", "to": "[*.]bergara.online"},
{"from": "*", "to": "[*.]bhdistro.com"},
{"from": "*", "to": "[*.]bigchiefextracts.com"},
{"from": "*", "to": "[*.]biggrove.com"},
{"from": "*", "to": "[*.]bigmosmokeshop.com"},
{"from": "*", "to": "[*.]blacknote.com"},
{"from": "*", "to": "[*.]blackstoneshooting.com"},
{"from": "*", "to": "[*.]blackwellswines.com"},
{"from": "*", "to": "[*.]blazysusan.com"},
{"from": "*", "to": "[*.]bluemoonbrewingcompany.com"},
{"from": "*", "to": "[*.]bndlstech.com"},
{"from": "*", "to": "[*.]bottlebuzz.com"},
{"from": "*", "to": "[*.]boulevard.com"},
{"from": "*", "to": "[*.]bpioutdoors.com"},
{"from": "*", "to": "[*.]breckenridgedistillery.com"},
{"from": "*", "to": "[*.]briley.com"},
{"from": "*", "to": "[*.]brothersgrimmseeds.com"},
{"from": "*", "to": "[*.]brownells.com"},
{"from": "*", "to": "[*.]budclubshop.com"},
{"from": "*", "to": "[*.]budsgunshop.com"},
{"from": "*", "to": "[*.]budweiser.com"},
{"from": "*", "to": "[*.]buffalotracedistillery.com"},
{"from": "*", "to": "[*.]bulleit.com"},
{"from": "*", "to": "[*.]burialbeer.com"},
{"from": "*", "to": "[*.]buzzballz.com"},
{"from": "*", "to": "[*.]cakebread.com"},
{"from": "*", "to": "[*.]cakehousecannabis.com"},
{"from": "*", "to": "[*.]camel.com"},
{"from": "*", "to": "[*.]cannabox.com"},
{"from": "*", "to": "[*.]cannariver.com"},
{"from": "*", "to": "[*.]casamigos.com"},
{"from": "*", "to": "[*.]castleandkey.com"},
{"from": "*", "to": "[*.]cbdmd.com"},
{"from": "*", "to": "[*.]cdvs.us"},
{"from": "*", "to": "[*.]centermassinc.com"},
{"from": "*", "to": "[*.]chandon.com"},
{"from": "*", "to": "[*.]cheechandchonghemp.com"},
{"from": "*", "to": "[*.]chipsliquor.com"},
{"from": "*", "to": "[*.]chiselmachining.com"},
{"from": "*", "to": "[*.]chwinery.com"},
{"from": "*", "to": "[*.]cigaraficionado.com"},
{"from": "*", "to": "[*.]cleangreencertified.com"},
{"from": "*", "to": "[*.]cloud9cannabis.com"},
{"from": "*", "to": "[*.]clouddefensive.com"},
{"from": "*", "to": "[*.]cloudvapes.com"},
{"from": "*", "to": "[*.]cobratecknives.com"},
{"from": "*", "to": "[*.]cogunsales.com"},
{"from": "*", "to": "[*.]colt.com"},
{"from": "*", "to": "[*.]columbia.care"},
{"from": "*", "to": "[*.]cookiesdispensary.com"},
{"from": "*", "to": "[*.]cookiesflorida.co"},
{"from": "*", "to": "[*.]copsplus.com"},
{"from": "*", "to": "[*.]coronausa.com"},
{"from": "*", "to": "[*.]csaguns.com"},
{"from": "*", "to": "[*.]curaleaf.com"},
{"from": "*", "to": "[*.]cutwaterspirits.com"},
{"from": "*", "to": "[*.]cwspirits.com"},
{"from": "*", "to": "[*.]cyclonepods.com"},
{"from": "*", "to": "[*.]dacut.com"},
{"from": "*", "to": "[*.]dauntlessmanufacturing.com"},
{"from": "*", "to": "[*.]davidtubb.com"},
{"from": "*", "to": "[*.]deleonrxgunsandammo.com"},
{"from": "*", "to": "[*.]delmesaliquor.com"},
{"from": "*", "to": "[*.]delta8resellers.com"},
{"from": "*", "to": "[*.]deltateamtactical.com"},
{"from": "*", "to": "[*.]diageo.com"},
{"from": "*", "to": "[*.]dimeindustries.com"},
{"from": "*", "to": "[*.]discountenails.com"},
{"from": "*", "to": "[*.]discountpharms.com"},
{"from": "*", "to": "[*.]discountvapepen.com"},
{"from": "*", "to": "[*.]discreetballistics.com"},
{"from": "*", "to": "[*.]dmm.co.jp"},
{"from": "*", "to": "[*.]dogfish.com"},
{"from": "*", "to": "[*.]donbest.com"},
{"from": "*", "to": "[*.]donjulio.com"},
{"from": "*", "to": "[*.]dosequis.com"},
{"from": "*", "to": "[*.]downtownspirits.com"},
{"from": "*", "to": "[*.]dragonsmilk.com"},
{"from": "*", "to": "[*.]drinkhouseplant.com"},
{"from": "*", "to": "[*.]drinkwillies.com"},
{"from": "*", "to": "[*.]drinkwynk.com"},
{"from": "*", "to": "[*.]duckhorn.com"},
{"from": "*", "to": "[*.]dwilsonmfg.com"},
{"from": "*", "to": "[*.]eaglesportsrange.com"},
{"from": "*", "to": "[*.]eaze.com"},
{"from": "*", "to": "[*.]ecigmafia.com"},
{"from": "*", "to": "[*.]edie-parker.com"},
{"from": "*", "to": "[*.]ejuiceconnect.com"},
{"from": "*", "to": "[*.]ejuicedirect.com"},
{"from": "*", "to": "[*.]elcerritoliquor.com"},
{"from": "*", "to": "[*.]elementvape.com"},
{"from": "*", "to": "[*.]eltesorotequila.com"},
{"from": "*", "to": "[*.]empiresmokes.com"},
{"from": "*", "to": "[*.]empressgin.com"},
{"from": "*", "to": "[*.]eotechinc.com"},
{"from": "*", "to": "[*.]ethosgenetics.com"},
{"from": "*", "to": "[*.]fatheads.com"},
{"from": "*", "to": "[*.]fattuesday.com"},
{"from": "*", "to": "[*.]feals.com"},
{"from": "*", "to": "[*.]fernway.com"},
{"from": "*", "to": "[*.]fever-tree.com"},
{"from": "*", "to": "[*.]finewineandgoodspirits.com"},
{"from": "*", "to": "[*.]floridagunexchange.com"},
{"from": "*", "to": "[*.]floydscustomshop.com"},
{"from": "*", "to": "[*.]fogervapes.com"},
{"from": "*", "to": "[*.]fortgeorgebrewery.com"},
{"from": "*", "to": "[*.]forwardcontrolsdesign.com"},
{"from": "*", "to": "[*.]francisfordcoppolawinery.com"},
{"from": "*", "to": "[*.]franzesewine.com"},
{"from": "*", "to": "[*.]fswholesaleus.com"},
{"from": "*", "to": "[*.]fullyloadedchew.com"},
{"from": "*", "to": "[*.]gamecigars.com"},
{"from": "*", "to": "[*.]geekvape.com"},
{"from": "*", "to": "[*.]genuineraw.com"},
{"from": "*", "to": "[*.]getfluent.com"},
{"from": "*", "to": "[*.]getmyster.com"},
{"from": "*", "to": "[*.]getsoul.com"},
{"from": "*", "to": "[*.]getsunmed.com"},
{"from": "*", "to": "[*.]giantvapes.com"},
{"from": "*", "to": "[*.]gideonoptics.com"},
{"from": "*", "to": "[*.]glasspipesla.com"},
{"from": "*", "to": "[*.]glock.com"},
{"from": "*", "to": "[*.]gloriaferrer.com"},
{"from": "*", "to": "[*.]gmansportingarms.com"},
{"from": "*", "to": "[*.]gohatch.com"},
{"from": "*", "to": "[*.]goldenroad.la"},
{"from": "*", "to": "[*.]goldleafmd.com"},
{"from": "*", "to": "[*.]gooseisland.com"},
{"from": "*", "to": "[*.]gotoliquorstore.com"},
{"from": "*", "to": "[*.]gpen.com"},
{"from": "*", "to": "[*.]grabagun.com"},
{"from": "*", "to": "[*.]grav.com"},
{"from": "*", "to": "[*.]grayboe.com"},
{"from": "*", "to": "[*.]greatlakesbrewing.com"},
{"from": "*", "to": "[*.]greenpointseeds.com"},
{"from": "*", "to": "[*.]greenroads.com"},
{"from": "*", "to": "[*.]gricegunshop.com"},
{"from": "*", "to": "[*.]griffinhowe.com"},
{"from": "*", "to": "[*.]grog.shop"},
{"from": "*", "to": "[*.]gtdist.com"},
{"from": "*", "to": "[*.]gtr-studio.com"},
{"from": "*", "to": "[*.]guinnesswebstore.com"},
{"from": "*", "to": "[*.]gunbuyer.com"},
{"from": "*", "to": "[*.]guns.com"},
{"from": "*", "to": "[*.]gunsinternational.com"},
{"from": "*", "to": "[*.]gzanders.com"},
{"from": "*", "to": "[*.]halftimebeverage.com"},
{"from": "*", "to": "[*.]happydad.com"},
{"from": "*", "to": "[*.]happyhippo.com"},
{"from": "*", "to": "[*.]hardywood.com"},
{"from": "*", "to": "[*.]harpoonbrewery.com"},
{"from": "*", "to": "[*.]hausofarms.com"},
{"from": "*", "to": "[*.]headhunterssmokeshop.com"},
{"from": "*", "to": "[*.]heineken.com"},
{"from": "*", "to": "[*.]helle.com"},
{"from": "*", "to": "[*.]hellobatch.com"},
{"from": "*", "to": "[*.]herbalwellnesscenter.com"},
{"from": "*", "to": "[*.]herbiesheadshop.com"},
{"from": "*", "to": "[*.]highlandbrewing.com"},
{"from": "*", "to": "[*.]highwest.com"},
{"from": "*", "to": "[*.]hiproof.com"},
{"from": "*", "to": "[*.]hk-usa.com"},
{"from": "*", "to": "[*.]hoffgun.com"},
{"from": "*", "to": "[*.]honeyroseusa.com"},
{"from": "*", "to": "[*.]hornady.com"},
{"from": "*", "to": "[*.]hswsupply.com"},
{"from": "*", "to": "[*.]huxwrx.com"},
{"from": "*", "to": "[*.]hyattgunstore.com"},
{"from": "*", "to": "[*.]iba-world.com"},
{"from": "*", "to": "[*.]idaholiquor.com"},
{"from": "*", "to": "[*.]ignitioncasino.eu"},
{"from": "*", "to": "[*.]iheartjane.com"},
{"from": "*", "to": "[*.]insa.com"},
{"from": "*", "to": "[*.]jackdaniels.com"},
{"from": "*", "to": "[*.]jeeter.com"},
{"from": "*", "to": "[*.]jgsales.com"},
{"from": "*", "to": "[*.]jimbeam.com"},
{"from": "*", "to": "[*.]jjbuckley.com"},
{"from": "*", "to": "[*.]jspawnguns.com"},
{"from": "*", "to": "[*.]juicehead.com"},
{"from": "*", "to": "[*.]justinwine.com"},
{"from": "*", "to": "[*.]justkana.com"},
{"from": "*", "to": "[*.]kahlua.com"},
{"from": "*", "to": "[*.]keltecweapons.com"},
{"from": "*", "to": "[*.]ketelone.com"},
{"from": "*", "to": "[*.]keystonelight.com"},
{"from": "*", "to": "[*.]keystonesportingarmsllc.com"},
{"from": "*", "to": "[*.]khalifakush.com"},
{"from": "*", "to": "[*.]kick.com"},
{"from": "*", "to": "[*.]kimberamerica.com"},
{"from": "*", "to": "[*.]kineticdg.com"},
{"from": "*", "to": "[*.]knightarmco.com"},
{"from": "*", "to": "[*.]konabrewinghawaii.com"},
{"from": "*", "to": "[*.]krieghoff.com"},
{"from": "*", "to": "[*.]krytac.com"},
{"from": "*", "to": "[*.]kures.co"},
{"from": "*", "to": "[*.]kushqueen.shop"},
{"from": "*", "to": "[*.]kybourbontrail.com"},
{"from": "*", "to": "[*.]lagunitas.com"},
{"from": "*", "to": "[*.]leesdiscountliquor.com"},
{"from": "*", "to": "[*.]legacysports.com"},
{"from": "*", "to": "[*.]letsascend.com"},
{"from": "*", "to": "[*.]libertycannabis.com"},
{"from": "*", "to": "[*.]lighterusa.com"},
{"from": "*", "to": "[*.]lightshade.com"},
{"from": "*", "to": "[*.]liquorandwineoutlets.com"},
{"from": "*", "to": "[*.]liquorbarn.com"},
{"from": "*", "to": "[*.]litfarms.com"},
{"from": "*", "to": "[*.]lookah.com"},
{"from": "*", "to": "[*.]looseleaf.com"},
{"from": "*", "to": "[*.]lordvaperpens.com"},
{"from": "*", "to": "[*.]lowkeydis.com"},
{"from": "*", "to": "[*.]luckystrike.com"},
{"from": "*", "to": "[*.]mainlinearmory.com"},
{"from": "*", "to": "[*.]makersmark.com"},
{"from": "*", "to": "[*.]manasupply.com"},
{"from": "*", "to": "[*.]manhattanbeer.com"},
{"from": "*", "to": "[*.]manoswine.com"},
{"from": "*", "to": "[*.]mark7reloading.com"},
{"from": "*", "to": "[*.]marstrigger.com"},
{"from": "*", "to": "[*.]mephistogenetics.com"},
{"from": "*", "to": "[*.]miamiherald.com"},
{"from": "*", "to": "[*.]midsouthshooterssupply.com"},
{"from": "*", "to": "[*.]midwestguns.com"},
{"from": "*", "to": "[*.]midwestgunworks.com"},
{"from": "*", "to": "[*.]mipod.com"},
{"from": "*", "to": "[*.]missionliquor.com"},
{"from": "*", "to": "[*.]misterguns.com"},
{"from": "*", "to": "[*.]modernwarriors.com"},
{"from": "*", "to": "[*.]modlite.com"},
{"from": "*", "to": "[*.]modulusarms.com"},
{"from": "*", "to": "[*.]moet.com"},
{"from": "*", "to": "[*.]molsoncoors.com"},
{"from": "*", "to": "[*.]monstrumtactical.com"},
{"from": "*", "to": "[*.]moonwlkr.com"},
{"from": "*", "to": "[*.]morrrange.com"},
{"from": "*", "to": "[*.]mossberg.com"},
{"from": "*", "to": "[*.]motherearthri.com"},
{"from": "*", "to": "[*.]mothershipglass.com"},
{"from": "*", "to": "[*.]muckleshootcasino.com"},
{"from": "*", "to": "[*.]multiversebeans.com"},
{"from": "*", "to": "[*.]mummnapa.com"},
{"from": "*", "to": "[*.]mygrizzly.com"},
{"from": "*", "to": "[*.]myhavenstores.com"},
{"from": "*", "to": "[*.]mynicco.com"},
{"from": "*", "to": "[*.]myuwell.com"},
{"from": "*", "to": "[*.]myvaporstore.com"},
{"from": "*", "to": "[*.]natchezss.com"},
{"from": "*", "to": "[*.]nationwideliquor.com"},
{"from": "*", "to": "[*.]nativesmokes4less.one"},
{"from": "*", "to": "[*.]nectar.store"},
{"from": "*", "to": "[*.]neptuneseedbank.com"},
{"from": "*", "to": "[*.]nestorliquor.com"},
{"from": "*", "to": "[*.]newhollandbrew.com"},
{"from": "*", "to": "[*.]newport-pleasure.com"},
{"from": "*", "to": "[*.]newriffdistilling.com"},
{"from": "*", "to": "[*.]nicnac.com"},
{"from": "*", "to": "[*.]northerner.com"},
{"from": "*", "to": "[*.]nosler.com"},
{"from": "*", "to": "[*.]novakratom.com"},
{"from": "*", "to": "[*.]nuleafnaturals.com"},
{"from": "*", "to": "[*.]nvsglassworks.com"},
{"from": "*", "to": "[*.]nwtnhome.com"},
{"from": "*", "to": "[*.]nylservices.net"},
{"from": "*", "to": "[*.]ochotequila.com"},
{"from": "*", "to": "[*.]odellbrewing.com"},
{"from": "*", "to": "[*.]ohlq.com"},
{"from": "*", "to": "[*.]olesmoky.com"},
{"from": "*", "to": "[*.]omrifles.com"},
{"from": "*", "to": "[*.]onlineliquor.com"},
{"from": "*", "to": "[*.]oozelife.com"},
{"from": "*", "to": "[*.]oregrown.com"},
{"from": "*", "to": "[*.]ottercreeklabs.com"},
{"from": "*", "to": "[*.]ounceoz.com"},
{"from": "*", "to": "[*.]oxva.com"},
{"from": "*", "to": "[*.]pallmallusa.com"},
{"from": "*", "to": "[*.]palmbay.com"},
{"from": "*", "to": "[*.]palmettostatearmory.com"},
{"from": "*", "to": "[*.]pappyco.com"},
{"from": "*", "to": "[*.]partisantriggers.com"},
{"from": "*", "to": "[*.]pax.com"},
{"from": "*", "to": "[*.]paylesskratom.com"},
{"from": "*", "to": "[*.]planetofthevapes.com"},
{"from": "*", "to": "[*.]pointblankrange.com"},
{"from": "*", "to": "[*.]pornhub.com"},
{"from": "*", "to": "[*.]primaryarms.com"},
{"from": "*", "to": "[*.]primesupplydistro.com"},
{"from": "*", "to": "[*.]printyour2a.com"},
{"from": "*", "to": "[*.]puffco.com"},
{"from": "*", "to": "[*.]pulsarvaporizers.com"},
{"from": "*", "to": "[*.]pureohiowellness.com"},
{"from": "*", "to": "[*.]purlifenm.com"},
{"from": "*", "to": "[*.]randys.com"},
{"from": "*", "to": "[*.]rawthentic.com"},
{"from": "*", "to": "[*.]redstarvapor.com"},
{"from": "*", "to": "[*.]reedsindoorrange.com"},
{"from": "*", "to": "[*.]refinemi.com"},
{"from": "*", "to": "[*.]relxnow.com"},
{"from": "*", "to": "[*.]remedyliquor.com"},
{"from": "*", "to": "[*.]restoredispensaries.com"},
{"from": "*", "to": "[*.]rhinegeist.com"},
{"from": "*", "to": "[*.]ribenyan.com"},
{"from": "*", "to": "[*.]riflesupply.com"},
{"from": "*", "to": "[*.]risecannabis.com"},
{"from": "*", "to": "[*.]rkguns.com"},
{"from": "*", "to": "[*.]rostmartin.com"},
{"from": "*", "to": "[*.]rsregulate.com"},
{"from": "*", "to": "[*.]rubypearlco.com"},
{"from": "*", "to": "[*.]rumchata.com"},
{"from": "*", "to": "[*.]ryot.com"},
{"from": "*", "to": "[*.]santacruzshredder.com"},
{"from": "*", "to": "[*.]savagearms.com"},
{"from": "*", "to": "[*.]sazerac.com"},
{"from": "*", "to": "[*.]sb-tactical.com"},
{"from": "*", "to": "[*.]schedule35.co"},
{"from": "*", "to": "[*.]scheels.com"},
{"from": "*", "to": "[*.]scopelist.com"},
{"from": "*", "to": "[*.]scottsdalegunclub.com"},
{"from": "*", "to": "[*.]sctmfg.com"},
{"from": "*", "to": "[*.]secondamendsports.com"},
{"from": "*", "to": "[*.]securitegunclub.com"},
{"from": "*", "to": "[*.]seedsman.com"},
{"from": "*", "to": "[*.]seedsupreme.com"},
{"from": "*", "to": "[*.]sensiseeds.com"},
{"from": "*", "to": "[*.]sft2tactical.com"},
{"from": "*", "to": "[*.]sgproof.com"},
{"from": "*", "to": "[*.]shangriladispensaries.com"},
{"from": "*", "to": "[*.]sharpshooting.net"},
{"from": "*", "to": "[*.]shawcustombarrels.com"},
{"from": "*", "to": "[*.]shopbeergear.com"},
{"from": "*", "to": "[*.]shopbotanist.com"},
{"from": "*", "to": "[*.]shopburninglove.com"},
{"from": "*", "to": "[*.]shopharborside.com"},
{"from": "*", "to": "[*.]shophod.com"},
{"from": "*", "to": "[*.]shortsbrewing.com"},
{"from": "*", "to": "[*.]showmesunrise.com"},
{"from": "*", "to": "[*.]sierrabullets.com"},
{"from": "*", "to": "[*.]sierranevada.com"},
{"from": "*", "to": "[*.]silveroak.com"},
{"from": "*", "to": "[*.]silverstaterelief.com"},
{"from": "*", "to": "[*.]sixtyvines.com"},
{"from": "*", "to": "[*.]skoal.com"},
{"from": "*", "to": "[*.]skygatewholesale.com"},
{"from": "*", "to": "[*.]slickvapes.com"},
{"from": "*", "to": "[*.]sluggers.com"},
{"from": "*", "to": "[*.]smkw.com"},
{"from": "*", "to": "[*.]smokerfriendly.com"},
{"from": "*", "to": "[*.]smoktech.com"},
{"from": "*", "to": "[*.]smokymountaincbd.com"},
{"from": "*", "to": "[*.]snusdaddy.com"},
{"from": "*", "to": "[*.]specsonline.com"},
{"from": "*", "to": "[*.]sportsmansoutdoorsuperstore.com"},
{"from": "*", "to": "[*.]springfield-armory.com"},
{"from": "*", "to": "[*.]starbudscolorado.com"},
{"from": "*", "to": "[*.]staylitdesign.com"},
{"from": "*", "to": "[*.]stellaartois.com"},
{"from": "*", "to": "[*.]stellarosa.com"},
{"from": "*", "to": "[*.]stgermainliqueur.com"},
{"from": "*", "to": "[*.]stiiizy.com"},
{"from": "*", "to": "[*.]stincusa.com"},
{"from": "*", "to": "[*.]stoegerindustries.com"},
{"from": "*", "to": "[*.]storz-bickel.com"},
{"from": "*", "to": "[*.]strainly.io"},
{"from": "*", "to": "[*.]stranahans.com"},
{"from": "*", "to": "[*.]strikeindustries.com"},
{"from": "*", "to": "[*.]strngseeds.com"},
{"from": "*", "to": "[*.]stundenglass.com"},
{"from": "*", "to": "[*.]sugarlands.com"},
{"from": "*", "to": "[*.]sundae.flowers"},
{"from": "*", "to": "[*.]sundaygoods.com"},
{"from": "*", "to": "[*.]sunshinedaydream.com"},
{"from": "*", "to": "[*.]suparms.com"},
{"from": "*", "to": "[*.]surlybrewing.com"},
{"from": "*", "to": "[*.]taginn-usa.com"},
{"from": "*", "to": "[*.]tangledrootsbrewingco.com"},
{"from": "*", "to": "[*.]tearsoftheleft.com"},
{"from": "*", "to": "[*.]tedtobacco.com"},
{"from": "*", "to": "[*.]texasgunexperience.com"},
{"from": "*", "to": "[*.]theargus.co.uk"},
{"from": "*", "to": "[*.]thearmorylife.com"},
{"from": "*", "to": "[*.]thebarreltap.com"},
{"from": "*", "to": "[*.]thebourbonconcierge.com"},
{"from": "*", "to": "[*.]thecountryshed.com"},
{"from": "*", "to": "[*.]thedablab.com"},
{"from": "*", "to": "[*.]thedispensarynv.com"},
{"from": "*", "to": "[*.]thedopestshop.com"},
{"from": "*", "to": "[*.]thefirestation.com"},
{"from": "*", "to": "[*.]theflowery.co"},
{"from": "*", "to": "[*.]thegiftofwhatif.com"},
{"from": "*", "to": "[*.]thegundies.com"},
{"from": "*", "to": "[*.]thegunparlor.com"},
{"from": "*", "to": "[*.]theliquorbarn.com"},
{"from": "*", "to": "[*.]theliquorbros.com"},
{"from": "*", "to": "[*.]theliquorstore.com"},
{"from": "*", "to": "[*.]themininail.com"},
{"from": "*", "to": "[*.]themodernsportsman.com"},
{"from": "*", "to": "[*.]theoutpostarmory.com"},
{"from": "*", "to": "[*.]thesmokeshopguys.com"},
{"from": "*", "to": "[*.]thesocialleaf.com"},
{"from": "*", "to": "[*.]thevapersworld.com"},
{"from": "*", "to": "[*.]thezenco.com"},
{"from": "*", "to": "[*.]tools420.com"},
{"from": "*", "to": "[*.]torchhemp.com"},
{"from": "*", "to": "[*.]tpg420.com"},
{"from": "*", "to": "[*.]trehouse.com"},
{"from": "*", "to": "[*.]trilliumbrewing.com"},
{"from": "*", "to": "[*.]tristararms.com"},
{"from": "*", "to": "[*.]troegs.com"},
{"from": "*", "to": "[*.]trulieve.com"},
{"from": "*", "to": "[*.]tryarro.com"},
{"from": "*", "to": "[*.]trybrst.com"},
{"from": "*", "to": "[*.]trynowadays.com"},
{"from": "*", "to": "[*.]turleywinecellars.com"},
{"from": "*", "to": "[*.]twinliquors.com"},
{"from": "*", "to": "[*.]uncoiledfirearms.com"},
{"from": "*", "to": "[*.]underwoodammo.com"},
{"from": "*", "to": "[*.]unitytactical.com"},
{"from": "*", "to": "[*.]unlockparadise.com"},
{"from": "*", "to": "[*.]uptownspirits.com"},
{"from": "*", "to": "[*.]urbnleaf.com"},
{"from": "*", "to": "[*.]usafirearms.com"},
{"from": "*", "to": "[*.]usedguns.com"},
{"from": "*", "to": "[*.]utepilsbrewing.com"},
{"from": "*", "to": "[*.]vapehoneystick.com"},
{"from": "*", "to": "[*.]vapesourcing.com"},
{"from": "*", "to": "[*.]vapewh.com"},
{"from": "*", "to": "[*.]vaporauthority.com"},
{"from": "*", "to": "[*.]vaporcafeonline.net"},
{"from": "*", "to": "[*.]vaporfi.com"},
{"from": "*", "to": "[*.]vaporhatch.com"},
{"from": "*", "to": "[*.]vaporider.deals"},
{"from": "*", "to": "[*.]verilife.com"},
{"from": "*", "to": "[*.]vermontfreehand.com"},
{"from": "*", "to": "[*.]veuveclicquot.com"},
{"from": "*", "to": "[*.]vgoodiez.com"},
{"from": "*", "to": "[*.]visitgreengoods.com"},
{"from": "*", "to": "[*.]voodooranger.com"},
{"from": "*", "to": "[*.]vpm.com"},
{"from": "*", "to": "[*.]vytaloptions.com"},
{"from": "*", "to": "[*.]wbarmory.com"},
{"from": "*", "to": "[*.]whatacountry.com"},
{"from": "*", "to": "[*.]whiskyandwhiskey.com"},
{"from": "*", "to": "[*.]whistlepigwhiskey.com"},
{"from": "*", "to": "[*.]wickedweedbrewing.com"},
{"from": "*", "to": "[*.]williesremedy.com"},
{"from": "*", "to": "[*.]wilsoncombat.com"},
{"from": "*", "to": "[*.]winc.com"},
{"from": "*", "to": "[*.]winchester.com"},
{"from": "*", "to": "[*.]windycitycigars.com"},
{"from": "*", "to": "[*.]winstoncigarettes.com"},
{"from": "*", "to": "[*.]woodencork.com"},
{"from": "*", "to": "[*.]woodfordreserve.com"},
{"from": "*", "to": "[*.]wulfmods.com"},
{"from": "*", "to": "[*.]ww2collectibles.com"},
{"from": "*", "to": "[*.]xhamster.com"},
{"from": "*", "to": "[*.]xnxx.com"},
{"from": "*", "to": "[*.]xvideos.com"},
{"from": "*", "to": "[*.]yankeespirits.com"},
{"from": "*", "to": "[*.]yocan.com"},
{"from": "*", "to": "[*.]yocanvaporizer.com"},
{"from": "*", "to": "[*.]youbooze.com"},
{"from": "*", "to": "[*.]zamnesia.com"},
{"from": "*", "to": "[*.]zerofoxgivenllc.com"},
{"from": "*", "to": "[*.]zigzag.com"},
{"from": "*", "to": "[*.]zippixtoothpicks.com"}
]
}

View File

@@ -0,0 +1 @@
[{"description":"treehash per file","signed_content":{"payload":"eyJjb250ZW50X2hhc2hlcyI6W3siYmxvY2tfc2l6ZSI6NDA5NiwiZGlnZXN0Ijoic2hhMjU2IiwiZmlsZXMiOlt7InBhdGgiOiJsaXN0ZGF0YS5qc29uIiwicm9vdF9oYXNoIjoiNmVJUlZmTTczUDJjbUxncUQ0UkRQMjU3a0Q5bWY1WUZscHlpREw1dUlfMCJ9LHsicGF0aCI6Im1hbmlmZXN0Lmpzb24iLCJyb290X2hhc2giOiItVlJhUzl1Q2xpeFJaSWR2c0VWMkxJb1l4UDREZHl1NTdUQUVfbUJ1dXBVIn1dLCJmb3JtYXQiOiJ0cmVlaGFzaCIsImhhc2hfYmxvY2tfc2l6ZSI6NDA5Nn1dLCJpdGVtX2lkIjoibmlub2RhYmNlanBlZ2xmamJraGRwbGFvZ2xwY2JmZmoiLCJpdGVtX3ZlcnNpb24iOiI4LjYyOTQuMjA1NyIsInByb3RvY29sX3ZlcnNpb24iOjF9","signatures":[{"header":{"kid":"publisher"},"protected":"eyJhbGciOiJSUzI1NiJ9","signature":"jKit53qyELKtZdFmhNfr8UG21np9jbaiQqVos_AwfKv4_BgX2rGr9tFMYcixECPW2jWz3p_EXucBLRMppysx4tREaZvl9EEIh5rQOs4staXL4VU6ErcZemFbtGSoxxZIXi1xyIIliTA-qt1lzY_I5IrHjMMvCJCYlcElCyXxBseJ4qR0Ow9_VQqkaI9zIliBWVIAOt6c_-dL2hTkqoYCeXzIvqO4_0ui4wcj5WCAujTOc-zBl6WJeVZKtpc6_B5XI7flkjUnu5lGabghojB-Qc9Y-Fm1qZOz0zJPPj26EdqCMnyMpgDxssZyjO4P46Jjc_yMCXcKLpj5XmfoO1wRtScZPn3o4PSSVew305puVe2xJF-IhsbGSR1BWbRyMoQ0sCZkJC3VLdtW_w-emgNhgAGje-SwfkPckDe_vkrPpN6Rti_6J-SizkBUHDJMG-Dbl--_iiWOa_GwGvZx84WkWHxDRbkrhrGjgQcpXbrVtuZe8Fsx305sRj5qq5hxhlbguX_wYTK3Q_L7NjNHIkjOv6BuMF1Jo1EnCM1ey_PBx7z9pkZfRcHrCVhanvfpaXk_GeAuog1H5ESWetFgGuyvFjgApgPUycfo7c23bPIVMitpn8n1kjmUk7q11mzZANESmtDOQGDRlzhTXck6UC9DDP-AgbOMVryMRUS3MKxI58w"},{"header":{"kid":"webstore"},"protected":"eyJhbGciOiJSUzI1NiJ9","signature":"Eh7dVhKTBXsgvpNfC3nIXqJpMFzZD9oXTcm9024Z8zEOFSEw1nHWGU4Yrg_4wCpb2EiSFg9aXcVH9GvpeGg0EcGKbozMqwwmYk8UlOU5jpMf7B-afAFFKngNCuyDThtcWvWY6oKEJSVN7V4NcQ1dfhhxZLCfI8wqTbzEWCDS5vTuG0qZBHtkH4-d7r7W3c8ey4V0HtboOSF7FbHm5pC9x6T-e1uqmU0Ek-0pfHyYh-RYENVKZJN9-w8JF4y5KNN08Cyrn3-GB4IbJ6U7tgwCFnbpQqAr9oSeEcXitN0NmKuKySzvuVdNh_jQdgAOf5fkajDXHdxAWyaU1AErMLrTqQ"}]}}]

File diff suppressed because it is too large Load Diff

View File

@@ -1,5 +1,5 @@
{
"manifest_version": 2,
"name": "listdata.json",
"version": "8.5866.7803"
"version": "8.6294.2057"
}

View File

@@ -1 +0,0 @@
[{"description":"treehash per file","signed_content":{"payload":"eyJjb250ZW50X2hhc2hlcyI6W3siYmxvY2tfc2l6ZSI6NDA5NiwiZGlnZXN0Ijoic2hhMjU2IiwiZmlsZXMiOlt7InBhdGgiOiJMSUNFTlNFIiwicm9vdF9oYXNoIjoiUGIwc2tBVUxaUzFqWldTQnctV0hIRkltRlhVcExiZDlUcVkwR2ZHSHBWcyJ9LHsicGF0aCI6ImNybC1zZXQiLCJyb290X2hhc2giOiJ5cUhucDQ1Z3FrTVVjcGFlWng1RVFSaUxxN2F1STZKbUI0bV9sYktJUVJvIn0seyJwYXRoIjoibWFuaWZlc3QuanNvbiIsInJvb3RfaGFzaCI6Ik45T1pOVGxGdjVMNXlCVGVFM2VYWEFWek5EVG9kd1pYcEotWFRVWnhhYjAifV0sImZvcm1hdCI6InRyZWVoYXNoIiwiaGFzaF9ibG9ja19zaXplIjo0MDk2fV0sIml0ZW1faWQiOiJoZm5rcGltbGhoZ2llYWRkZ2ZlbWpob2ZtZmJsbW5pYiIsIml0ZW1fdmVyc2lvbiI6IjEwMzIxIiwicHJvdG9jb2xfdmVyc2lvbiI6MX0","signatures":[{"header":{"kid":"publisher"},"protected":"eyJhbGciOiJSUzI1NiJ9","signature":"fwBU1Vc9BwO8ks2un1Xtl2ptuu6UMxot_f4bL3nWIOa45Al4H1xipvycidiHmetB69b4wv2kS4HCMUCqh8y1kxQ22v989MvlKerdbr9FpcyQmo6b8KHF5MOUK6SuSB28DRDQGeJsxqB2Jlju8unU-TJyCQ6z0u8DnSXQMgFxxX_MGZxeS0gyYl_FzSlIlPbCBlA7nGU0y_c0OKcMRHPoaHjyFNr9gQOdk_DurKO8dfMOHpeaadWmKMF0RumvnuYJYXJoG-Ws47sY8mvL_2cAbCt2eUsKKbOMoZaZ5WBKbarideC1tETjJmRx408pCN0b77SjzG6hflE4ddDYtNo8aw"},{"header":{"kid":"webstore"},"protected":"eyJhbGciOiJSUzI1NiJ9","signature":"CwDF5pJAYXla8ha21dBet6Q8M4A8W6n7HUJLRdXEXql1upIUPghPdzScfHf8Z7itQApQAPz1MatjO-KbWd7Ev9mDfnHp6ZYWbfEnWHnor3tLPFb8ZcmIpXSPyPDxCLm6SUeTvRx06NG07PysrWqtxwwPsQh0LBDteMCHK2bQhZtotMcNiLgx5TV5cicVzAtaeYUOrQhg-kvbXWLQxB_GEv0AS7p3rhyshZ--aXoAsrll284zrUXaBi5UBADlKUvX6_iLPk3GV3KEse-wKwhVoEzKo8mOQ8zEL94N22RgPJz50MesYxgPw-gmbyHYqOI4uwTjJ5sR9fwtb8JVtIO_Mw"}]}}]

View File

@@ -1,5 +0,0 @@
{
"manifest_version": 2,
"name": "crl-set-5688209328603264380.data",
"version": "10321"
}

View File

@@ -0,0 +1 @@
[{"description":"treehash per file","signed_content":{"payload":"eyJjb250ZW50X2hhc2hlcyI6W3siYmxvY2tfc2l6ZSI6NDA5NiwiZGlnZXN0Ijoic2hhMjU2IiwiZmlsZXMiOlt7InBhdGgiOiJMSUNFTlNFIiwicm9vdF9oYXNoIjoiUGIwc2tBVUxaUzFqWldTQnctV0hIRkltRlhVcExiZDlUcVkwR2ZHSHBWcyJ9LHsicGF0aCI6ImNybC1zZXQiLCJyb290X2hhc2giOiJtTE9TS3RyLUVtZl9JZ19nRjZlMHdDRzMxcW43eGVZR1dPQlZCWGxueEZzIn0seyJwYXRoIjoibWFuaWZlc3QuanNvbiIsInJvb3RfaGFzaCI6IlNXdW5vemttVDdkZEh0Q0N1M0wwaVN4LXRfaG51dlV3ZDQ0NGJtcDViRTgifV0sImZvcm1hdCI6InRyZWVoYXNoIiwiaGFzaF9ibG9ja19zaXplIjo0MDk2fV0sIml0ZW1faWQiOiJoZm5rcGltbGhoZ2llYWRkZ2ZlbWpob2ZtZmJsbW5pYiIsIml0ZW1fdmVyc2lvbiI6IjEwMzI1IiwicHJvdG9jb2xfdmVyc2lvbiI6MX0","signatures":[{"header":{"kid":"publisher"},"protected":"eyJhbGciOiJSUzI1NiJ9","signature":"IbY06hLvjqmo9UNj0FjRXL5g1BiCYmWzYD-g5KZ_SmORhmM_zYBlaZNAcQxaTBZ57Wk4aeTW0CrIyeo3rOEbJO-_TerWmL5CXgXDAuE8CtpCfyx-ylzleoE3LpZmVD-0dctW9DmY5g9wm7iKKM7zklicY8-b5rN6ig6clIIhS-lq_YNaq0Crq96csfZUeX887dGtmSYBAoO97qcLgKUOY3POA5Zlf7tIrO_9cpSe9HP9KpZvQyQAS0PylZ_AcrLIxCieSmiQRD5BUndpGUgUAsvrFI7EmV6qtFsVcKfvUbo4C2ukdz7wsjW_j_BShiSL43szMAmMXI5U3hJYoMkYgg"},{"header":{"kid":"webstore"},"protected":"eyJhbGciOiJSUzI1NiJ9","signature":"G-fT69VWMZsSj0YCPVIqELcH-60HFB2gCpeupJw1oVCEwz5y_Nyh6Ky5rYq6y_fnyRwUrYiE8t-CISVTnTXui_Z9j0G64BIEVquIW1VuNYGT9K9P31ewHlRvd35j1Wu5CWOkR7vkUL7OjeJsLtSGCiNuOIKQoHuVgSlI1iwovIEMc1Pz6ufEZjVb0y0bnh22y0vJVlOWSo89_z0NtUpgV-6vBAzbiNjpN6u9s9nVOP9ZRwCobLFb5KwF1J7RhC6VI9e7kWkI29bUg9MWO_6FI6tzmNNRVQz0dYb1gKYXSazR0Miu_ADJqO9rdhZreigceremz4GwzJAXRdGmIBItWw"}]}}]

View File

@@ -0,0 +1,5 @@
{
"manifest_version": 2,
"name": "crl-set-18193778553362151743.data",
"version": "10325"
}

View File

@@ -22,5 +22,5 @@
"top_topics_and_observing_domains": [ ]
} ],
"hex_encoded_hmac_key": "434BF7DBD7DA573B45E0A11AD9045A61B6221D14AE2F9A341E2FEF659AF071F6",
"next_scheduled_calculation_time": "13414862793246872"
"next_scheduled_calculation_time": "13414862793246926"
}

Binary file not shown.

Binary file not shown.

View File

Before

Width:  |  Height:  |  Size: 31 KiB

After

Width:  |  Height:  |  Size: 31 KiB

View File

Before

Width:  |  Height:  |  Size: 90 KiB

After

Width:  |  Height:  |  Size: 90 KiB

View File

Before

Width:  |  Height:  |  Size: 143 KiB

After

Width:  |  Height:  |  Size: 143 KiB

View File

Before

Width:  |  Height:  |  Size: 354 KiB

After

Width:  |  Height:  |  Size: 354 KiB

View File

Before

Width:  |  Height:  |  Size: 572 KiB

After

Width:  |  Height:  |  Size: 572 KiB

View File

Before

Width:  |  Height:  |  Size: 243 KiB

After

Width:  |  Height:  |  Size: 243 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

View File

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 21 KiB

View File

Before

Width:  |  Height:  |  Size: 50 KiB

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

View File

Before

Width:  |  Height:  |  Size: 50 KiB

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

View File

Before

Width:  |  Height:  |  Size: 50 KiB

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 304 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 603 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 339 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 367 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 312 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 431 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 184 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 552 KiB

Some files were not shown because too many files have changed in this diff Show More