Skip to content

Instantly share code, notes, and snippets.

@acmerfight
Last active September 10, 2026 09:04
Show Gist options
  • Select an option

  • Save acmerfight/855b99ba8753ea0fd8d77d20dbfe64d7 to your computer and use it in GitHub Desktop.

Select an option

Save acmerfight/855b99ba8753ea0fd8d77d20dbfe64d7 to your computer and use it in GitHub Desktop.
新上下文模式的成本:五类固定任务,30 对 / 60 次实测,费用 +22.2%|图表、完整数据与复现脚本

CONTEXT COST STUDY · 2026.09.10 · FROZEN BENCHMARK

开启新上下文模式,任务成本怎样变?

在这五个固定任务中,新模式的 API 费用估值高 22.2%,总 Token 多 19.5%;60 次正式运行全部通过相同验收。

费用差异的 95% 区间为 +11.2%~+33.9%。这轮没有观察到节省,但也没有发生自然跨窗口,因此不能据此判断上下文耗尽后的压缩与恢复收益。

ON cost 22.2% more in this study, with 19.5% more total tokens. All 60 runs passed acceptance; no context-window transitions occurred.

旧模式 = 关闭 features.context_management.experimental_mode新模式 = 开启同一个开关。下文的美元都是按 API Standard 价格计算的估值,不是订阅账单,也不是额度消耗百分比。

先读这三点 本轮证据
平均更贵 旧模式 30 次合计 $10.774530;新模式 30 次合计 $13.169534
统一缓存计价后,方向仍相同 两边都假设 90% 缓存命中率,新模式仍高 13.6%,95% 区间 +5.0%~+22.9%
结论有清楚的边界 五个合成任务、每类六对、同一模型配置;不代表所有任务,不覆盖跨窗口长任务

结论在前 · 完整波动保留 · 方法与复现在后


01 · 五类任务,平均费用都上升

每一对使用相同的需求、初始文件和验收标准,让两种模式从头自然完成任务。每类任务固定跑六对,不按中途结果增减样本。

Mean estimated API cost was higher with ON for each of five fixed tasks, with six runs per mode per task.

任务 旧模式均费 新模式均费 费用变化 Token 变化 验收:旧 / 新
实现记账功能 $0.3742 $0.4457 +19.1% +25.5% 6/6 · 6/6
修复报价缺陷 $0.2835 $0.3399 +19.9% +11.5% 6/6 · 6/6
重构日志统计 $0.4391 $0.5277 +20.2% +17.6% 6/6 · 6/6
代码审查 $0.3172 $0.3732 +17.6% +10.0% 6/6 · 6/6
工单数据分析 $0.3818 $0.5084 +33.2% +31.2% 6/6 · 6/6

均费 = 每模式六次运行的平均费用估值。类别结果为描述性统计,不把每一行都当成已单独证实的普遍规律。

通过同样的验收,说明这轮比较没有拿明显未完成的结果换取更低费用;它不意味着代码质量、可维护性或审查深度在所有维度都相等。

02 · Cache 必须分开算

输入 Token 的单价并不相同。本文分别计算普通输入、缓存命中、缓存写入和输出,避免直接用总 Token 推断费用。

然后保留每次运行实际产生的输入与输出数量,把两边假设为相同缓存命中率,重新计价

Repricing recorded usage at equal cache hit rates of 0%, 50%, 90%, and 100% gives 17.9%, 16.7%, 13.6%, and 11.7% higher cost with ON. Intervals and assumptions are shown.

计价方式 新模式相对旧模式 95% 区间
实际记录的缓存命中 · 主指标 +22.2% +11.2%~+33.9%
两边统一 0% 命中率 +17.9% +10.3%~+25.8%
两边统一 50% 命中率 +16.7% +8.8%~+24.9%
两边统一 90% 命中率 · 主要敏感性分析 +13.6% +5.0%~+22.9%
两边统一 100% 命中率 +11.7% +2.5%~+21.7%

这一步说明,按相同缓存比例重新计价时,费用差异的方向依然存在。 它没有重跑模型,也没有实际控制服务端缓存;不能把 22.2% 与 13.6% 的差额直接解释成“缓存造成的因果影响”。

展开:价格、计算公式与分项明细

冻结的计价规则如下,每百万 Token 计价。价格来源:GPT-6 Astra 官方模型文档,在测量前核对。

类别 每百万 Token
普通输入 $10.00
缓存命中 $1.00
缓存写入 $12.50
输出 $50.00
ordinary = input - cached - cache_write

cost = (ordinary × 10
      + cached × 1
      + cache_write × 12.5
      + output × 50) / 1,000,000

单响应输入超过 272K 时,输入及缓存各项乘 2,输出乘 1.5。推理输出已包含在输出中,不再重复相加。本轮缓存写入为 0。统一缓存比例的敏感性分析同样假设写入为 0,并保留每个请求对应的长上下文倍率。

任务 模式 缓存命中率 普通输入费 命中费 写入费 输出费
记账实现 old 75.7% $0.15309 $0.04772 $0.00000 $0.17337
记账实现 new 76.0% $0.19130 $0.06046 $0.00000 $0.19398
报价修复 old 83.2% $0.11547 $0.05730 $0.00000 $0.11073
报价修复 new 77.6% $0.17235 $0.05986 $0.00000 $0.10770
日志重构 old 82.5% $0.16617 $0.07846 $0.00000 $0.19444
日志重构 new 78.9% $0.23665 $0.08870 $0.00000 $0.20232
代码审查 old 79.3% $0.15220 $0.05835 $0.00000 $0.10669
代码审查 new 75.1% $0.20161 $0.06091 $0.00000 $0.11064
数据分析 old 84.9% $0.13090 $0.07379 $0.00000 $0.17707
数据分析 new 81.6% $0.21040 $0.09355 $0.00000 $0.20448

上表费用是每次任务的平均值。完整精度见 summary.json,逐响应用量见 records.json

03 · 平均更贵,不等于每次都更贵

30 对中,新模式更贵 23 对,更便宜 7 对。这也是需要重复、配对和平衡执行顺序的原因:单次运行不足以代表稳定结果。

ON was more expensive in 23 of 30 matched pairs and less expensive in seven. Each equal-size square shows the direction of one paired result.

图中保留了最极端的正负结果。正式样本没有因费用高、缓存差或不符合预期而被筛掉。

展开:全部 30 对结果
配对 任务 先执行 旧费用 新费用 变化
p01 记账实现 new $0.35359 $0.42865 +21.2%
p02 报价修复 old $0.32727 $0.32638 -0.3%
p03 记账实现 new $0.30804 $0.62051 +101.4%
p04 日志重构 old $0.41725 $0.60507 +45.0%
p05 报价修复 new $0.31521 $0.36303 +15.2%
p06 数据分析 new $0.34976 $0.44290 +26.6%
p07 日志重构 old $0.38576 $0.60079 +55.7%
p08 数据分析 old $0.38011 $0.48921 +28.7%
p09 代码审查 new $0.37705 $0.35556 -5.7%
p10 数据分析 new $0.34177 $0.52266 +52.9%
p11 日志重构 new $0.38186 $0.51123 +33.9%
p12 报价修复 new $0.24304 $0.31350 +29.0%
p13 记账实现 old $0.28163 $0.43215 +53.4%
p14 记账实现 old $0.52546 $0.41018 -21.9%
p15 代码审查 new $0.31467 $0.39426 +25.3%
p16 日志重构 new $0.62726 $0.47037 -25.0%
p17 报价修复 old $0.29360 $0.33658 +14.6%
p18 报价修复 new $0.29141 $0.34457 +18.2%
p19 数据分析 new $0.39602 $0.58443 +47.6%
p20 代码审查 old $0.23476 $0.38360 +63.4%
p21 日志重构 new $0.45997 $0.55510 +20.7%
p22 代码审查 old $0.27003 $0.37513 +38.9%
p23 代码审查 new $0.41210 $0.32885 -20.2%
p24 数据分析 old $0.34736 $0.55517 +59.8%
p25 记账实现 old $0.48561 $0.38610 -20.5%
p26 报价修复 old $0.23049 $0.35543 +54.2%
p27 日志重构 old $0.36234 $0.42348 +16.9%
p28 数据分析 old $0.47555 $0.45624 -4.1%
p29 代码审查 old $0.29484 $0.40155 +36.2%
p30 记账实现 new $0.29073 $0.39686 +36.5%

下载:pairs.csvold / new 表示这一对中谁先执行;所有费用均含完成任务过程中的全部已记录模型响应。


补充分析 · 为什么 Token 变多了?

本轮新增 Token 的 98.6% 来自输入。新模式首次请求就多约 1,961 个输入 Token,而全部任务都未发生自然跨窗口。 这支持“额外上下文开销”的解释,但还没有逐组件的因果归因。

这是正式运行结束后对已有记录的描述性拆解,不是预先注册的主指标,也没有追加模型实验。以下只统计 records.jsonselected = true 的 60 次正式运行。

用量分项 旧模式 · 30 次 新模式 · 30 次 增量
输入 Token(含缓存命中) 2,324,457 2,788,256 +463,799
输出 Token(已含推理输出) 91,476 98,295 +6,819
总 Token 2,415,933 2,886,551 +470,618
模型响应次数 176 182 +6
首次请求的平均输入 Token 10,886.6 12,847.7 +1,961.1

已经直接测到的现象。 30 对首次请求的输入差值全部落在 1,955–1,969 Token,启动差异很稳定。整个任务过程中,平均每次响应的输入从 13,207 增至 15,320 Token(约 +16.0%);响应次数增加约 3.4%。因此,总量上涨主要体现在模型收到的输入,而不是生成的输出。这里的“输入”包括请求携带的上下文,不只指用户新写的需求。

源码支持的机制解释。 在核对的 Codex 实现 中,实验模式满足启用条件时会开启 Token 预算管理、历史/笔记扩展,并解析模型提供的上下文管理指导。这与首次请求中稳定出现的额外输入相吻合;这些上下文在后续请求继续携带时,也继续计入输入用量。源码用于解释机制,不等于已对测量二进制、服务端行为和每段输入完成逐一归因。

本轮没有覆盖的收益。 全部 60 次运行的自然跨窗口次数为 0。实验因此测到了日常额外开销,却没有测到窗口耗尽后历史整理与恢复可能带来的收益,不能据此推出跨窗口长任务也一定更贵。

缓存会影响费用,但不消除 Token 计数。 按合计输入加权,旧模式缓存命中比例为 81.5%,新模式为 78.2%;缓存 Token 仍计入输入总量,只是单价更低。缓存构成变化与费用增长更明显有关,但不是全部解释:上文统一缓存比例后的费用差异仍为正。不能把重计价前后的差额当成缓存的已识别因果效应。

归因边界。 98.6% 是“新增 Token 中输入所占的比例”,不是“98.6% 已证明由某段管理提示造成”。本轮没有分别移除管理指导、工具定义或其他组件,也没有固定两种模式的执行轨迹。因而不能精确拆出各组件贡献,不能把约 1,961 Token 简单乘以响应次数当成已测得的独立因果成本,也不能断言额外响应必然由模式引起。

展开:用已发布记录复算这项拆解

在下载 Gist 的目录运行以下 Python 3 代码,无第三方依赖,不会调用模型:

import json
from statistics import mean

runs = [r for r in json.load(open("records.json"))["runs"] if r["selected"]]
for mode in ("old", "new"):
    selected = [r for r in runs if r["mode"] == mode]
    counts = {key: sum(r["usage"][key] for r in selected)
              for key in ("input_tokens", "output_tokens", "total_tokens",
                          "cached_input_tokens")}
    counts["responses"] = sum(len(r["responses"]) for r in selected)
    counts["first_input_mean"] = mean(
        r["responses"][0]["usage"]["input_tokens"] for r in selected)
    print(mode, counts)

pairs = {p: {r["mode"]: r for r in runs if r["pair_id"] == p}
         for p in {r["pair_id"] for r in runs}}
deltas = [p["new"]["responses"][0]["usage"]["input_tokens"]
          - p["old"]["responses"][0]["usage"]["input_tokens"]
          for p in pairs.values()]
print("paired first-input difference:", mean(deltas), min(deltas), max(deltas))

04 · 怎样让比较尽可能公平

同一个任务,自然做到完成

控制项 本轮做法
模型与配置 gpt-6-astra / low / default;CLI 0.153.4
输入 每对的需求和初始文件完全相同,用 SHA-256 验证
改变的变量 配对配置只改变实验性上下文管理开关;开关带来的提示与工具差异属于模式本身
会话隔离 每次使用全新工作目录与本地配置;共同关闭跨会话记忆、插件、子代理、宿主技能发现和 shell 快照
执行顺序 每类恰好三对旧先跑、三对新先跑;任务间打乱;全程串行
样本量 预先固定五类 × 六对 = 30 对 / 60 次,不按费用提前停止
自然过程 不强制压缩,不降低上下文阈值,不要求预写记忆或安排人为阶段
完成标准 原始外部验收;最多两次修复反馈,费用全部保留;本轮实际反馈 0 次

验收看真实输出

任务 用户可见的完成结果 每次固定检查
记账功能 JSONL 记账 CLI 按规则输出余额和错误 57
报价修复 布尔数量、折扣边界、税额舍入等行为正确 93
日志重构 CLI 行为不变,验证与统计移入领域模块 69
代码审查 三个真实缺陷及可执行复现,对比正确参考实现 6
数据分析 可复用脚本生成报告,并通过三个未直接展示的数据集 11

验收脚本放在模型工作目录之外,但没有把这一点夸大为不可访问的远程盲测。另对审查解释、重构职责和数据报告做了 36 份补充人工式检查,由本助手完成,不是独立人类盲审。自动验收不依据新旧模式改变规则。

统计单位是一对任务

主指标是整个固定任务集合的新旧平均费用之比:

change = (sum(new_cost) / sum(old_cost) - 1) × 100%

两边各 30 次,因此也等于平均任务费用之比;不是把 30 个百分比直接取平均

95% 区间采用预先规定的分层配对 bootstrap:每类内部对六个完整配对有放回抽样,合并后重算比值,共 20,000 次,随机种子 81723。任务顺序种子为 202609100814。这些区间反映五个固定任务的运行波动,不能推广成所有真实世界任务的置信区间。

展开:失败、重跑与全部资源消耗

正式批次中有一次 responseStreamDisconnected。按照运行前冻结的规则,整对第一次尝试作废,两边都从干净状态重跑;没有只重跑较贵或失败的一边。被排除的两次尝试保留在公开数据中,主比较使用第二次完整配对。连接中断的具体原因未确定。

更早的准备批次发现需求文档仍引用已从工作目录移走的 acceptance.py。为避免额外找文件的工作污染结果,12 次准备运行整批排除,移除过时交付段落后,完整重启全部 30 对。没有按费用挑选保留结果。

用途 次数 Token API 估值
正式配对样本 60 5,302,484 $23.944064
中断导致的整对作废尝试 2 126,738 $0.661092
整批排除的准备运行 12 980,701 $4.438194
模型可用性预检 1 13,231 $0.132510
登记范围内合计 75 6,423,154 $29.175860

只统计登记的实验及准备调用,不包括调研对话或账户其他任务。正式与中断尝试公开逐响应用量;更早准备与预检公开汇总。见 resources.jsoninvalid_attempts.csv

05 · 可以复现到哪一步

离线数值复算和保存产物的重新验收都可以直接运行。 重新调用模型需要自己的可用 Codex 环境,且不能保证相同输出或费用。

A. 复算本文数值 · 不调用模型

下载本 Gist 的所有文件,或使用 Git:

git clone https://gist.github.com/855b99ba8753ea0fd8d77d20dbfe64d7.git context-cost-study
cd context-cost-study

# Python 3.11+,只用标准库
python3 reproduce.py verify

这个命令会核对冻结源文件、任务输入、保存产物、所有正式及中断尝试的逐响应计价与累计 Token,重新计算六组指标的 bootstrap 区间,并与公开表格比较。

selected_pairs: 30
accepted_runs: 60
all_attempts_accounted: 62
responses_verified: 367
natural_context_transitions: 0
passed: true

结果写入 recomputed.json。复算不需要登录、API Key、模型调用或第三方 Python 包。

B. 重新验收全部产物 · 不调用模型

python3 reproduce.py recheck

脚本在临时目录中恢复原始验收程序与 60 份正式产物,通过真实 CLI 重新检查,并逐次打印结果。发布前已实际跑通 60/60

想阅读完整原始任务、代码和数据:

python3 reproduce.py unpack ../context-cost-evidence

experiment.json 保存运行前冻结的 36 个文件原文及哈希;deliverables.json 以内容哈希去重保存全部尝试的工作文件。公开包只移除了会话身份、个人路径和消息元数据,保留用量、结果与产物。认证文件、私有模型指令和模型目录内容不在公开包中。

C. 重画本文图表 · 不调用模型

python3 -m venv .venv
.venv/bin/pip install matplotlib==3.11.1
.venv/bin/python render_figures.py

四张 SVG 从公开 JSON / CSV 自动生成,图内文字全部为英文;PNG 预览输出到 previews/。字体已转成 SVG 路径,阅读时不依赖外部字体服务。

D. 再做一轮实时模型实验 · 需要自己的环境,会消耗用量

准备命令本身不会调用模型:

python3 reproduce.py prepare-live ../context-cost-replay \
  --codex /path/to/codex \
  --catalog /path/to/your/model-catalog.json

--codex 必须指向名为 codex 的实际可执行文件;--catalog 是你自己的兼容模型目录 JSON。本轮目录含私有模型材料,因此没有随 Gist 发布。严格复现本地依赖需要它与公开指纹一致。若你没有原快照,不能声称环境逐字节相同。

默认拒绝 CLI 或模型目录指纹不一致。若明确要做不同环境下的方法复验,可添加 --allow-environment-drift;差异会写入 replication-environment.json,不能与本轮视为同一冻结环境。

准备完成、检查源代码后,再明确启动:

# 这一条才会调用模型:60 次运行,另有最多三次整对基础设施尝试
python3 ../context-cost-replay/start.py

# 完成固定样本后,生成该轮自己的结果
python3 ../context-cost-replay/analyze.py

原始 runner 使用现有的 ~/.codex/auth.json 登录;本 Gist 不提供、上传或复制凭据。新一轮需要你自己的模型权限。服务端权重、采样随机性与共享缓存无法由客户端冻结,即使本地依赖一致,也不承诺相同模型输出或费用。


06 · 如何使用这个结论

如果关心的是这些能在单个上下文窗口内自然完成的任务是否更省,本轮证据支持:开启新模式没有带来成本节省,平均费用更高。

如果关心的是长任务耗尽窗口后,压缩、恢复、历史信息保留是否更好,本轮没有触及那个条件,因此没有给出答案。这里不通过人为强制切换窗口来补造结论。

五个任务都是合成的 Python CLI 工作,覆盖四个业务领域,需求以英文提供。重复执行增加了对这些任务运行波动的了解,并没有把五个任务变成随机抽取的大规模真实世界基准。

文件索引与审计记录
文件 内容
reproduce.py 离线复算、产物验收、文件恢复与新实验准备入口
experiment.json 冻结任务、验收程序、runner、顺序、配置与环境指纹
records.json 62 次正式/作废尝试、367 个响应的用量与结果
deliverables.json 按内容哈希去重保存的工作文件
pairs.csv 全部 30 对主比较数据
summary.json / effects.json 类别汇总与全部统计区间
audit.csv / manual-audit.json 自动验收与补充检查记录
verification.json 原始完整本地副本的独立目录复算记录
PUBLICATION-CHECKS.json 公开材料的复算与重新验收结果
resources.json 准备、正式与重跑的资源账
render_figures.py 本文四张图的生成代码
analyze_live.py 新一轮实时实验使用的数值分析器

原冻结文件清单 SHA-256:

31d1cbce3b3df5cc4865a3e0eb0f9258390df4a1336da79d031a63be4e9fe785

统计与图表由保存的响应计数生成,不由模型凭感觉打分。公开计数并不等于提供了服务端签名证明;模式与输入一致性的审计依赖保存的客户端证据。原始完整记录已在不含认证和运行时目录的独立副本中复算,主要输出逐字节相同;公开版经过元数据删减后,另行通过了数值与产物验收。

MEASURE WHAT HAPPENED. KEEP THE LIMITS VISIBLE.

Display the source blob
Display the rendered blob
Raw
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Display the source blob
Display the rendered blob
Raw
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Display the source blob
Display the rendered blob
Raw
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Display the source blob
Display the rendered blob
Raw
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
"""Original numeric analyzer, with public-replication presentation only; no model calls."""
import pathlib,json,csv,hashlib,statistics,random,math,sys
from decimal import Decimal
R=pathlib.Path(__file__).resolve().parent
METRIC_LABELS={'usd':'实际缓存下的 API 费用估值(主指标)','total_tokens':'总 Token','normalized_0_usd':'统一 0% 缓存命中率的费用估值','normalized_50_usd':'统一 50% 缓存命中率的费用估值','normalized_90_usd':'统一 90% 缓存命中率的费用估值','normalized_100_usd':'统一 100% 缓存命中率的费用估值'}
CASES=['feature','bugfix','refactor','review','data'];LABELS=dict(zip(CASES,['实现记账功能','修复报价缺陷','重构日志统计','代码审查','工单数据分析']))
def sha(p):return hashlib.sha256(p.read_bytes()).hexdigest()
def hashes(p):return {str(x.relative_to(p)):sha(x) for x in sorted(p.rglob('*')) if x.is_file() and '__pycache__' not in x.parts}
def canonical_context(c,folder):
c=dict(c)
for k in ['turn_id','root_turn_id']:c.pop(k,None)
original_work=pathlib.Path(c['cwd']);original_root=original_work.parents[2]
return json.loads(json.dumps(c).replace(str(original_work),'<WORK>').replace(str(original_root/'.runtime'/folder.name),'<PROFILE>'))
def verify_run(folder):
r=json.loads((folder/'result.json').read_text());e=json.loads((folder/'evidence.json').read_text());cfg=json.loads((folder/'config.json').read_text());initial=json.loads((folder/'initial-hashes.json').read_text());assert initial==hashes(R/'fixtures'/r['case'])
assert sha(folder/'prompt.txt')==r['prompt_sha256']==sha(R/'fixtures'/r['case']/'TASK.txt')
assert e['cli_version']==json.loads((R/'environment.json').read_text())['cli_version'].removeprefix('codex-cli ') and r['mode_verified'] and e['experimental_marker']==(r['mode']=='new')
t=json.loads((folder/'thread.json').read_text());assert (t['model'],t['reasoningEffort'],t['serviceTier'])==('gpt-6-astra','low','default')
assert len({p['response_id'] for p in e['raw_records']})==len(e['usage'])
cost=Decimal(0)
for p in e['raw_records']:
u=p['usage'];plain=u['input_tokens']-u['cached_input_tokens']-u.get('cache_write_input_tokens',0);assert plain>=0 and u['total_tokens']==u['input_tokens']+u['output_tokens'] and 0<=u['reasoning_output_tokens']<=u['output_tokens']
ci=Decimal(plain)*10+Decimal(u['cached_input_tokens'])+Decimal(u.get('cache_write_input_tokens',0))*Decimal('12.5');co=Decimal(u['output_tokens'])*50
if u['input_tokens']>272000:ci*=2;co*=Decimal('1.5')
cost+=(ci+co)/1000000
assert abs(cost-Decimal(str(r['usage']['usd'])))<Decimal('1e-10')
for k in ['input_tokens','cached_input_tokens','cache_write_input_tokens','output_tokens','total_tokens']:
assert sum(p['usage'].get(k,0) for p in e['raw_records'])==r['usage'][k]==e['raw_records'][-1]['thread_token_usage'].get(k,0)
protected=['README.md','TASK.txt']+[k for k in initial if r['case']=='review' and k.startswith('ledger/') or r['case']=='data' and k.startswith('data/')]
intact=all(sha(folder/'work'/k)==initial[k] for k in protected);assert intact==r['protected_files_unchanged']
r['quality_pass']=r['status']=='completed' and intact and r['acceptance']['passed']==r['acceptance']['total'];r['run']=folder.name
return r,e,cfg,initial
def main():
manifest=json.loads((R/'frozen-manifest.json').read_text())
for f,d in manifest.items():assert sha(R/f)==d,('frozen file modified',f)
schedule=json.loads((R/'schedule.json').read_text())['pairs'];done=[p for p in schedule if (R/'pairs'/f"{p['pair_id']}.json").exists()]
if len(done)!=30 and '--partial' not in sys.argv:raise SystemExit(f'Only {len(done)}/30 pairs complete; no final analysis produced')
runs=[];pairs=[];requests=[];audit=[];invalid=[];base_hashes=set();chosen=set()
for spec in done:
p=json.loads((R/'pairs'/f"{spec['pair_id']}.json").read_text());assert p['pair']==spec
rr=[]
for name in p['runs']:
folder=R/'runs'/name;r,e,cfg,initial=verify_run(folder);rr.append((r,e,cfg,initial));chosen.add(name);runs.append(r);base_hashes.add(e['base_instructions_sha256'])
requests.extend({'case':r['case'],'pair_id':r['pair_id'],'mode':r['mode'],'run':name,**u} for u in e['usage'])
audit.append({'run':name,'case':r['case'],'mode':r['mode'],'quality_pass':r['quality_pass'],'passed':r.get('acceptance',{}).get('passed'),'total':r.get('acceptance',{}).get('total'),'feedback_turns':max(0,len(r['turns'])-1),'context_transitions':r['context_transitions'],'accounting_verified':True,'inputs_verified':True,'mode_verified':r['mode_verified'],'protected_files_unchanged':r['protected_files_unchanged']})
assert [r[0]['mode'] for r in rr]==spec['order']
assert rr[0][3]==rr[1][3]
assert {k for k in rr[0][2] if rr[0][2][k]!=rr[1][2][k]}=={'features.context_management.experimental_mode'}
assert canonical_context(rr[0][1]['turn_contexts'][0],R/'runs'/rr[0][0]['run'])==canonical_context(rr[1][1]['turn_contexts'][0],R/'runs'/rr[1][0]['run'])
ab={x[0]['mode']:x[0] for x in rr};a,b=ab['old'],ab['new'];row={'case':spec['case'],'pair_id':spec['pair_id'],'rep':spec['rep'],'first':spec['order'][0],'attempt':p['selected_attempt'],'old_quality_pass':a['quality_pass'],'new_quality_pass':b['quality_pass']}
for k in ['usd','total_tokens','normalized_0_usd','normalized_50_usd','normalized_90_usd','normalized_100_usd']:
row['old_'+k]=a['usage'][k];row['new_'+k]=b['usage'][k];row[k+'_change_percent']=100*(b['usage'][k]/a['usage'][k]-1)
pairs.append(row)
assert len(base_hashes)<=1,'base instruction changed'
for p in sorted((R/'runs').glob('*/result.json')):
if p.parent.name not in chosen:
r=json.loads(p.read_text());invalid.append({'run':p.parent.name,'case':r['case'],'mode':r['mode'],'status':r['status'],'tokens':r.get('usage',{}).get('total_tokens',0),'usd':r.get('usage',{}).get('usd',0)})
summary=[]
for case in CASES:
for mode in ['old','new']:
rows=[r for r in runs if r['case']==case and r['mode']==mode]
if not rows:continue
s={'case':case,'mode':mode,'n':len(rows),'accepted':sum(x['quality_pass'] for x in rows),'context_transitions':sum(x['context_transitions'] for x in rows),'feedback_turns':sum(max(0,len(x['turns'])-1) for x in rows)}
for k in ['total_tokens','input_tokens','cached_input_tokens','cache_write_input_tokens','ordinary_input_tokens','output_tokens','ordinary_usd','cached_usd','cache_write_usd','output_usd','usd','normalized_0_usd','normalized_50_usd','normalized_90_usd','normalized_100_usd']:
s[k+'_mean']=statistics.mean(x['usage'][k] for x in rows);s[k+'_median']=statistics.median(x['usage'][k] for x in rows)
s['cache_hit_percent']=100*sum(x['usage']['cached_input_tokens'] for x in rows)/sum(x['usage']['input_tokens'] for x in rows);summary.append(s)
effects=[]
for metric in ['usd','total_tokens','normalized_0_usd','normalized_50_usd','normalized_90_usd','normalized_100_usd']:
old=sum(p['old_'+metric] for p in pairs);new=sum(p['new_'+metric] for p in pairs);effect={'metric':metric,'old_total':old,'new_total':new,'change_percent':100*(new/old-1),'paired_geomean_change_percent':100*(math.exp(statistics.mean(math.log(p['new_'+metric]/p['old_'+metric]) for p in pairs))-1)}
if len(done)==30:
groups=[[p for p in pairs if p['case']==c] for c in CASES];rng=random.Random(81723);boot=[]
for _ in range(20000):
sampled=[group[rng.randrange(6)] for group in groups for _ in range(6)];a=sum(x['old_'+metric] for x in sampled);b=sum(x['new_'+metric] for x in sampled);boot.append(100*(b/a-1))
boot.sort()
def percentile(q):
x=(len(boot)-1)*q;k=int(x);return boot[k]+(boot[min(k+1,len(boot)-1)]-boot[k])*(x-k)
effect['bootstrap_95_low_percent']=percentile(.025);effect['bootstrap_95_high_percent']=percentile(.975)
effects.append(effect)
for name,data in [('summary',summary),('pairs',pairs),('requests',requests),('audit',audit),('effects',effects),('invalid_attempts',invalid)]:
(R/f'{name}.json').write_text(json.dumps(data,indent=2))
if data:
with (R/f'{name}.csv').open('w') as f:
w=csv.DictWriter(f,fieldnames=list(dict.fromkeys(k for d in data for k in d)));w.writeheader();w.writerows(data)
lines=['# 冻结基准后的确认实验','','旧模式 = 关闭 experimental context management;新模式 = 开启该开关。本报告只使用本轮预先固定的任务、样本数和规则,不合并上一轮。gpt-6-astra / low / default,客户端与模型目录指纹见 environment.json;按本轮准备时的快照锁定。每类六对,恰好三对旧先跑、三对新先跑,跨任务随机排列,全程串行。每次使用全新的项目和本地配置目录。','',f'已完成 {len(done)}/30 对;质量通过 {sum(r["quality_pass"] for r in runs)}/{len(runs)} 次;自然上下文切换 {sum(r["context_transitions"] for r in runs)} 次。','', '## 主结果','','每格为每模式六次的平均值。美元是 API Standard Token 估值,不是订阅实付。','','| 任务 | 旧费用 | 新费用 | 费用变化 | Token 变化 | 验收旧/新 |','|---|---:|---:|---:|---:|---|']
for case in CASES:
ss={s['mode']:s for s in summary if s['case']==case}
if len(ss)<2:continue
a,b=ss['old'],ss['new'];lines.append(f"| {LABELS[case]} | ${a['usd_mean']:.4f} | ${b['usd_mean']:.4f} | {(b['usd_mean']/a['usd_mean']-1)*100:+.1f}% | {(b['total_tokens_mean']/a['total_tokens_mean']-1)*100:+.1f}% | {a['accepted']}/{a['n']},{b['accepted']}/{b['n']} |")
lines+=['','## 整体差异与缓存敏感性','','主指标为固定任务集合中新旧平均费用之比。置信区间按任务分层,以整对为单位进行 20,000 次 bootstrap,保留配对关系;它反映这些固定任务的运行波动,不代表所有任务的总体区间。','','统一缓存比例仅重新计价,不重新生成模型执行路径;不是实际账单,也不能消除缓存可能对后续行为的影响。','','| 指标 | 新相对旧 | 95% 区间 |','|---|---:|---|']
for e in effects:
ci=f"[{e['bootstrap_95_low_percent']:+.1f}%, {e['bootstrap_95_high_percent']:+.1f}%]" if 'bootstrap_95_low_percent' in e else '未完成固定样本'
lines.append(f"| {METRIC_LABELS[e['metric']]} | {e['change_percent']:+.1f}% | {ci} |")
lines+=['','## 实际缓存和分项费用','','每百万 Token:普通输入 $10,缓存命中 $1,缓存写入 $12.50,输出 $50;单请求输入超过 272K 时输入各项乘 2、输出乘 1.5。推理输出不重复相加。[官方价格](https://developers.openai.com/api/docs/models/gpt-6-astra)。','','| 任务 | 模式 | 命中率 | 普通输入费 | 缓存命中费 | 缓存写入费 | 输出费 |','|---|---|---:|---:|---:|---:|---:|']
for s in summary:lines.append(f"| {LABELS[s['case']]} | {s['mode']} | {s['cache_hit_percent']:.1f}% | ${s['ordinary_usd_mean']:.5f} | ${s['cached_usd_mean']:.5f} | ${s['cache_write_usd_mean']:.5f} | ${s['output_usd_mean']:.5f} |")
lines+=['','## 所有配对','','| 任务 | 配对 | 先执行 | 旧费用 | 新费用 | 费用变化 |','|---|---|---|---:|---:|---:|']
for p in pairs:lines.append(f"| {LABELS[p['case']]} | {p['pair_id']} | {p['first']} | ${p['old_usd']:.5f} | ${p['new_usd']:.5f} | {p['usd_change_percent']:+.1f}% |")
lines+=['','## 质量、范围与失败记录','','需求和初始文件在每对中完全相同,验收脚本不放入模型工作目录,程序通过真实 CLI 输入输出检查。工单分析还在三个未直接展示的数据集上验证可复用脚本。审查复现与正确参考实现比较。规格、审查源码和原始数据的完整性检查纳入质量判定。','',f"计入主比较的运行总 Token 为 {sum(r['usage']['total_tokens'] for r in runs):,},Token 费用估值 ${sum(r['usage']['usd'] for r in runs):.6f}。额外/未选中尝试 {len(invalid)} 次,已记录 {sum(x['tokens'] for x in invalid):,} Token、${sum(x['usd'] for x in invalid):.6f},详见 invalid_attempts.csv。",'', '在任务类别、客户端版本、插件与记忆状态、任务顺序、验收和失败处理方面比上一轮更严格。但服务端权重版本、随机性、缓存状态和账户其他流量无法由客户端冻结。模式开关引入的系统提示和工具差异属于处理的一部分,不要求两边完整系统上下文逐字相同。','', '本轮是五个固定的合成任务、四个业务领域和一个编程语言;尚非独立抽样的真实世界任务集。公开需求下的外部验收降低针对已知测试作答的风险,但不是不可访问的远程盲测。不得把固定任务 bootstrap 区间推广为所有任务的置信区间。','']
if not any(r['context_transitions'] for r in runs):lines+=['本轮没有自然跨窗口,因此不能证明或否定窗口耗尽后上下文压缩/恢复的节省。没有人为强制压缩来制造长任务结论。','']
lines+=['冻结协议见 PLAN.md,执行顺序见 schedule.json,完整性见 frozen-manifest.json,明细见 pairs.csv、requests.csv、audit.csv。已有数值能离线精确复算,重新执行可复用相同本地基准,但不能保证相同模型输出或费用。','']
preflight=json.loads((R/'preflight-cost.json').read_text()) if (R/'preflight-cost.json').exists() else None
if preflight:lines+=['准备阶段模型可用性检查单独记录:'+str(preflight['totals']['total_tokens'])+' Token,估值 $'+format(preflight['totals']['usd'],'.6f')+',不混入两种模式的任务比较。','']
revision=json.loads((R/'protocol-revision.json').read_text()) if (R/'protocol-revision.json').exists() else None
if revision:
lines+=['## 准备阶段修订披露','',revision['reason'],'',f"被整批排除的准备运行共有 {len(revision['runs'])} 次,已记录 {revision['tokens']:,} Token、API 估值 ${revision['usd']:.6f};可用性预检另记 ${revision['availability_preflight']['usd']:.6f}。这些数字不混入正式配对结果,也没有从资源消耗记录中删除。详见 protocol-revision.json。",'']
lines+=['这里的用量只包括登记的 CLI 测试运行及单列的预检、准备尝试,不包括本调研对话或账户其他任务。','复现步骤见 REPRODUCE.md。','']
if len(done)==30:
primary=next(e for e in effects if e['metric']=='usd');normalized=next(e for e in effects if e['metric']=='normalized_90_usd')
verdict='本固定任务集合支持新模式费用更高。' if primary['bootstrap_95_low_percent']>0 else ('本固定任务集合支持新模式费用更低。' if primary['bootstrap_95_high_percent']<0 else '本固定任务集合尚不足以确定费用差异方向。')
conclusion=['## 结论','',verdict+f"按实际缓存计价,新相对旧变化 {primary['change_percent']:+.1f}%(95% 区间 {primary['bootstrap_95_low_percent']:+.1f}% 至 {primary['bootstrap_95_high_percent']:+.1f}%);统一 90% 缓存命中率重新计价为 {normalized['change_percent']:+.1f}%({normalized['bootstrap_95_low_percent']:+.1f}% 至 {normalized['bootstrap_95_high_percent']:+.1f}%)。该判断只适用于本轮固定任务与运行条件。",'']
at=lines.index('## 主结果');lines[at:at]=conclusion
lines+=['This live replication does not automatically include manual inspection or a separate offline-copy audit.','']
(R/'report.md').write_text('\n'.join(lines));print(json.dumps({'pairs':len(done),'quality_pass':sum(r['quality_pass'] for r in runs),'runs':len(runs),'effects':effects},indent=2))
if __name__=='__main__':main()
run case mode quality_pass passed total feedback_turns context_transitions accounting_verified inputs_verified mode_verified protected_files_unchanged
p01-t1-1 feature new True 57 57 0 0 True True True True
p01-t1-2 feature old True 57 57 0 0 True True True True
p02-t1-1 bugfix old True 93 93 0 0 True True True True
p02-t1-2 bugfix new True 93 93 0 0 True True True True
p03-t1-1 feature new True 57 57 0 0 True True True True
p03-t1-2 feature old True 57 57 0 0 True True True True
p04-t1-1 refactor old True 69 69 0 0 True True True True
p04-t1-2 refactor new True 69 69 0 0 True True True True
p05-t1-1 bugfix new True 93 93 0 0 True True True True
p05-t1-2 bugfix old True 93 93 0 0 True True True True
p06-t1-1 data new True 11 11 0 0 True True True True
p06-t1-2 data old True 11 11 0 0 True True True True
p07-t1-1 refactor old True 69 69 0 0 True True True True
p07-t1-2 refactor new True 69 69 0 0 True True True True
p08-t1-1 data old True 11 11 0 0 True True True True
p08-t1-2 data new True 11 11 0 0 True True True True
p09-t1-1 review new True 6 6 0 0 True True True True
p09-t1-2 review old True 6 6 0 0 True True True True
p10-t1-1 data new True 11 11 0 0 True True True True
p10-t1-2 data old True 11 11 0 0 True True True True
p11-t1-1 refactor new True 69 69 0 0 True True True True
p11-t1-2 refactor old True 69 69 0 0 True True True True
p12-t1-1 bugfix new True 93 93 0 0 True True True True
p12-t1-2 bugfix old True 93 93 0 0 True True True True
p13-t1-1 feature old True 57 57 0 0 True True True True
p13-t1-2 feature new True 57 57 0 0 True True True True
p14-t2-1 feature old True 57 57 0 0 True True True True
p14-t2-2 feature new True 57 57 0 0 True True True True
p15-t1-1 review new True 6 6 0 0 True True True True
p15-t1-2 review old True 6 6 0 0 True True True True
p16-t1-1 refactor new True 69 69 0 0 True True True True
p16-t1-2 refactor old True 69 69 0 0 True True True True
p17-t1-1 bugfix old True 93 93 0 0 True True True True
p17-t1-2 bugfix new True 93 93 0 0 True True True True
p18-t1-1 bugfix new True 93 93 0 0 True True True True
p18-t1-2 bugfix old True 93 93 0 0 True True True True
p19-t1-1 data new True 11 11 0 0 True True True True
p19-t1-2 data old True 11 11 0 0 True True True True
p20-t1-1 review old True 6 6 0 0 True True True True
p20-t1-2 review new True 6 6 0 0 True True True True
p21-t1-1 refactor new True 69 69 0 0 True True True True
p21-t1-2 refactor old True 69 69 0 0 True True True True
p22-t1-1 review old True 6 6 0 0 True True True True
p22-t1-2 review new True 6 6 0 0 True True True True
p23-t1-1 review new True 6 6 0 0 True True True True
p23-t1-2 review old True 6 6 0 0 True True True True
p24-t1-1 data old True 11 11 0 0 True True True True
p24-t1-2 data new True 11 11 0 0 True True True True
p25-t1-1 feature old True 57 57 0 0 True True True True
p25-t1-2 feature new True 57 57 0 0 True True True True
p26-t1-1 bugfix old True 93 93 0 0 True True True True
p26-t1-2 bugfix new True 93 93 0 0 True True True True
p27-t1-1 refactor old True 69 69 0 0 True True True True
p27-t1-2 refactor new True 69 69 0 0 True True True True
p28-t1-1 data old True 11 11 0 0 True True True True
p28-t1-2 data new True 11 11 0 0 True True True True
p29-t1-1 review old True 6 6 0 0 True True True True
p29-t1-2 review new True 6 6 0 0 True True True True
p30-t1-1 feature new True 57 57 0 0 True True True True
p30-t1-2 feature old True 57 57 0 0 True True True True
{
"public_numeric_verification": {
"passed": true,
"selected_pairs": 30,
"selected_runs": 60,
"all_attempts": 62,
"responses": 367,
"method": "Standard-library exact rational price recomputation plus fixed-seed stratified paired bootstrap; verified against published numeric tables"
},
"saved_deliverable_acceptance": {
"passed": 60,
"total": 60,
"method": "Original external CLI acceptance executed against reconstructed public deliverables"
},
"figure_review": {
"svg_figures": 4,
"text_language": "English",
"source": "Published JSON and CSV, rendered with Matplotlib 3.11.1"
},
"live_preparation": {
"passed": true,
"fingerprints": "Matched original CLI and catalog locally",
"model_calls": 0,
"authentication_copied": false
},
"redaction": "Identity, private path and message metadata omitted; no authentication or private model catalog published.",
"github_delivery": {
"downloaded_file_count": 20,
"offline_numeric_recomputation_passed": true,
"inline_svg_images": 4,
"image_proxy_http_status": 200,
"image_content_type": "image/svg+xml",
"csv_line_endings": "LF"
}
}
This file has been truncated, but you can view the full file.
{"schema":1,"blobs":{"2b7cb524434a9151370c35ae07a8010552105c2e14242b425c4e355ba82aefb6":"# Ledger CLI\n\nImplement a Python standard-library-only command-line tool runnable as `python3 -m ledger`. It reads JSON Lines from stdin and writes one summary JSON object to stdout after all input validates. This is an in-memory batch transformation; no database or network is needed.\n\n## Input contract\n\nIgnore blank lines. Nonblank lines must each contain a JSON object. Physical input line numbers start at 1 and include blank lines. Events have exactly these fields:\n\n- Credit or debit: `id`, `type` (`credit` or `debit`), `account`, `currency`, `amount`.\n- Transfer: `id`, `type` (`transfer`), `from`, `to`, `currency`, `amount`.\n\nAll IDs and account names match ASCII `[A-Za-z0-9_-]{1,32}`, case-sensitively. Do not trim identifiers. Currency is exactly `USD` or `EUR`. Amount is an integer in cents, from 1 through 1,000,000,000,000 inclusive; booleans and floats are not integers for this contract. Reject missing/extra fields, incorrect types, unknown event types, and transfers to the same account.\n\nProcess valid events in input order. Accounts start with both currency balances at zero. Credit increases a balance, debit decreases it, and transfer moves it between accounts without changing the currency total. Reject a debit or transfer with insufficient source funds. Keep accounts in the summary even after their balances become zero.\n\nEvent IDs are global across accounts and currencies. Validate an event's schema first. If the ID was already seen with an identical event object (JSON key order does not matter), skip it and increment `duplicates`; do not reapply it or recheck its balance effect. If the same ID has different content, fail with `DUPLICATE_ID`. `processed` counts unique applied events only.\n\n## Output and failures\n\nOn success, exit 0, leave stderr empty, and emit exactly one JSON value plus a trailing newline:\n\n```\n{\"processed\":2,\"duplicates\":0,\"accounts\":[{\"id\":\"a\",\"USD\":70,\"EUR\":0},{\"id\":\"b\",\"USD\":30,\"EUR\":0}],\"totals\":{\"USD\":100,\"EUR\":0}}\n```\n\nSort accounts lexicographically by ID. Always include both currency balances. Totals equal the sum of displayed accounts. Empty input succeeds with zero counts, an empty accounts array and zero totals.\n\nOn any input failure, exit 2, stdout must be completely empty (even if earlier events were valid), and stderr contains exactly one JSON object plus newline: `{\"error\":{\"code\":\"CODE\",\"line\":N}}`. Do not echo raw input or emit tracebacks. Use `INVALID_JSON` for malformed JSON, `INVALID_EVENT` for schema/identifier/currency/amount/self-transfer failures, `INSUFFICIENT_FUNDS` for a balance violation, and `DUPLICATE_ID` for a conflicting repeated ID. Stop at the first failing physical line.\n\n## Command-line options\n\n- `--account ID` filters the final accounts array to that account. Totals reflect this filtered output. The processed/duplicates counts still describe the entire input, and invalid events for other accounts still fail the batch. A nonexistent account gives an empty array and zero totals. An invalid account argument is an argument error.\n- `--pretty` produces indented multiline JSON with a trailing newline; it does not change data.\n- Unknown options, missing option values, and invalid argument values exit 2 with empty stdout and stderr `{\"error\":{\"code\":\"INVALID_ARGUMENT\",\"line\":0}}` plus newline.\n- `--help` exits 0 with useful usage text on stdout and empty stderr.\n","d5fb3e914bbb86fcc957de29522cd2833a70d8f098dc34524115347c8a51353e":"Implement the Ledger CLI specified in README.md from the existing skeleton. Verify the requirements with your own checks. Keep README.md and TASK.txt unchanged. Use Python standard library only. Work only within this project, without external services or other projects. You may add your own tests and documentation. Finish with a concise report when the requested work is complete.\n","ae47afc6e4497a4427b9c4ebfb3c5095ec55260bc5a599a337c06cb7a2934d36":"\"\"\"Ledger CLI package.\"\"\"\n","d140e3bbe569b89d0695d1fb82634a0f70cbac07e5366f873eddff0cfd78f0eb":"from ledger.cli import main\n\nraise SystemExit(main())\n","6b2c7a6c651c89ab78cd9c867ed2baa1f01d9718947e8fd9e495f393ab47445d":"\"\"\"Validate and summarize a batch of JSON Lines ledger events.\"\"\"\n\nimport argparse\nimport json\nimport re\nimport sys\n\n\nIDENTIFIER = re.compile(r\"[A-Za-z0-9_-]{1,32}\", re.ASCII)\nCURRENCIES = (\"USD\", \"EUR\")\nFIELDS = {\n \"credit\": {\"id\", \"type\", \"account\", \"currency\", \"amount\"},\n \"debit\": {\"id\", \"type\", \"account\", \"currency\", \"amount\"},\n \"transfer\": {\"id\", \"type\", \"from\", \"to\", \"currency\", \"amount\"},\n}\n\n\nclass LedgerError(Exception):\n def __init__(self, code, line):\n self.code = code\n self.line = line\n super().__init__(code)\n\n\nclass ArgumentParser(argparse.ArgumentParser):\n def error(self, message):\n raise LedgerError(\"INVALID_ARGUMENT\", 0)\n\n\ndef valid_identifier(value):\n return isinstance(value, str) and IDENTIFIER.fullmatch(value) is not None\n\n\ndef account_argument(value):\n if not valid_identifier(value):\n raise argparse.ArgumentTypeError(\"invalid account identifier\")\n return value\n\n\ndef validate_event(event, line):\n if not isinstance(event, dict):\n raise LedgerError(\"INVALID_EVENT\", line)\n kind = event.get(\"type\")\n if not isinstance(kind, str) or kind not in FIELDS or set(event) != FIELDS[kind]:\n raise LedgerError(\"INVALID_EVENT\", line)\n identifiers = (\"id\", \"from\", \"to\") if kind == \"transfer\" else (\"id\", \"account\")\n if not all(valid_identifier(event[key]) for key in identifiers):\n raise LedgerError(\"INVALID_EVENT\", line)\n if event[\"currency\"] not in CURRENCIES:\n raise LedgerError(\"INVALID_EVENT\", line)\n amount = event[\"amount\"]\n if type(amount) is not int or not 1 <= amount <= 1_000_000_000_000:\n raise LedgerError(\"INVALID_EVENT\", line)\n if kind == \"transfer\" and event[\"from\"] == event[\"to\"]:\n raise LedgerError(\"INVALID_EVENT\", line)\n\n\ndef reject_constant(value):\n # Python's decoder otherwise accepts NaN and Infinity, which are not JSON.\n raise ValueError(\"non-JSON numeric constant\")\n\n\ndef summarize(lines, account=None):\n balances = {}\n seen = {}\n duplicates = 0\n for line_number, raw in enumerate(lines, 1):\n if not raw.strip():\n continue\n try:\n event = json.loads(raw, parse_constant=reject_constant)\n except (ValueError, RecursionError):\n raise LedgerError(\"INVALID_JSON\", line_number) from None\n validate_event(event, line_number)\n event_id = event[\"id\"]\n if event_id in seen:\n if seen[event_id] != event:\n raise LedgerError(\"DUPLICATE_ID\", line_number)\n duplicates += 1\n continue\n\n kind, currency, amount = event[\"type\"], event[\"currency\"], event[\"amount\"]\n source = event.get(\"from\") if kind == \"transfer\" else event[\"account\"]\n if kind != \"credit\" and balances.get(source, {}).get(currency, 0) < amount:\n raise LedgerError(\"INSUFFICIENT_FUNDS\", line_number)\n balances.setdefault(source, dict.fromkeys(CURRENCIES, 0))\n if kind == \"credit\":\n balances[source][currency] += amount\n else:\n balances[source][currency] -= amount\n if kind == \"transfer\":\n destination = event[\"to\"]\n balances.setdefault(destination, dict.fromkeys(CURRENCIES, 0))\n balances[destination][currency] += amount\n seen[event_id] = event\n\n accounts = [\n {\"id\": name, **balances[name]}\n for name in sorted(balances)\n if account is None or name == account\n ]\n return {\n \"processed\": len(seen),\n \"duplicates\": duplicates,\n \"accounts\": accounts,\n \"totals\": {currency: sum(row[currency] for row in accounts) for currency in CURRENCIES},\n }\n\n\ndef main(argv=None):\n parser = ArgumentParser(description=\"Summarize validated JSON Lines ledger events from stdin.\", allow_abbrev=False)\n parser.add_argument(\"--account\", type=account_argument, metavar=\"ID\", help=\"show only this account and its totals\")\n parser.add_argument(\"--pretty\", action=\"store_true\", help=\"indent the summary JSON\")\n try:\n args = parser.parse_args(argv)\n summary = summarize(sys.stdin, args.account)\n except LedgerError as error:\n print(json.dumps({\"error\": {\"code\": error.code, \"line\": error.line}}, separators=(\",\", \":\")), file=sys.stderr)\n return 2\n print(json.dumps(summary, indent=2 if args.pretty else None, separators=None if args.pretty else (\",\", \":\")))\n return 0\n","cf825773d6982d84ddcd5348617eb38058d73498186f16dae8cc369e7b40a61c":"import json\nfrom pathlib import Path\nimport subprocess\nimport sys\nimport unittest\n\nROOT = Path(__file__).resolve().parents[1]\n\n\ndef event(id=\"e\", type=\"credit\", account=\"a\", currency=\"USD\", amount=100):\n return dict(id=id, type=type, account=account, currency=currency, amount=amount)\n\n\ndef transfer(id=\"t\", source=\"a\", destination=\"b\", amount=30, currency=\"USD\"):\n return {\"id\": id, \"type\": \"transfer\", \"from\": source, \"to\": destination, \"amount\": amount, \"currency\": currency}\n\n\nclass CLITest(unittest.TestCase):\n def run_cli(self, rows=(), args=(), raw=None):\n return subprocess.run([sys.executable, \"-m\", \"ledger\", *args], input=raw if raw is not None else \"\\n\".join(json.dumps(row) for row in rows), text=True, capture_output=True, cwd=ROOT)\n\n def success(self, rows=(), args=(), raw=None):\n result = self.run_cli(rows, args, raw)\n self.assertEqual(result.returncode, 0, result.stderr)\n self.assertEqual(result.stderr, \"\")\n self.assertTrue(result.stdout.endswith(\"\\n\"))\n return json.loads(result.stdout)\n\n def failure(self, rows=(), code=\"INVALID_EVENT\", line=1, args=(), raw=None):\n result = self.run_cli(rows, args, raw)\n self.assertEqual(result.returncode, 2)\n self.assertEqual(result.stdout, \"\")\n self.assertEqual(result.stderr, json.dumps({\"error\": {\"code\": code, \"line\": line}}, separators=(\",\", \":\")) + \"\\n\")\n\n def test_empty(self):\n self.assertEqual(self.success(raw=\"\\n \\t\\n\"), {\"processed\": 0, \"duplicates\": 0, \"accounts\": [], \"totals\": {\"USD\": 0, \"EUR\": 0}})\n\n def test_transfer_and_filter(self):\n rows = [event(), transfer(), event(\"eur\", account=\"b\", currency=\"EUR\", amount=8)]\n expected = [{\"id\": \"a\", \"USD\": 70, \"EUR\": 0}, {\"id\": \"b\", \"USD\": 30, \"EUR\": 8}]\n result = self.success(rows)\n self.assertEqual(result, {\"processed\": 3, \"duplicates\": 0, \"accounts\": expected, \"totals\": {\"USD\": 100, \"EUR\": 8}})\n filtered = self.success(rows, [\"--account\", \"b\"])\n self.assertEqual(filtered[\"accounts\"], expected[1:])\n self.assertEqual(filtered[\"totals\"], {\"USD\": 30, \"EUR\": 8})\n self.assertEqual(filtered[\"processed\"], 3)\n missing = self.success(rows, [\"--account\", \"missing\"])\n self.assertEqual(missing[\"accounts\"], [])\n self.assertEqual(missing[\"totals\"], {\"USD\": 0, \"EUR\": 0})\n self.assertEqual(self.success(rows, [\"--pretty\"]), result)\n self.assertIn('\\n \"processed\"', self.run_cli(rows, [\"--pretty\"]).stdout)\n\n def test_duplicates_and_zero_accounts(self):\n debit = event(\"d\", \"debit\")\n rows = [event(), debit, dict(reversed(list(debit.items()))), event()]\n result = self.success(rows)\n self.assertEqual(result[\"processed\"], 2)\n self.assertEqual(result[\"duplicates\"], 2)\n self.assertEqual(result[\"accounts\"], [{\"id\": \"a\", \"USD\": 0, \"EUR\": 0}])\n self.success([event(), transfer(amount=100), transfer(amount=100)])\n self.failure([event(), event(account=\"b\")], \"DUPLICATE_ID\", 2)\n self.failure([event(), event(amount=True)], line=2)\n\n def test_schema(self):\n invalid = [None, [], 1, \"x\", {}, {**event(), \"extra\": 1}]\n invalid += [{k: v for k, v in event().items() if k != key} for key in event()]\n for key, values in {\n \"id\": [\"\", \"a\" * 33, \"a\\n\", \" a\", \"é\", 1, None],\n \"account\": [\"\", \"a b\", \"a/\", False, []],\n \"currency\": [\"usd\", \"GBP\", None, [], 1],\n \"amount\": [0, -1, 10**12 + 1, True, False, 1.0, \"1\", None, {}],\n \"type\": [\"unknown\", None, [], 1],\n }.items():\n invalid += [{**event(), key: value} for value in values]\n invalid += [transfer(destination=\"a\"), {**transfer(), \"account\": \"a\"}, {**transfer(), \"from\": \"bad!\"}]\n for row in invalid:\n with self.subTest(row=row):\n self.failure([row])\n\n def test_funds_and_first_error(self):\n self.failure([event(type=\"debit\")], \"INSUFFICIENT_FUNDS\")\n self.failure([transfer()], \"INSUFFICIENT_FUNDS\")\n self.failure([event(), event(\"d\", \"debit\", currency=\"EUR\")], \"INSUFFICIENT_FUNDS\", 2)\n self.failure([event(), transfer(amount=101)], \"INSUFFICIENT_FUNDS\", 2, args=[\"--account\", \"missing\"])\n self.failure(raw='\\n' + json.dumps(event()) + '\\n \\n{bad\\nnull', code=\"INVALID_JSON\", line=4)\n self.failure(raw='null\\n{bad', line=1)\n\n def test_json(self):\n for raw in ['{', '{} {}', '{\"amount\": NaN}', '{\"amount\": Infinity}', '{\"amount\": -Infinity}', '{\"x\": 1,}']:\n with self.subTest(raw=raw):\n self.failure(raw=raw, code=\"INVALID_JSON\")\n\n def test_boundaries_and_sorting(self):\n names = [\"z\", \"a\", \"Z\", \"A\", \"_\", \"-\", \"0\", \"a\" * 32]\n rows = [event(str(i), account=name, amount=10**12) for i, name in enumerate(names)]\n rows.append(event(\"more\", account=\"a\", amount=1))\n result = self.success(rows)\n self.assertEqual([row[\"id\"] for row in result[\"accounts\"]], sorted(names))\n self.assertEqual(result[\"totals\"][\"USD\"], len(names) * 10**12 + 1)\n\n def test_arguments(self):\n for args in [[\"--unknown\"], [\"--account\"], [\"--account\", \"bad!\"], [\"--account\", \"\"], [\"--pretty=yes\"], [\"positional\"], [\"--acc\", \"a\"]]:\n with self.subTest(args=args):\n self.failure(args=args, code=\"INVALID_ARGUMENT\", line=0, raw=\"bad json\")\n result = self.run_cli(args=[\"--help\"], raw=\"invalid\")\n self.assertEqual(result.returncode, 0)\n self.assertEqual(result.stderr, \"\")\n self.assertIn(\"usage:\", result.stdout)\n self.assertIn(\"--account\", result.stdout)\n\n\nif __name__ == \"__main__\":\n unittest.main()\n","5ca39d648cacbe6aee08514a42219f3d12055e520607570fb59e3a9e5fa79088":"\"\"\"Validate and summarize an in-memory stream of ledger events.\"\"\"\n\nimport argparse\nimport json\nimport re\nimport sys\n\n\nIDENTIFIER = re.compile(r\"[A-Za-z0-9_-]{1,32}\")\nFIELDS = {\n \"credit\": {\"id\", \"type\", \"account\", \"currency\", \"amount\"},\n \"debit\": {\"id\", \"type\", \"account\", \"currency\", \"amount\"},\n \"transfer\": {\"id\", \"type\", \"from\", \"to\", \"currency\", \"amount\"},\n}\n\n\nclass LedgerError(Exception):\n def __init__(self, code, line):\n self.code = code\n self.line = line\n\n\nclass ArgumentParser(argparse.ArgumentParser):\n def error(self, message):\n raise LedgerError(\"INVALID_ARGUMENT\", 0)\n\n\ndef valid_identifier(value):\n return isinstance(value, str) and IDENTIFIER.fullmatch(value) is not None\n\n\ndef validate_event(event, line):\n if not isinstance(event, dict):\n raise LedgerError(\"INVALID_EVENT\", line)\n kind = event.get(\"type\")\n if not isinstance(kind, str) or kind not in FIELDS or set(event) != FIELDS[kind]:\n raise LedgerError(\"INVALID_EVENT\", line)\n names = (\"id\", \"from\", \"to\") if kind == \"transfer\" else (\"id\", \"account\")\n if (\n not all(valid_identifier(event[name]) for name in names)\n or event[\"currency\"] not in (\"USD\", \"EUR\")\n or type(event[\"amount\"]) is not int\n or not 1 <= event[\"amount\"] <= 1_000_000_000_000\n or (kind == \"transfer\" and event[\"from\"] == event[\"to\"])\n ):\n raise LedgerError(\"INVALID_EVENT\", line)\n\n\ndef reject_constant(value):\n # Python's decoder otherwise accepts NaN and Infinity, which are not JSON.\n raise ValueError(\"Non-JSON numeric constant\")\n\n\ndef summarize(lines, account=None):\n accounts = {}\n seen = {}\n duplicates = 0\n for line_number, raw in enumerate(lines, 1):\n if not raw.strip():\n continue\n try:\n event = json.loads(raw, parse_constant=reject_constant)\n except (ValueError, RecursionError):\n raise LedgerError(\"INVALID_JSON\", line_number) from None\n validate_event(event, line_number)\n event_id = event[\"id\"]\n if event_id in seen:\n if seen[event_id] != event:\n raise LedgerError(\"DUPLICATE_ID\", line_number)\n duplicates += 1\n continue\n\n kind, currency, amount = event[\"type\"], event[\"currency\"], event[\"amount\"]\n source = event[\"from\"] if kind == \"transfer\" else event[\"account\"]\n balance = accounts.get(source, {\"USD\": 0, \"EUR\": 0})\n if kind != \"credit\" and balance[currency] < amount:\n raise LedgerError(\"INSUFFICIENT_FUNDS\", line_number)\n accounts[source] = balance\n if kind == \"credit\":\n balance[currency] += amount\n else:\n balance[currency] -= amount\n if kind == \"transfer\":\n destination = accounts.setdefault(event[\"to\"], {\"USD\": 0, \"EUR\": 0})\n destination[currency] += amount\n seen[event_id] = event\n\n rows = [\n {\"id\": name, **accounts[name]}\n for name in sorted(accounts)\n if account is None or name == account\n ]\n return {\n \"processed\": len(seen),\n \"duplicates\": duplicates,\n \"accounts\": rows,\n \"totals\": {currency: sum(row[currency] for row in rows) for currency in (\"USD\", \"EUR\")},\n }\n\n\ndef main(argv=None):\n parser = ArgumentParser(\n prog=\"ledger\", description=\"Summarize JSON Lines ledger events from stdin.\",\n allow_abbrev=False,\n )\n parser.add_argument(\"--account\", metavar=\"ID\", help=\"show only this account and its totals\")\n parser.add_argument(\"--pretty\", action=\"store_true\", help=\"indent the JSON summary\")\n try:\n args = parser.parse_args(argv)\n if args.account is not None and not valid_identifier(args.account):\n raise LedgerError(\"INVALID_ARGUMENT\", 0)\n result = summarize(sys.stdin, args.account)\n except LedgerError as error:\n print(json.dumps({\"error\": {\"code\": error.code, \"line\": error.line}}), file=sys.stderr)\n return 2\n print(json.dumps(result, indent=2 if args.pretty else None))\n return 0\n","b9b374b5ac85bcba09e39aac0ca23221eeb5a889c264a0e8e46cac3e5d539b38":"\"\"\"End-to-end checks of the public command and its output contract.\"\"\"\n\nimport json\nfrom pathlib import Path\nimport subprocess\nimport sys\nimport unittest\n\n\nROOT = Path(__file__).resolve().parents[1]\n\n\ndef credit(event_id=\"c\", account=\"a\", amount=100, currency=\"USD\"):\n return dict(id=event_id, type=\"credit\", account=account, currency=currency, amount=amount)\n\n\ndef debit(event_id=\"d\", account=\"a\", amount=100, currency=\"USD\"):\n return dict(id=event_id, type=\"debit\", account=account, currency=currency, amount=amount)\n\n\ndef transfer(event_id=\"t\", source=\"a\", destination=\"b\", amount=30):\n return {\"id\": event_id, \"type\": \"transfer\", \"from\": source, \"to\": destination,\n \"currency\": \"USD\", \"amount\": amount}\n\n\nclass CLITests(unittest.TestCase):\n def run_cli(self, events=(), args=(), raw=None):\n if raw is None:\n raw = \"\".join(json.dumps(event) + \"\\n\" for event in events)\n return subprocess.run([sys.executable, \"-m\", \"ledger\", *args], input=raw,\n text=True, capture_output=True, cwd=ROOT)\n\n def success(self, events=(), args=(), raw=None):\n result = self.run_cli(events, args, raw)\n self.assertEqual(result.returncode, 0, result.stderr)\n self.assertEqual(result.stderr, \"\")\n self.assertTrue(result.stdout.endswith(\"\\n\"))\n return json.loads(result.stdout)\n\n def failure(self, events=(), code=\"INVALID_EVENT\", line=1, args=(), raw=None):\n result = self.run_cli(events, args, raw)\n self.assertEqual(result.returncode, 2)\n self.assertEqual(result.stdout, \"\")\n self.assertEqual(json.loads(result.stderr), {\"error\": {\"code\": code, \"line\": line}})\n self.assertEqual(len(result.stderr.splitlines()), 1)\n self.assertTrue(result.stderr.endswith(\"\\n\"))\n\n def test_empty_and_blank(self):\n expected = {\"processed\": 0, \"duplicates\": 0, \"accounts\": [], \"totals\": {\"USD\": 0, \"EUR\": 0}}\n self.assertEqual(self.success(), expected)\n self.assertEqual(self.success(raw=\"\\n \\t\\n\"), expected)\n\n def test_readme_example(self):\n self.assertEqual(self.success([credit(), transfer()]), {\n \"processed\": 2, \"duplicates\": 0,\n \"accounts\": [{\"id\": \"a\", \"USD\": 70, \"EUR\": 0}, {\"id\": \"b\", \"USD\": 30, \"EUR\": 0}],\n \"totals\": {\"USD\": 100, \"EUR\": 0}})\n\n def test_sort_currencies_zero_balances_and_large_totals(self):\n events = [credit(\"1\", \"z\", 10**12), credit(\"2\", \"z\", 10**12),\n credit(\"3\", \"A\", 1, \"EUR\"), debit(\"4\", \"A\", 1, \"EUR\"),\n transfer(\"5\", \"z\", \"a\", 1)]\n result = self.success(events)\n self.assertEqual(result[\"accounts\"], [{\"id\": \"A\", \"USD\": 0, \"EUR\": 0},\n {\"id\": \"a\", \"USD\": 1, \"EUR\": 0},\n {\"id\": \"z\", \"USD\": 2*10**12-1, \"EUR\": 0}])\n self.assertEqual(result[\"totals\"], {\"USD\": 2*10**12, \"EUR\": 0})\n\n def test_duplicates_skip_balance_checks_and_key_order(self):\n for movement in [debit(), transfer(amount=100)]:\n with self.subTest(movement=movement):\n reordered = dict(reversed(list(movement.items())))\n result = self.success([credit(), movement, reordered, credit()])\n self.assertEqual((result[\"processed\"], result[\"duplicates\"]), (2, 2))\n self.assertEqual(result[\"accounts\"][0][\"USD\"], 0)\n\n def test_duplicate_conflicts_and_validation_precedence(self):\n for changed in [credit(amount=1), credit(account=\"b\"), credit(currency=\"EUR\"), debit(\"c\")]:\n self.failure([credit(), changed], \"DUPLICATE_ID\", 2)\n self.failure([credit(), credit(amount=True)], line=2)\n\n def test_schema_rejections(self):\n bad = [None, [], 1, True, \"event\", {}, {**credit(), \"extra\": 0}]\n bad += [{key: value for key, value in credit().items() if key != omitted}\n for omitted in credit()]\n for field, values in {\n \"id\": [None, 1, \"\", \" a\", \"a\\n\", \"é\", \"a.b\", \"a\"*33],\n \"account\": [False, [], \"\", \"a b\", \"a/b\", \"a\"*33],\n \"currency\": [None, [], {}, \"usd\", \"GBP\", 1],\n \"amount\": [None, True, False, 0, -1, 10**12+1, 1.0, \"1\", [], {}],\n \"type\": [None, [], {}, \"Credit\", \"unknown\", 1],\n }.items():\n bad.extend({**credit(), field: value} for value in values)\n bad += [transfer(destination=\"a\"), {**transfer(), \"from\": \" bad\"},\n {**transfer(), \"to\": 1}, {**transfer(), \"account\": \"a\"}]\n for event in bad:\n with self.subTest(event=event):\n self.failure([event])\n\n def test_identifier_boundaries_and_case(self):\n result = self.success([credit(\"_\"*32, \"-\"*32, 1), credit(\"A\", \"A\", 1), credit(\"a\", \"a\", 1)])\n self.assertEqual(result[\"processed\"], 3)\n self.assertEqual([a[\"id\"] for a in result[\"accounts\"]], [\"-\"*32, \"A\", \"a\"])\n\n def test_insufficient_funds(self):\n for events in [[debit()], [transfer()], [credit(), debit(amount=101)],\n [credit(), transfer(amount=101)], [credit(), debit(currency=\"EUR\")]]:\n with self.subTest(events=events):\n self.failure(events, \"INSUFFICIENT_FUNDS\", len(events))\n\n def test_json_and_physical_lines_first_error(self):\n for raw in [\"{\", '{\"id\": NaN}', '{\"id\": Infinity}', \"{} {}\", \"[1,]\", \"//comment\"]:\n self.failure(code=\"INVALID_JSON\", line=4,\n raw=\"\\n\" + json.dumps(credit()) + \"\\n \\n\" + raw + \"\\n{}\\n\")\n self.failure(raw=\"\\n{}\\n{\", line=2)\n self.assertEqual(self.success(raw=json.dumps(credit()))[\"processed\"], 1)\n\n def test_filter_and_pretty(self):\n events = [credit(), transfer(), credit(\"e\", \"b\", 12, \"EUR\"), credit()]\n result = self.success(events, [\"--account\", \"b\"])\n self.assertEqual(result, {\"processed\": 3, \"duplicates\": 1,\n \"accounts\": [{\"id\": \"b\", \"USD\": 30, \"EUR\": 12}],\n \"totals\": {\"USD\": 30, \"EUR\": 12}})\n missing = self.success(events, [\"--account\", \"missing\"])\n self.assertEqual(missing[\"accounts\"], [])\n self.assertEqual(missing[\"totals\"], {\"USD\": 0, \"EUR\": 0})\n pretty = self.run_cli(events, [\"--account\", \"b\", \"--pretty\"])\n self.assertEqual(json.loads(pretty.stdout), result)\n self.assertGreater(len(pretty.stdout.splitlines()), 1)\n self.failure([credit(), debit(account=\"other\")], \"INSUFFICIENT_FUNDS\", 2,\n args=[\"--account\", \"a\", \"--pretty\"])\n\n def test_arguments_and_help(self):\n for args in [[\"--unknown\"], [\"--account\"], [\"--account\", \"bad id\"],\n [\"--account\", \"\"], [\"--account\", \"é\"], [\"--account\", \"a\"*33],\n [\"--pretty=yes\"], [\"--acc\", \"a\"], [\"positional\"]]:\n with self.subTest(args=args):\n self.failure(code=\"INVALID_ARGUMENT\", line=0, args=args, raw=\"{\")\n result = self.run_cli(args=[\"--help\"], raw=\"{\")\n self.assertEqual(result.returncode, 0)\n self.assertEqual(result.stderr, \"\")\n for text in [\"usage:\", \"--account\", \"--pretty\", \"stdin\"]:\n self.assertIn(text, result.stdout)\n\n\nif __name__ == \"__main__\":\n unittest.main()\n","70cb6c7cfd6ab59aeacd1860440b2659fa8ad9ef9fa39ab9e316c8f600672b3f":"# Quote CLI\nRun python3 quote.py. Read one JSON object from stdin with exactly items and tax_bps. items is a nonempty list of at most 100 objects with exactly sku, quantity, unit_cents. sku is an ASCII identifier [A-Za-z0-9_-]{1,32}; duplicates are allowed as separate lines. quantity is an integer 1..1000 and unit_cents an integer 0..1000000; booleans and floats are forbidden. tax_bps is an integer 0..10000, also excluding booleans and floats.\nCompute subtotal_cents as the sum of quantity*unit_cents. Discount is 10% of subtotal when subtotal is AT LEAST 10000 cents, otherwise zero; round half up to cents. Compute tax on subtotal minus discount at tax_bps/10000, also rounding half up. Shipping costs 500 cents unless the amount after discount is AT LEAST 15000 cents, when it is free. Output one JSON object with subtotal_cents, discount_cents, tax_cents, shipping_cents, total_cents. total includes discounted subtotal, tax and shipping. Use integer arithmetic.\nFor any malformed JSON, schema or value error, output nothing to stdout, output exactly {\"error\":\"INVALID_ORDER\"} as JSON to stderr, and exit 2. Success exits 0. No command-line options are supported; reject any with INVALID_ORDER.\nUsers report invalid boolean quantities are accepted, the discount threshold is wrong at its exact boundary, and half-cent tax is rounded down. Fix these regressions and preserve all other behavior.\n","920a61ad206722552effb748fdaa50b5b0e8cbd38bb011b8923c3615265ec948":"Fix the quote CLI regressions described in README.md, preserve the other documented behavior, and verify the fix. Keep README.md and TASK.txt unchanged. Use Python standard library only. Work only within this project, without external services or other projects. You may add your own tests and documentation. Finish with a concise report when the requested work is complete.\n","f3c96896d898d7de082332277e4fd0173a3763f7d2aa78a37f00f8f93787b58c":"import json,re,sys\n\ndef quote(order):\n if not isinstance(order,dict) or set(order)!={'items','tax_bps'}:raise ValueError()\n items=order['items'];rate=order['tax_bps']\n if not isinstance(items,list) or not 1<=len(items)<=100 or type(rate) is not int or not 0<=rate<=10000:raise ValueError()\n subtotal=0\n for item in items:\n if not isinstance(item,dict) or set(item)!={'sku','quantity','unit_cents'}:raise ValueError()\n sku,q,p=item['sku'],item['quantity'],item['unit_cents']\n if not isinstance(sku,str) or re.fullmatch(r'[A-Za-z0-9_-]{1,32}',sku) is None or type(q) is not int or not 1<=q<=1000 or type(p) is not int or not 0<=p<=1000000:raise ValueError()\n subtotal+=q*p\n discount=(subtotal*10+50)//100 if subtotal>=10000 else 0\n net=subtotal-discount\n tax=(net*rate+5000)//10000\n shipping=0 if net>=15000 else 500\n return dict(subtotal_cents=subtotal,discount_cents=discount,tax_cents=tax,shipping_cents=shipping,total_cents=net+tax+shipping)\n\ndef main():\n try:\n if len(sys.argv)!=1:raise ValueError()\n result=quote(json.load(sys.stdin))\n except (ValueError,TypeError,KeyError):\n print(json.dumps({'error':'INVALID_ORDER'}),file=sys.stderr);return 2\n print(json.dumps(result));return 0\nif __name__=='__main__':raise SystemExit(main())\n","c5db774c11f48df3da5be90e8009082af6b68d865af23484238a8de8f702ec6a":"import copy\nimport json\nfrom pathlib import Path\nimport subprocess\nimport sys\nimport unittest\n\n\nCLI = Path(__file__).with_name('quote.py')\n\n\ndef order(price=100, quantity=1, rate=0):\n return {'items': [{'sku': 'SKU_1-a', 'quantity': quantity,\n 'unit_cents': price}], 'tax_bps': rate}\n\n\nclass QuoteCLITests(unittest.TestCase):\n def run_cli(self, payload, args=()):\n return subprocess.run([sys.executable, str(CLI), *args],\n input=payload, text=True, capture_output=True)\n\n def assert_invalid(self, payload, args=()):\n result = self.run_cli(payload, args)\n self.assertEqual(result.returncode, 2)\n self.assertEqual(result.stdout, '')\n self.assertEqual(json.loads(result.stderr), {'error': 'INVALID_ORDER'})\n self.assertEqual(len(result.stderr.splitlines()), 1)\n\n def assert_quote(self, value, expected):\n result = self.run_cli(json.dumps(value))\n self.assertEqual(result.returncode, 0, result.stderr)\n self.assertEqual(result.stderr, '')\n self.assertEqual(len(result.stdout.splitlines()), 1)\n keys = ('subtotal_cents', 'discount_cents', 'tax_cents',\n 'shipping_cents', 'total_cents')\n actual = json.loads(result.stdout)\n self.assertEqual(actual, dict(zip(keys, expected)))\n self.assertTrue(all(type(v) is int for v in actual.values()))\n\n def test_calculation_boundaries(self):\n cases = [\n (order(0), (0, 0, 0, 500, 500)),\n (order(9999), (9999, 0, 0, 500, 10499)),\n (order(10000), (10000, 1000, 0, 500, 9500)),\n (order(10004), (10004, 1000, 0, 500, 9504)),\n (order(10005), (10005, 1001, 0, 500, 9504)),\n (order(1, rate=4999), (1, 0, 0, 500, 501)),\n (order(1, rate=5000), (1, 0, 1, 500, 502)),\n (order(1, rate=5001), (1, 0, 1, 500, 502)),\n (order(10000, rate=10000), (10000, 1000, 9000, 500, 18500)),\n (order(16666), (16666, 1667, 0, 500, 15499)),\n (order(16667), (16667, 1667, 0, 0, 15000)),\n (order(16668), (16668, 1667, 0, 0, 15001)),\n ]\n for value, expected in cases:\n with self.subTest(value=value):\n self.assert_quote(value, expected)\n\n def test_duplicate_lines_and_maximum_values(self):\n value = order(1000000, quantity=1000, rate=10000)\n value['items'] *= 100\n self.assert_quote(value, (100000000000, 10000000000,\n 90000000000, 0, 180000000000))\n value = order(50)\n value['items'] *= 2\n self.assert_quote(value, (100, 0, 0, 500, 600))\n\n def test_numeric_validation(self):\n for field, invalid in (\n ('quantity', [True, False, 1.0, 0, -1, 1001, '1', None, [], {}]),\n ('unit_cents', [True, False, 0.0, -1, 1000001, '1', None, [], {}]),\n ('tax_bps', [True, False, 0.0, -1, 10001, '1', None, [], {}]),\n ):\n for bad in invalid:\n value = order()\n target = value if field == 'tax_bps' else value['items'][0]\n target[field] = bad\n with self.subTest(field=field, bad=bad):\n self.assert_invalid(json.dumps(value))\n\n def test_schema_validation(self):\n invalid = [None, [], 1, 'order', {}, {'items': []},\n {'items': [], 'tax_bps': 0}]\n for items in (None, {}, 'items', [None], [[]], [1], [{}],\n order()['items'] * 101):\n invalid.append({'items': items, 'tax_bps': 0})\n for base in (order(), order()['items'][0]):\n for key in base:\n changed = copy.deepcopy(base)\n del changed[key]\n invalid.append(changed if 'items' in base else\n {'items': [changed], 'tax_bps': 0})\n changed = copy.deepcopy(base)\n changed['extra'] = 0\n invalid.append(changed if 'items' in base else\n {'items': [changed], 'tax_bps': 0})\n for value in invalid:\n with self.subTest(value=value):\n self.assert_invalid(json.dumps(value))\n\n def test_sku_validation(self):\n for sku in ('', 'x' * 33, 'é', 'a b', 'a\\n', 'a.b', 1, None, True):\n value = order()\n value['items'][0]['sku'] = sku\n with self.subTest(sku=sku):\n self.assert_invalid(json.dumps(value))\n for sku in ('a', 'Z' * 32, 'AZaz09_-'):\n value = order()\n value['items'][0]['sku'] = sku\n self.assert_quote(value, (100, 0, 0, 500, 600))\n\n def test_malformed_json_and_arguments(self):\n for payload in ('', '{', '{} {}', '{\"items\":}', 'null trailing'):\n with self.subTest(payload=payload):\n self.assert_invalid(payload)\n for args in (('--help',), ('--version',), ('extra',), ('--',)):\n with self.subTest(args=args):\n self.assert_invalid(json.dumps(order()), args)\n\n\nif __name__ == '__main__':\n unittest.main()\n","54a23ccff9a9a42d5be1a104ab934230f37c282dec2b2fbe48e0830205d9d796":"import copy\nimport json\nfrom pathlib import Path\nimport subprocess\nimport sys\nimport unittest\n\n\nCLI = Path(__file__).with_name('quote.py')\n\n\ndef order(price=100, quantity=1, rate=0):\n return {'items': [{'sku': 'A', 'quantity': quantity, 'unit_cents': price}],\n 'tax_bps': rate}\n\n\nclass QuoteCLITest(unittest.TestCase):\n def run_cli(self, payload, *args):\n return subprocess.run([sys.executable, str(CLI), *args], input=payload,\n text=True, capture_output=True, check=False)\n\n def assert_invalid(self, payload, *args):\n result = self.run_cli(payload, *args)\n self.assertEqual(result.returncode, 2)\n self.assertEqual(result.stdout, '')\n self.assertEqual(json.loads(result.stderr), {'error': 'INVALID_ORDER'})\n self.assertEqual(len(result.stderr.splitlines()), 1)\n\n def assert_quote(self, data, subtotal, discount, tax, shipping, total):\n result = self.run_cli(json.dumps(data))\n self.assertEqual(result.returncode, 0, result.stderr)\n self.assertEqual(result.stderr, '')\n self.assertEqual(len(result.stdout.splitlines()), 1)\n self.assertEqual(json.loads(result.stdout), dict(\n subtotal_cents=subtotal, discount_cents=discount, tax_cents=tax,\n shipping_cents=shipping, total_cents=total))\n\n def test_discount_boundary_and_rounding(self):\n for price, discount in [(9999, 0), (10000, 1000), (10001, 1000),\n (10004, 1000), (10005, 1001), (10006, 1001)]:\n with self.subTest(price=price):\n self.assert_quote(order(price), price, discount, 0, 500,\n price - discount + 500)\n\n def test_tax_rounding(self):\n for rate, tax in [(0, 0), (4999, 0), (5000, 1), (5001, 1), (10000, 1)]:\n with self.subTest(rate=rate):\n self.assert_quote(order(1, rate=rate), 1, 0, tax, 500, 501 + tax)\n self.assert_quote(order(10005, rate=1250), 10005, 1001, 1126, 500, 10630)\n\n def test_shipping_uses_discounted_subtotal_without_tax(self):\n self.assert_quote(order(15000, rate=10000), 15000, 1500, 13500, 500, 27500)\n self.assert_quote(order(16666), 16666, 1667, 0, 500, 15499)\n self.assert_quote(order(16667), 16667, 1667, 0, 0, 15000)\n self.assert_quote(order(16668), 16668, 1667, 0, 0, 15001)\n\n def test_zero_duplicate_skus_and_limits(self):\n self.assert_quote(order(0), 0, 0, 0, 500, 500)\n data = order(1000000, quantity=1000, rate=10000)\n data['items'][0]['sku'] = 'Az09_-' + 'x' * 26\n data['items'] *= 100\n self.assert_quote(data, 100000000000, 10000000000, 90000000000,\n 0, 180000000000)\n data = order(200, quantity=2)\n data['items'].append({'sku': 'A', 'quantity': 3, 'unit_cents': 100})\n self.assert_quote(data, 700, 0, 0, 500, 1200)\n\n def test_invalid_numeric_values(self):\n cases = {\n 'quantity': [True, False, 1.0, 0, -1, 1001, '1', None, [], {}],\n 'unit_cents': [True, False, 0.0, -1, 1000001, '1', None, [], {}],\n 'tax_bps': [True, False, 0.0, -1, 10001, '1', None, [], {}],\n }\n for field, values in cases.items():\n for value in values:\n with self.subTest(field=field, value=value):\n data = order()\n target = data if field == 'tax_bps' else data['items'][0]\n target[field] = value\n self.assert_invalid(json.dumps(data))\n\n def test_invalid_schema_and_skus(self):\n invalid = [None, [], 1, True, 'order', {}, {'items': []}]\n for items in [[], [order()['items'][0]] * 101, {}, None, 'items', [None], [[]]]:\n invalid.append({'items': items, 'tax_bps': 0})\n for location in ['root', 'item']:\n base = order()\n target = base if location == 'root' else base['items'][0]\n for key in list(target):\n data = copy.deepcopy(base)\n del (data if location == 'root' else data['items'][0])[key]\n invalid.append(data)\n target['extra'] = 1\n invalid.append(base)\n for sku in ['', 'a' * 33, 'é', 'a b', 'a\\n', 'a.b', 1, True, None, []]:\n data = order()\n data['items'][0]['sku'] = sku\n invalid.append(data)\n for data in invalid:\n with self.subTest(data=data):\n self.assert_invalid(json.dumps(data))\n\n def test_malformed_json_and_arguments(self):\n for payload in ['', '{', '{} {}', '{\"items\": [],}', 'not json']:\n with self.subTest(payload=payload):\n self.assert_invalid(payload)\n for args in [('--help',), ('--version',), ('file.json',), ('--',), ('a', 'b')]:\n with self.subTest(args=args):\n self.assert_invalid(json.dumps(order()), *args)\n\n\nif __name__ == '__main__':\n unittest.main()\n","0b2a8b35d898784a8676140eac83daa40c43e8638dcfb68a621f2b6eb31b2035":"\"\"\"Validate and summarize a batch of JSON Lines ledger events.\"\"\"\n\nimport argparse\nimport json\nimport re\nimport sys\n\n\nIDENTIFIER = re.compile(r\"[A-Za-z0-9_-]{1,32}\", re.ASCII)\nFIELDS = {\n \"credit\": {\"id\", \"type\", \"account\", \"currency\", \"amount\"},\n \"debit\": {\"id\", \"type\", \"account\", \"currency\", \"amount\"},\n \"transfer\": {\"id\", \"type\", \"from\", \"to\", \"currency\", \"amount\"},\n}\n\n\nclass LedgerError(Exception):\n def __init__(self, code, line=0):\n self.code = code\n self.line = line\n super().__init__(code)\n\n\nclass ArgumentParser(argparse.ArgumentParser):\n def error(self, message):\n raise LedgerError(\"INVALID_ARGUMENT\")\n\n\ndef valid_identifier(value):\n return isinstance(value, str) and IDENTIFIER.fullmatch(value) is not None\n\n\ndef account_argument(value):\n if not valid_identifier(value):\n raise argparse.ArgumentTypeError(\"invalid account identifier\")\n return value\n\n\ndef validate_event(event, line):\n if not isinstance(event, dict):\n raise LedgerError(\"INVALID_EVENT\", line)\n kind = event.get(\"type\")\n if not isinstance(kind, str) or kind not in FIELDS or set(event) != FIELDS[kind]:\n raise LedgerError(\"INVALID_EVENT\", line)\n names = (\"id\", \"from\", \"to\") if kind == \"transfer\" else (\"id\", \"account\")\n if (\n any(not valid_identifier(event[name]) for name in names)\n or event[\"currency\"] not in (\"USD\", \"EUR\")\n or type(event[\"amount\"]) is not int\n or not 1 <= event[\"amount\"] <= 1_000_000_000_000\n or (kind == \"transfer\" and event[\"from\"] == event[\"to\"])\n ):\n raise LedgerError(\"INVALID_EVENT\", line)\n\n\ndef reject_constant(value):\n # Python's decoder otherwise accepts NaN and Infinity, which are not JSON.\n raise ValueError(\"non-JSON numeric constant\")\n\n\ndef summarize(lines, account=None):\n balances = {}\n seen = {}\n duplicates = 0\n for line_number, raw in enumerate(lines, 1):\n try:\n if isinstance(raw, bytes):\n raw = raw.decode(\"utf-8\")\n if not raw.strip():\n continue\n event = json.loads(raw, parse_constant=reject_constant)\n except (ValueError, RecursionError):\n raise LedgerError(\"INVALID_JSON\", line_number) from None\n validate_event(event, line_number)\n event_id = event[\"id\"]\n if event_id in seen:\n if seen[event_id] != event:\n raise LedgerError(\"DUPLICATE_ID\", line_number)\n duplicates += 1\n continue\n\n kind, currency, amount = event[\"type\"], event[\"currency\"], event[\"amount\"]\n source = event[\"from\"] if kind == \"transfer\" else event[\"account\"]\n if kind != \"credit\" and balances.get(source, {}).get(currency, 0) < amount:\n raise LedgerError(\"INSUFFICIENT_FUNDS\", line_number)\n balances.setdefault(source, {\"USD\": 0, \"EUR\": 0})\n if kind == \"credit\":\n balances[source][currency] += amount\n else:\n balances[source][currency] -= amount\n if kind == \"transfer\":\n destination = event[\"to\"]\n balances.setdefault(destination, {\"USD\": 0, \"EUR\": 0})\n balances[destination][currency] += amount\n seen[event_id] = event\n\n accounts = [\n {\"id\": name, **balances[name]}\n for name in sorted(balances)\n if account is None or name == account\n ]\n return {\n \"processed\": len(seen),\n \"duplicates\": duplicates,\n \"accounts\": accounts,\n \"totals\": {\n currency: sum(row[currency] for row in accounts)\n for currency in (\"USD\", \"EUR\")\n },\n }\n\n\ndef main(argv=None):\n parser = ArgumentParser(\n description=\"Validate ledger JSON Lines from stdin and write a JSON summary.\",\n allow_abbrev=False,\n )\n parser.add_argument(\n \"--account\", type=account_argument, metavar=\"ID\",\n help=\"show only this account and its totals\",\n )\n parser.add_argument(\"--pretty\", action=\"store_true\", help=\"indent the JSON summary\")\n try:\n args = parser.parse_args(argv)\n result = summarize(getattr(sys.stdin, \"buffer\", sys.stdin), args.account)\n except LedgerError as error:\n print(json.dumps(\n {\"error\": {\"code\": error.code, \"line\": error.line}},\n separators=(\",\", \":\"),\n ), file=sys.stderr)\n return 2\n print(json.dumps(\n result, indent=2 if args.pretty else None,\n separators=None if args.pretty else (\",\", \":\"),\n ))\n return 0\n","6f2a73908e5ec6adfe7a16ba958da0157af94464ea73e34df959749639c54704":"\"\"\"Contract checks, including real subprocess exit codes and output streams.\"\"\"\n\nimport json\nfrom pathlib import Path\nimport random\nimport subprocess\nimport sys\nimport unittest\n\nfrom ledger.cli import summarize\n\n\nROOT = Path(__file__).resolve().parents[1]\n\n\ndef credit(**changes):\n return dict({\"id\": \"e1\", \"type\": \"credit\", \"account\": \"a\", \"currency\": \"USD\", \"amount\": 100}, **changes)\n\n\ndef transfer(**changes):\n return dict({\"id\": \"e2\", \"type\": \"transfer\", \"from\": \"a\", \"to\": \"b\", \"currency\": \"USD\", \"amount\": 30}, **changes)\n\n\ndef lines(*events):\n return \"\".join(json.dumps(event) + \"\\n\" for event in events)\n\n\nclass LedgerTests(unittest.TestCase):\n def run_cli(self, data=\"\", *args):\n return subprocess.run(\n [sys.executable, \"-m\", \"ledger\", *args], input=data,\n capture_output=True, text=isinstance(data, str), cwd=ROOT,\n )\n\n def success(self, data=\"\", *args):\n result = self.run_cli(data, *args)\n self.assertEqual(result.returncode, 0, result.stderr)\n self.assertEqual(result.stderr, \"\")\n self.assertTrue(result.stdout.endswith(\"\\n\"))\n if \"--pretty\" not in args:\n self.assertEqual(result.stdout.count(\"\\n\"), 1)\n return json.loads(result.stdout)\n\n def failure(self, data, code, line, *args):\n result = self.run_cli(data, *args)\n self.assertEqual(result.returncode, 2)\n expected = json.dumps({\"error\": {\"code\": code, \"line\": line}}, separators=(\",\", \":\")) + \"\\n\"\n self.assertEqual(result.stdout, b\"\" if isinstance(data, bytes) else \"\")\n self.assertEqual(result.stderr, expected.encode() if isinstance(data, bytes) else expected)\n\n def test_empty_and_blank(self):\n expected = {\"processed\": 0, \"duplicates\": 0, \"accounts\": [], \"totals\": {\"USD\": 0, \"EUR\": 0}}\n for data in (\"\", \"\\n \\t\\r\\n\"):\n self.assertEqual(self.success(data), expected)\n\n def test_readme_example(self):\n self.assertEqual(self.success(lines(credit(), transfer())), {\n \"processed\": 2, \"duplicates\": 0,\n \"accounts\": [{\"id\": \"a\", \"USD\": 70, \"EUR\": 0}, {\"id\": \"b\", \"USD\": 30, \"EUR\": 0}],\n \"totals\": {\"USD\": 100, \"EUR\": 0},\n })\n\n def test_balances_sorting_zero_retention_and_case(self):\n events = [credit(account=\"z\"), credit(id=\"e2\", account=\"A\", currency=\"EUR\", amount=1),\n credit(id=\"e3\", account=\"z\", type=\"debit\"), credit(id=\"E1\", account=\"a\", amount=10**12)]\n result = self.success(lines(*events).rstrip(\"\\n\"))\n self.assertEqual(result[\"accounts\"], [\n {\"id\": \"A\", \"USD\": 0, \"EUR\": 1}, {\"id\": \"a\", \"USD\": 10**12, \"EUR\": 0},\n {\"id\": \"z\", \"USD\": 0, \"EUR\": 0}])\n self.assertEqual(result[\"totals\"], {\"USD\": 10**12, \"EUR\": 1})\n\n def test_duplicates_skip_effect_and_balance_check(self):\n debit = credit(id=\"d\", type=\"debit\")\n reordered = dict(reversed(list(debit.items())))\n result = self.success(lines(credit(), debit, reordered, credit()))\n self.assertEqual((result[\"processed\"], result[\"duplicates\"]), (2, 2))\n self.assertEqual(result[\"accounts\"], [{\"id\": \"a\", \"USD\": 0, \"EUR\": 0}])\n result = self.success(lines(credit(), transfer(amount=100), transfer(amount=100)))\n self.assertEqual(result[\"duplicates\"], 1)\n\n def test_conflicts_and_schema_precedence(self):\n for change in ({\"amount\": 1}, {\"account\": \"b\"}, {\"currency\": \"EUR\"}, {\"type\": \"debit\"}):\n with self.subTest(change=change):\n self.failure(lines(credit(), credit(**change)), \"DUPLICATE_ID\", 2)\n self.failure(lines(credit(), credit(amount=True)), \"INVALID_EVENT\", 2)\n self.failure(lines(credit(), transfer(id=\"e1\")), \"DUPLICATE_ID\", 2)\n\n def test_invalid_schemas(self):\n invalid = [None, [], 1, \"event\", True, {}, transfer(to=\"a\")]\n for field in credit():\n event = credit()\n del event[field]\n invalid.append(event)\n invalid.extend([credit(extra=1), transfer(account=\"a\")])\n for field in (\"id\", \"account\"):\n for value in (None, False, 1, [], {}, \"\", \"a b\", \" a\", \"a\\n\", \"é\", \"a\" * 33):\n invalid.append(credit(**{field: value}))\n for field, values in {\n \"type\": [None, [], {}, 1, \"CREDIT\", \"unknown\"],\n \"currency\": [None, [], {}, 1, \"usd\", \"GBP\", \"USD \"],\n \"amount\": [None, [], {}, \"1\", True, False, 1.0, 0, -1, 10**12 + 1],\n }.items():\n invalid.extend(credit(**{field: value}) for value in values)\n invalid.extend([transfer(**{\"from\": \" a\"}), transfer(to=1)])\n for event in invalid:\n with self.subTest(event=event):\n self.failure(lines(event), \"INVALID_EVENT\", 1)\n\n def test_invalid_json_and_first_physical_line(self):\n for bad in (\"{\", \"{} {}\", \"{'id': 1}\", \"NaN\", \"Infinity\", \"-Infinity\", '{\"x\": NaN}'):\n with self.subTest(bad=bad):\n self.failure(\"\\n\" + lines(credit()) + \" \\n\" + bad + \"\\n{}\\n\", \"INVALID_JSON\", 4)\n self.failure(b'\\n\\xff\\n', \"INVALID_JSON\", 2)\n self.failure(\"\\n{}\\n{\\n\", \"INVALID_EVENT\", 2)\n\n def test_insufficient_funds_and_currency_isolation(self):\n for events in ([credit(type=\"debit\")], [transfer()],\n [credit(), transfer(amount=101)],\n [credit(), credit(id=\"d\", type=\"debit\", currency=\"EUR\", amount=1)]):\n with self.subTest(events=events):\n self.failure(lines(*events), \"INSUFFICIENT_FUNDS\", len(events))\n\n def test_filter_and_pretty(self):\n data = lines(credit(), transfer())\n for account, rows, total in (\n (\"a\", [{\"id\": \"a\", \"USD\": 70, \"EUR\": 0}], 70),\n (\"b\", [{\"id\": \"b\", \"USD\": 30, \"EUR\": 0}], 30),\n (\"missing\", [], 0),\n ):\n result = self.success(data, \"--account\", account)\n self.assertEqual(result[\"accounts\"], rows)\n self.assertEqual(result[\"totals\"], {\"USD\": total, \"EUR\": 0})\n self.assertEqual(result[\"processed\"], 2)\n self.assertEqual(self.success(data, \"--pretty\", \"--account\", account), result)\n self.assertIn('\\n \"processed\"', self.run_cli(data, \"--pretty\").stdout)\n self.failure(data + lines(credit(id=\"bad\", account=\"other\", type=\"debit\")),\n \"INSUFFICIENT_FUNDS\", 3, \"--account\", \"a\")\n\n def test_arguments_and_help(self):\n for args in ((\"--unknown\",), (\"--account\",), (\"--account\", \"bad id\"),\n (\"--account=\",), (\"--account\", \"é\"), (\"--account\", \"a\" * 33),\n (\"--pretty=yes\",), (\"positional\",), (\"--acc\", \"a\")):\n with self.subTest(args=args):\n self.failure(\"{\", \"INVALID_ARGUMENT\", 0, *args)\n result = self.run_cli(\"{\", \"--help\")\n self.assertEqual(result.returncode, 0)\n self.assertEqual(result.stderr, \"\")\n for text in (\"usage:\", \"--account\", \"--pretty\", \"stdin\"):\n self.assertIn(text, result.stdout)\n self.success(lines(credit(account=\"A_0-\" + \"x\" * 28)), \"--account=A_0-\" + \"x\" * 28)\n\n def test_deterministic_generated_batch_against_reference(self):\n rng = random.Random(1234)\n expected = {}\n events = []\n unique = 0\n duplicates = 0\n for i in range(500):\n name, destination = rng.sample([\"a\", \"B\", \"c_1\", \"D-2\"], 2)\n currency = rng.choice([\"USD\", \"EUR\"])\n available = expected.get(name, {}).get(currency, 0)\n kind = rng.choice([\"credit\", \"debit\", \"transfer\"]) if available else \"credit\"\n amount = rng.randint(1, available if kind != \"credit\" else 1000)\n expected.setdefault(name, {\"USD\": 0, \"EUR\": 0})\n event = credit(id=str(i), account=name, type=kind, currency=currency, amount=amount)\n if kind == \"credit\":\n expected[name][currency] += amount\n else:\n expected[name][currency] -= amount\n if kind == \"transfer\":\n event.pop(\"account\")\n event.update({\"from\": name, \"to\": destination})\n expected.setdefault(destination, {\"USD\": 0, \"EUR\": 0})[currency] += amount\n events.append(event)\n unique += 1\n if rng.random() < 0.3:\n events.append(rng.choice(events).copy())\n duplicates += 1\n result = self.success(lines(*events))\n self.assertEqual(result[\"processed\"], unique)\n self.assertEqual(result[\"duplicates\"], duplicates)\n self.assertEqual(result[\"accounts\"], [{\"id\": key, **expected[key]} for key in sorted(expected)])\n self.assertEqual(result[\"totals\"], {c: sum(v[c] for v in expected.values()) for c in (\"USD\", \"EUR\")})\n self.assertEqual(summarize(lines(*events).splitlines()), result)\n\n\nif __name__ == \"__main__\":\n unittest.main()\n","0198e1f11a7f5ac5cc48bdcd50f0311d79455196205778877ee8f13c77d39ee9":"\"\"\"Validate and summarize a batch of JSON Lines ledger events.\"\"\"\n\nimport argparse\nimport json\nimport re\nimport sys\n\n\nIDENTIFIER = re.compile(r\"[A-Za-z0-9_-]{1,32}\", re.ASCII)\nFIELDS = {\n \"credit\": {\"id\", \"type\", \"account\", \"currency\", \"amount\"},\n \"debit\": {\"id\", \"type\", \"account\", \"currency\", \"amount\"},\n \"transfer\": {\"id\", \"type\", \"from\", \"to\", \"currency\", \"amount\"},\n}\n\n\nclass LedgerError(Exception):\n def __init__(self, code, line=0):\n self.code = code\n self.line = line\n super().__init__(code)\n\n\nclass ArgumentParser(argparse.ArgumentParser):\n def error(self, message):\n raise LedgerError(\"INVALID_ARGUMENT\")\n\n\ndef valid_identifier(value):\n return isinstance(value, str) and IDENTIFIER.fullmatch(value) is not None\n\n\ndef validate(event, line):\n if not isinstance(event, dict):\n raise LedgerError(\"INVALID_EVENT\", line)\n kind = event.get(\"type\")\n if not isinstance(kind, str) or kind not in FIELDS:\n raise LedgerError(\"INVALID_EVENT\", line)\n names = (\"from\", \"to\") if kind == \"transfer\" else (\"account\",)\n if (\n set(event) != FIELDS[kind]\n or not valid_identifier(event.get(\"id\"))\n or any(not valid_identifier(event.get(name)) for name in names)\n or event.get(\"currency\") not in (\"USD\", \"EUR\")\n or type(event.get(\"amount\")) is not int\n or not 1 <= event[\"amount\"] <= 1_000_000_000_000\n or (kind == \"transfer\" and event[\"from\"] == event[\"to\"])\n ):\n raise LedgerError(\"INVALID_EVENT\", line)\n\n\ndef reject_constant(value):\n # Python's JSON decoder otherwise accepts non-JSON NaN and infinities.\n raise ValueError(\"Invalid JSON constant\")\n\n\ndef summarize(lines, account=None):\n balances = {}\n seen = {}\n duplicates = 0\n for line_number, raw in enumerate(lines, 1):\n if not raw.strip():\n continue\n try:\n event = json.loads(raw, parse_constant=reject_constant)\n except (ValueError, RecursionError):\n raise LedgerError(\"INVALID_JSON\", line_number) from None\n validate(event, line_number)\n event_id = event[\"id\"]\n if event_id in seen:\n if event != seen[event_id]:\n raise LedgerError(\"DUPLICATE_ID\", line_number)\n duplicates += 1\n continue\n\n kind, currency, amount = event[\"type\"], event[\"currency\"], event[\"amount\"]\n source = event.get(\"from\") if kind == \"transfer\" else event[\"account\"]\n if kind != \"credit\" and balances.get(source, {}).get(currency, 0) < amount:\n raise LedgerError(\"INSUFFICIENT_FUNDS\", line_number)\n balances.setdefault(source, {\"USD\": 0, \"EUR\": 0})\n balances[source][currency] += amount if kind == \"credit\" else -amount\n if kind == \"transfer\":\n destination = event[\"to\"]\n balances.setdefault(destination, {\"USD\": 0, \"EUR\": 0})\n balances[destination][currency] += amount\n seen[event_id] = event\n\n accounts = [\n {\"id\": name, **balances[name]}\n for name in sorted(balances)\n if account is None or name == account\n ]\n return {\n \"processed\": len(seen),\n \"duplicates\": duplicates,\n \"accounts\": accounts,\n \"totals\": {currency: sum(a[currency] for a in accounts) for currency in (\"USD\", \"EUR\")},\n }\n\n\ndef main(argv=None):\n parser = ArgumentParser(description=__doc__, allow_abbrev=False)\n parser.add_argument(\"--account\", metavar=\"ID\", help=\"show only this account and its totals\")\n parser.add_argument(\"--pretty\", action=\"store_true\", help=\"indent the summary JSON\")\n try:\n args = parser.parse_args(argv)\n if args.account is not None and not valid_identifier(args.account):\n raise LedgerError(\"INVALID_ARGUMENT\")\n result = summarize(sys.stdin, args.account)\n except LedgerError as error:\n print(json.dumps({\"error\": {\"code\": error.code, \"line\": error.line}}, separators=(\",\", \":\")), file=sys.stderr)\n return 2\n print(json.dumps(result, indent=2 if args.pretty else None, separators=None if args.pretty else (\",\", \":\")))\n return 0\n","3365162ac0e6f263523451442a264c0ff00da531b0a746a6cf30aeb88ee970db":"import json\nimport subprocess\nimport sys\nimport unittest\nfrom pathlib import Path\n\nROOT = Path(__file__).resolve().parents[1]\n\n\ndef credit(id=\"c\", account=\"a\", amount=100, currency=\"USD\", **extra):\n return dict(id=id, type=\"credit\", account=account, currency=currency, amount=amount, **extra)\n\n\ndef debit(id=\"d\", **kwargs):\n return {**credit(id=id, **kwargs), \"type\": \"debit\"}\n\n\ndef transfer(id=\"t\", amount=30):\n return {\"id\": id, \"type\": \"transfer\", \"from\": \"a\", \"to\": \"b\", \"currency\": \"USD\", \"amount\": amount}\n\n\nclass CliTests(unittest.TestCase):\n def run_cli(self, events=(), args=(), raw=None):\n return subprocess.run([sys.executable, \"-m\", \"ledger\", *args],\n input=raw if raw is not None else \"\\n\".join(map(json.dumps, events)),\n text=True, capture_output=True, cwd=ROOT)\n\n def success(self, events=(), args=(), raw=None):\n result = self.run_cli(events, args, raw)\n self.assertEqual(result.returncode, 0, result.stderr)\n self.assertEqual(result.stderr, \"\")\n self.assertTrue(result.stdout.endswith(\"\\n\"))\n return json.loads(result.stdout)\n\n def failure(self, code, events=(), args=(), raw=None, line=1):\n result = self.run_cli(events, args, raw)\n self.assertEqual(result.returncode, 2)\n self.assertEqual(result.stdout, \"\")\n self.assertEqual(json.loads(result.stderr), {\"error\": {\"code\": code, \"line\": line}})\n self.assertEqual(len(result.stderr.splitlines()), 1)\n\n def test_empty(self):\n self.assertEqual(self.success(raw=\"\\n \\t\\n\"), dict(processed=0, duplicates=0, accounts=[], totals=dict(USD=0, EUR=0)))\n\n def test_balances_sort_zero_and_currencies(self):\n result = self.success([credit(), transfer(amount=100), debit(account=\"b\"), credit(id=\"e\", account=\"A\", amount=7, currency=\"EUR\")])\n self.assertEqual(result, {\"processed\": 4, \"duplicates\": 0, \"accounts\": [\n {\"id\": \"A\", \"USD\": 0, \"EUR\": 7}, {\"id\": \"a\", \"USD\": 0, \"EUR\": 0},\n {\"id\": \"b\", \"USD\": 0, \"EUR\": 0}], \"totals\": {\"USD\": 0, \"EUR\": 7}})\n\n def test_duplicates_skip_balance_checks(self):\n events = [credit(), transfer(amount=100), dict(reversed(list(transfer(amount=100).items()))), credit()]\n result = self.success(events)\n self.assertEqual((result[\"processed\"], result[\"duplicates\"]), (2, 2))\n self.assertEqual(result[\"totals\"][\"USD\"], 100)\n self.failure(\"DUPLICATE_ID\", [credit(), credit(account=\"b\")], line=2)\n self.failure(\"INVALID_EVENT\", [credit(), credit(amount=True)], line=2)\n\n def test_invalid_schemas(self):\n bad = [None, [], 1, \"text\", {}, credit(extra=1), credit(amount=True), credit(amount=1.0),\n credit(amount=0), credit(amount=-1), credit(amount=10**12+1), credit(amount=\"1\"),\n credit(currency=\"usd\"), credit(currency=[]), credit(id=\" a\"), credit(id=\"é\"),\n credit(account=\"a\\n\"), credit(account=\"\"), credit(id=\"x\"*33),\n {**credit(), \"type\": []}, {**credit(), \"type\": \"other\"},\n {**transfer(), \"to\": \"a\"}]\n for field in credit():\n event = credit()\n del event[field]\n bad.append(event)\n for event in bad:\n with self.subTest(event=event):\n self.failure(\"INVALID_EVENT\", [event])\n\n def test_json_and_physical_lines(self):\n for raw in (\"{\", \"{} {}\", '{\"x\":NaN}', '{\"x\":Infinity}'):\n self.failure(\"INVALID_JSON\", raw=\"\\n\"+json.dumps(credit())+\"\\n\\n\"+raw+\"\\n{}\", line=4)\n\n def test_insufficient_and_first_error(self):\n for event in (debit(), transfer()):\n self.failure(\"INSUFFICIENT_FUNDS\", [event])\n self.failure(\"INSUFFICIENT_FUNDS\", [credit(currency=\"EUR\"), debit(), {}], line=2)\n\n def test_filter_and_pretty(self):\n events = [credit(), transfer(), credit()]\n result = self.success(events, [\"--account\", \"b\", \"--pretty\"])\n self.assertEqual(result, dict(processed=2, duplicates=1, accounts=[dict(id=\"b\", USD=30, EUR=0)], totals=dict(USD=30, EUR=0)))\n self.assertEqual(self.success(events, [\"--account\", \"missing\"])[\"totals\"], dict(USD=0, EUR=0))\n self.failure(\"INSUFFICIENT_FUNDS\", [debit()], [\"--account\", \"other\"])\n pretty = self.run_cli(events, [\"--pretty\"]).stdout\n self.assertGreater(len(pretty.splitlines()), 1)\n self.assertEqual(json.loads(pretty), self.success(events))\n\n def test_arguments_and_help(self):\n for args in ([\"--wat\"], [\"--account\"], [\"--account\", \"\"], [\"--account\", \"a b\"],\n [\"--acc\", \"a\"], [\"--pretty=yes\"], [\"positional\"]):\n self.failure(\"INVALID_ARGUMENT\", args=args, line=0)\n result = self.run_cli(args=[\"--help\"], raw=\"invalid\")\n self.assertEqual((result.returncode, result.stderr), (0, \"\"))\n self.assertIn(\"--account\", result.stdout)\n self.assertIn(\"--pretty\", result.stdout)\n\n def test_limits_and_case_sensitive_ids(self):\n result = self.success([credit(id=\"x\"*32, account=\"_-09\", amount=10**12), credit(id=\"C\", amount=1), credit(id=\"c\", amount=1)])\n self.assertEqual(result[\"processed\"], 3)\n self.assertEqual(result[\"totals\"][\"USD\"], 10**12+2)\n\n\nif __name__ == \"__main__\":\n unittest.main()\n","9492372da8356c748a506b38a0410e70bbe0c9c748405b470389035d8ab154a4":"# Log statistics CLI\npython3 -m logstats reads JSONL on stdin. Blank lines are ignored, but physical line numbers include them. Each record has exactly service, level, duration_ms. service must be an ASCII identifier [A-Za-z0-9_-]{1,32}; level is info, warn or error; duration_ms is an integer 0..1000000000 excluding booleans and floats.\nOutput {\"services\":[rows],\"count\":N}. Rows are sorted by service and have service, count, errors (level error only), duration_sum_ms, duration_max_ms. Empty input gives an empty list and count 0. Optional --service ID returns only that service's row and count; absent services yield empty output. No other arguments, options, or abbreviations are allowed.\nMalformed JSON produces exit 2 and stderr JSON {\"error\":{\"code\":\"INVALID_JSON\",\"line\":N}}. Invalid records use INVALID_RECORD; invalid CLI arguments use INVALID_ARGUMENT and line 0. On any error stdout must remain empty; use the first invalid input line. NaN and Infinity are invalid JSON. Success exits 0 and emits one JSON value.\nRefactor the existing working implementation: put record validation and aggregation in logstats/domain.py, and retain CLI parsing, JSON decoding and input/output in logstats/cli.py. Keep observable behavior unchanged, avoid duplicate implementations. You may choose the internal domain API.\n","a3a6665228150c8cc04ce36e35e6667a806d325db2f8ba52941c7cddc0fe6e8a":"Complete the refactoring requested in README.md while preserving behavior, and verify the result. Keep README.md and TASK.txt unchanged. Use Python standard library only. Work only within this project, without external services or other projects. You may add your own tests and documentation. Finish with a concise report when the requested work is complete.\n","e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855":"","79ee6f134c5c5193377cf9b189cbdcc3e2095e49ba9cec310114441c15a917c4":"from .cli import main\nraise SystemExit(main())\n","235f99f97812f6237ee088024269bcc84c95a32e703d99aa2eb28e24b246308a":"import json\nimport sys\n\nfrom .domain import LogError, aggregate, identifier\n\n\ndef reject_constant(value):\n raise ValueError()\n\n\ndef decode_records(lines):\n \"\"\"Yield decoded records with their physical input line numbers.\"\"\"\n for line, raw in enumerate(lines, 1):\n if not raw.strip():\n continue\n try:\n record = json.loads(raw, parse_constant=reject_constant)\n except (ValueError, RecursionError):\n raise LogError('INVALID_JSON', line) from None\n yield line, record\n\n\ndef main():\n try:\n args = sys.argv[1:]\n if not args:\n selected = None\n elif len(args) == 2 and args[0] == '--service' and identifier(args[1]):\n selected = args[1]\n else:\n raise LogError('INVALID_ARGUMENT')\n result = aggregate(decode_records(sys.stdin), selected)\n except LogError as error:\n print(json.dumps({'error': {'code': error.code, 'line': error.line}}),\n file=sys.stderr)\n return 2\n print(json.dumps(result))\n return 0\n","a217d11663c675af5270733d833ac12eb2289516c4fed8fab964acb12fa4111e":"\"\"\"Record validation and aggregation, independent of JSON and stream I/O.\"\"\"\n\nimport re\n\n\nclass LogError(Exception):\n def __init__(self, code, line=0):\n self.code = code\n self.line = line\n\n\ndef identifier(value):\n return (isinstance(value, str)\n and re.fullmatch(r'[A-Za-z0-9_-]{1,32}', value) is not None)\n\n\ndef validate(record, line):\n if not isinstance(record, dict) or set(record) != {'service', 'level', 'duration_ms'}:\n raise LogError('INVALID_RECORD', line)\n if (not identifier(record['service'])\n or record['level'] not in ['info', 'warn', 'error']\n or type(record['duration_ms']) is not int\n or not 0 <= record['duration_ms'] <= 1000000000):\n raise LogError('INVALID_RECORD', line)\n\n\ndef aggregate(records, selected=None):\n \"\"\"Consume (line number, record) pairs, validating even unselected services.\"\"\"\n groups = {}\n for line, record in records:\n validate(record, line)\n name = record['service']\n duration = record['duration_ms']\n row = groups.setdefault(name, dict(\n service=name, count=0, errors=0, duration_sum_ms=0, duration_max_ms=0))\n row['count'] += 1\n row['errors'] += int(record['level'] == 'error')\n row['duration_sum_ms'] += duration\n row['duration_max_ms'] = max(row['duration_max_ms'], duration)\n rows = [groups[name] for name in sorted(groups)\n if selected is None or selected == name]\n return {'services': rows, 'count': sum(row['count'] for row in rows)}\n","f20631cf9ac17fbb5af6e7a9ac989c8fb08c951ee06d51812236cb87962b7fa2":"import contextlib\nimport io\nimport json\nfrom pathlib import Path\nimport subprocess\nimport sys\nimport unittest\nfrom unittest.mock import patch\n\nfrom logstats import cli, domain\n\n\ndef record(service='api', level='info', duration_ms=1):\n return dict(service=service, level=level, duration_ms=duration_ms)\n\n\ndef run_cli(raw='', args=()):\n stdout, stderr = io.StringIO(), io.StringIO()\n with patch.object(sys, 'argv', ['logstats', *args]), \\\n patch.object(sys, 'stdin', io.StringIO(raw)), \\\n contextlib.redirect_stdout(stdout), contextlib.redirect_stderr(stderr):\n code = cli.main()\n return code, stdout.getvalue(), stderr.getvalue()\n\n\nclass LogstatsTests(unittest.TestCase):\n def assert_error(self, raw, code, line, args=()):\n self.assertEqual(run_cli(raw, args), (\n 2, '', json.dumps({'error': {'code': code, 'line': line}}) + '\\n'))\n\n def test_aggregation_and_filter(self):\n records = [record('z', 'warn', 0), record('a', 'error', 1000000000),\n record('a', 'info', 7), record('a', 'warn', 3)]\n raw = '\\n'.join(map(json.dumps, records))\n rows = [dict(service='a', count=3, errors=1, duration_sum_ms=1000000010,\n duration_max_ms=1000000000),\n dict(service='z', count=1, errors=0, duration_sum_ms=0, duration_max_ms=0)]\n for args, expected in [((), rows), (('--service', 'a'), rows[:1]),\n (('--service', 'missing'), [])]:\n with self.subTest(args=args):\n code, out, err = run_cli(raw, args)\n self.assertEqual((code, err), (0, ''))\n self.assertEqual(json.loads(out), dict(services=expected,\n count=sum(row['count'] for row in expected)))\n\n def test_empty_and_blank_input(self):\n for raw in ['', '\\n \\t\\r\\n']:\n self.assertEqual(run_cli(raw), (0, '{\"services\": [], \"count\": 0}\\n', ''))\n\n def test_invalid_records(self):\n invalid = [None, [], True, 1, 'text', {}, {**record(), 'extra': 0}]\n for key in record():\n missing = record()\n del missing[key]\n invalid.append(missing)\n for field, values in [\n ('service', ['', 'a' * 33, 'é', 'a b', 'a\\n', None, 1, []]),\n ('level', ['INFO', '', None, 1, [], {}]),\n ('duration_ms', [-1, 1000000001, True, False, 1.0, None, '1', [], {}]),\n ]:\n invalid.extend({**record(), field: value} for value in values)\n for value in invalid:\n with self.subTest(value=value):\n self.assert_error('\\n' + json.dumps(value), 'INVALID_RECORD', 2)\n\n def test_identifiers(self):\n for name in ['a', 'A0_-', 'a' * 32]:\n self.assertEqual(run_cli(json.dumps(record(name)), ('--service', name))[0], 0)\n\n def test_invalid_json(self):\n for raw in ['{', '{} {}', 'NaN', 'Infinity', '-Infinity',\n '{\"service\":\"a\",\"level\":\"info\",\"duration_ms\":NaN}']:\n with self.subTest(raw=raw[:80]):\n self.assert_error('\\n \\n' + raw, 'INVALID_JSON', 3)\n\n def test_decoder_recursion_error(self):\n with patch.object(cli.json, 'loads', side_effect=RecursionError):\n self.assert_error('\\n{}', 'INVALID_JSON', 2)\n\n def test_first_error_and_no_partial_output(self):\n good = json.dumps(record())\n self.assert_error(good + '\\n\\n{}\\n{', 'INVALID_RECORD', 3)\n self.assert_error(good + '\\n\\n{\\n{}', 'INVALID_JSON', 3)\n self.assert_error(good + '\\n{}', 'INVALID_RECORD', 2, ('--service', 'missing'))\n\n def test_invalid_arguments_take_precedence(self):\n for args in [('--help',), ('--serv', 'api'), ('--service=api',),\n ('--service',), ('--service', ''), ('--service', 'é'),\n ('--service', 'a' * 33), ('api',), ('--',),\n ('--service', 'api', 'extra'), ('--service', 'a', '--service', 'b')]:\n with self.subTest(args=args):\n self.assert_error('{', 'INVALID_ARGUMENT', 0, args)\n\n def test_domain_accepts_decoded_records(self):\n result = domain.aggregate(iter([(5, record('api', 'error', 9))]))\n self.assertEqual(result['count'], 1)\n self.assertEqual(result['services'][0]['errors'], 1)\n with self.assertRaises(domain.LogError) as error:\n domain.aggregate([(7, {})])\n self.assertEqual((error.exception.code, error.exception.line), ('INVALID_RECORD', 7))\n\n def test_module_entrypoint(self):\n for raw, expected in [('', (0, '{\"services\": [], \"count\": 0}\\n', '')),\n ('{', (2, '', '{\"error\": {\"code\": \"INVALID_JSON\", \"line\": 1}}\\n'))]:\n process = subprocess.run([sys.executable, '-m', 'logstats'], input=raw,\n capture_output=True, text=True,\n cwd=Path(__file__).resolve().parents[1])\n self.assertEqual((process.returncode, process.stdout, process.stderr), expected)\n\n\nif __name__ == '__main__':\n unittest.main()\n","a913841837ebc4163eaad7ef3cce5dd91bfdc4a360974d0f90e46b626852ba01":"\"\"\"Command-line parsing, JSON decoding, and input/output.\"\"\"\n\nimport json\nimport sys\n\nfrom . import domain\nfrom .domain import LogError, identifier\n\n\ndef reject_constant(value):\n raise ValueError()\n\n\ndef decode_records(lines):\n \"\"\"Decode lazily so validation reports the first invalid input line.\"\"\"\n for line, raw in enumerate(lines, 1):\n if not raw.strip():\n continue\n try:\n record = json.loads(raw, parse_constant=reject_constant)\n except (ValueError, RecursionError):\n raise LogError(\"INVALID_JSON\", line) from None\n yield line, record\n\n\ndef aggregate(lines, selected):\n return domain.aggregate(decode_records(lines), selected)\n\n\ndef main():\n try:\n args = sys.argv[1:]\n if not args:\n selected = None\n elif len(args) == 2 and args[0] == \"--service\" and identifier(args[1]):\n selected = args[1]\n else:\n raise LogError(\"INVALID_ARGUMENT\")\n result = aggregate(sys.stdin, selected)\n except LogError as error:\n print(json.dumps({\"error\": {\"code\": error.code, \"line\": error.line}}),\n file=sys.stderr)\n return 2\n print(json.dumps(result))\n return 0\n","d1130b1c67da31a31644d46c838824176b79c347b4b331c9a7fe7e7cc28aec6e":"\"\"\"Validation and statistics for decoded log records.\"\"\"\n\nimport re\n\n\nclass LogError(Exception):\n def __init__(self, code, line=0):\n self.code = code\n self.line = line\n\n\ndef identifier(value):\n return (\n isinstance(value, str)\n and re.fullmatch(r\"[A-Za-z0-9_-]{1,32}\", value) is not None\n )\n\n\ndef validate(record, line):\n if not isinstance(record, dict) or set(record) != {\n \"service\", \"level\", \"duration_ms\"\n }:\n raise LogError(\"INVALID_RECORD\", line)\n if (\n not identifier(record[\"service\"])\n or record[\"level\"] not in [\"info\", \"warn\", \"error\"]\n or type(record[\"duration_ms\"]) is not int\n or not 0 <= record[\"duration_ms\"] <= 1000000000\n ):\n raise LogError(\"INVALID_RECORD\", line)\n\n\ndef aggregate(records, selected=None):\n \"\"\"Consume (physical line number, decoded record) pairs and return totals.\n\n Validate every record before filtering the returned service rows.\n \"\"\"\n groups = {}\n for line, record in records:\n validate(record, line)\n name = record[\"service\"]\n duration = record[\"duration_ms\"]\n row = groups.setdefault(name, dict(\n service=name, count=0, errors=0,\n duration_sum_ms=0, duration_max_ms=0,\n ))\n row[\"count\"] += 1\n row[\"errors\"] += int(record[\"level\"] == \"error\")\n row[\"duration_sum_ms\"] += duration\n row[\"duration_max_ms\"] = max(row[\"duration_max_ms\"], duration)\n rows = [groups[name] for name in sorted(groups)\n if selected is None or selected == name]\n return {\"services\": rows, \"count\": sum(row[\"count\"] for row in rows)}\n","5e7167d3debaa53ca731f234bf566a0aa11705dc0fce712a270bbe2553fb7f41":"import json\nfrom pathlib import Path\nimport subprocess\nimport sys\nimport unittest\nfrom unittest.mock import patch\n\nfrom logstats import cli, domain\n\n\nROOT = Path(__file__).resolve().parents[1]\n\n\ndef record(service=\"api\", level=\"info\", duration_ms=1):\n return dict(service=service, level=level, duration_ms=duration_ms)\n\n\ndef jsonl(*records):\n return \"\".join(json.dumps(item) + \"\\n\" for item in records)\n\n\nclass CliTests(unittest.TestCase):\n def run_cli(self, data=\"\", args=()):\n return subprocess.run(\n [sys.executable, \"-m\", \"logstats\", *args], input=data,\n text=True, capture_output=True, cwd=ROOT,\n )\n\n def assert_success(self, data, expected, args=()):\n result = self.run_cli(data, args)\n self.assertEqual(result.returncode, 0, result.stderr)\n self.assertEqual(result.stderr, \"\")\n self.assertEqual(json.loads(result.stdout), expected)\n self.assertEqual(len(result.stdout.splitlines()), 1)\n\n def assert_error(self, data, code, line, args=()):\n result = self.run_cli(data, args)\n self.assertEqual(result.returncode, 2)\n self.assertEqual(result.stdout, \"\")\n self.assertEqual(json.loads(result.stderr),\n {\"error\": {\"code\": code, \"line\": line}})\n\n def test_empty_and_absent(self):\n for data, args in [(\"\", ()), (\"\\n \\t\\n\", ()),\n (jsonl(record()), (\"--service\", \"absent\"))]:\n with self.subTest(data=data, args=args):\n self.assert_success(data, {\"services\": [], \"count\": 0}, args)\n\n def test_totals_sorting_and_selection(self):\n data = \"\\n\" + jsonl(record(\"z\", \"error\", 0),\n record(\"A\", \"warn\", 1000000000),\n record(\"A\", \"error\", 1000000000),\n record(\"A\", \"info\", 2))\n rows = [dict(service=\"A\", count=3, errors=1,\n duration_sum_ms=2000000002, duration_max_ms=1000000000),\n dict(service=\"z\", count=1, errors=1,\n duration_sum_ms=0, duration_max_ms=0)]\n self.assert_success(data, {\"services\": rows, \"count\": 4})\n self.assert_success(data, {\"services\": rows[:1], \"count\": 3},\n (\"--service\", \"A\"))\n\n def test_invalid_records(self):\n invalid = [None, [], 2, \"text\", True, {},\n {\"service\": \"a\", \"level\": \"info\"},\n dict(record(), extra=1)]\n for value in [\"\", \"a\" * 33, \"é\", \"a b\", \"a\\n\", 1, None, []]:\n invalid.append(record(service=value))\n for value in [\"INFO\", \"debug\", None, [], {}, 1]:\n invalid.append(record(level=value))\n for value in [-1, 1000000001, True, False, 1.0, \"1\", None, [], {}]:\n invalid.append(record(duration_ms=value))\n for item in invalid:\n with self.subTest(item=item):\n self.assert_error(\"\\n\" + jsonl(record(), item),\n \"INVALID_RECORD\", 3)\n\n def test_invalid_json(self):\n for raw in [\"{\", \"{} {}\", \"NaN\", \"Infinity\", \"-Infinity\",\n '{\"service\":\"api\",\"level\":\"info\",\"duration_ms\":NaN}']:\n with self.subTest(raw=raw[:80]):\n self.assert_error(jsonl(record()) + \"\\n\" + raw,\n \"INVALID_JSON\", 3)\n\n def test_first_error_and_filter_validation(self):\n self.assert_error(\"\\n{}\\n{\", \"INVALID_RECORD\", 2)\n self.assert_error(\"\\n{\\n{}\", \"INVALID_JSON\", 2)\n self.assert_error(jsonl(record(), record(\"other\", duration_ms=-1)),\n \"INVALID_RECORD\", 2, (\"--service\", \"api\"))\n self.assert_error(jsonl(record()) + \"{\", \"INVALID_JSON\", 2,\n (\"--service\", \"absent\"))\n\n def test_arguments(self):\n for args in [(\"--help\",), (\"--service\",), (\"--serv\", \"api\"),\n (\"--service=api\",), (\"api\",), (\"--\",),\n (\"--service\", \"api\", \"extra\"),\n (\"--service\", \"api\", \"--service\", \"api\")]:\n with self.subTest(args=args):\n self.assert_error(\"{\", \"INVALID_ARGUMENT\", 0, args)\n for name in [\"\", \"a\" * 33, \"é\", \"a b\", \"a\\n\"]:\n with self.subTest(name=name):\n self.assert_error(\"\", \"INVALID_ARGUMENT\", 0,\n (\"--service\", name))\n for name in [\"a\" * 32, \"A0_-\", \"--service\"]:\n with self.subTest(name=name):\n self.assert_success(jsonl(record(name)), {\n \"services\": [dict(service=name, count=1, errors=0,\n duration_sum_ms=1, duration_max_ms=1)],\n \"count\": 1,\n }, (\"--service\", name))\n\n def test_json_decoder_semantics(self):\n self.assert_success(\n '{\"service\":\"old\",\"service\":\"api\",\"level\":\"info\",'\n '\"duration_ms\":-0}',\n {\"services\": [dict(service=\"api\", count=1, errors=0,\n duration_sum_ms=0, duration_max_ms=0)], \"count\": 1},\n )\n self.assert_error(jsonl(record(duration_ms=1e20)), \"INVALID_RECORD\", 1)\n\n\nclass DomainTests(unittest.TestCase):\n def test_decoded_records(self):\n self.assertEqual(domain.aggregate(iter([(4, record(\"a\", \"error\", 7))])),\n {\"services\": [dict(service=\"a\", count=1, errors=1,\n duration_sum_ms=7, duration_max_ms=7)],\n \"count\": 1})\n\n def test_decoder_recursion_error(self):\n with patch.object(cli.json, \"loads\", side_effect=RecursionError):\n with self.assertRaises(domain.LogError) as caught:\n list(cli.decode_records([\"\\n\", \"{}\\n\"]))\n self.assertEqual((caught.exception.code, caught.exception.line),\n (\"INVALID_JSON\", 2))\n\n def test_validation_stops_iteration(self):\n def records():\n yield 5, {}\n self.fail(\"Consumed input after an invalid record\")\n with self.assertRaises(domain.LogError) as caught:\n domain.aggregate(records(), \"absent\")\n self.assertEqual((caught.exception.code, caught.exception.line),\n (\"INVALID_RECORD\", 5))\n\n\nif __name__ == \"__main__\":\n unittest.main()\n","e177969fb47a3fbf07fae77e69dfb68b821bbf4dbfac37f708fa285cffb21985":"import copy\nimport json\nfrom pathlib import Path\nimport subprocess\nimport sys\nimport unittest\n\n\nCLI = Path(__file__).with_name('quote.py')\n\n\ndef order(price=100, quantity=1, rate=0):\n return {'items': [{'sku': 'A-1_', 'quantity': quantity,\n 'unit_cents': price}], 'tax_bps': rate}\n\n\nclass QuoteCLITests(unittest.TestCase):\n def run_cli(self, payload, *args):\n return subprocess.run([sys.executable, str(CLI), *args],\n input=payload, text=True, capture_output=True)\n\n def assert_invalid(self, payload, *args):\n result = self.run_cli(payload, *args)\n self.assertEqual(result.returncode, 2)\n self.assertEqual(result.stdout, '')\n self.assertEqual(result.stderr, '{\"error\": \"INVALID_ORDER\"}\\n')\n\n def assert_quote(self, value, subtotal, discount, tax, shipping):\n result = self.run_cli(json.dumps(value))\n self.assertEqual(result.returncode, 0, result.stderr)\n self.assertEqual(result.stderr, '')\n self.assertEqual(json.loads(result.stdout), {\n 'subtotal_cents': subtotal, 'discount_cents': discount,\n 'tax_cents': tax, 'shipping_cents': shipping,\n 'total_cents': subtotal - discount + tax + shipping})\n\n def test_discount_threshold_and_rounding(self):\n for subtotal, discount in [(9999, 0), (10000, 1000), (10001, 1000),\n (10004, 1000), (10005, 1001), (10006, 1001)]:\n with self.subTest(subtotal=subtotal):\n self.assert_quote(order(subtotal), subtotal, discount, 0, 500)\n\n def test_tax_rounding_and_discounted_base(self):\n for rate, tax in [(4999, 0), (5000, 1), (5001, 1), (10000, 1)]:\n with self.subTest(rate=rate):\n self.assert_quote(order(1, rate=rate), 1, 0, tax, 500)\n self.assert_quote(order(10005, rate=1250), 10005, 1001, 1126, 500)\n\n def test_shipping_uses_discounted_subtotal_before_tax(self):\n self.assert_quote(order(16666, rate=10000), 16666, 1667, 14999, 500)\n self.assert_quote(order(16667), 16667, 1667, 0, 0)\n self.assert_quote(order(16668), 16668, 1667, 0, 0)\n\n def test_zero_maximum_and_duplicate_lines(self):\n self.assert_quote(order(0), 0, 0, 0, 500)\n value = order(1000000, 1000, 10000)\n value['items'] *= 100\n self.assert_quote(value, 100000000000, 10000000000, 90000000000, 0)\n value = order(25, 2)\n value['items'].append({'sku': 'A-1_', 'quantity': 3, 'unit_cents': 10})\n self.assert_quote(value, 80, 0, 0, 500)\n\n def test_invalid_numeric_values(self):\n for field, bad_values in {\n 'quantity': [True, False, 1.0, 0, -1, 1001, '1', None],\n 'unit_cents': [True, False, 1.0, -1, 1000001, '0', None],\n 'tax_bps': [True, False, 1.0, -1, 10001, '0', None],\n }.items():\n for bad in bad_values:\n with self.subTest(field=field, value=bad):\n value = order()\n target = value if field == 'tax_bps' else value['items'][0]\n target[field] = bad\n self.assert_invalid(json.dumps(value))\n\n def test_schema_and_sku(self):\n invalid = [None, [], 1, {}, {'items': []}, {'tax_bps': 0}]\n for items in [None, {}, [], [None], [1], [[]], [order()['items'][0]] * 101]:\n invalid.append({'items': items, 'tax_bps': 0})\n for location in ['root', 'item']:\n base = order()\n target = base if location == 'root' else base['items'][0]\n for key in list(target):\n value = copy.deepcopy(base)\n del (value if location == 'root' else value['items'][0])[key]\n invalid.append(value)\n target['extra'] = 0\n invalid.append(base)\n for sku in ['', 'a' * 33, 'é', 'a b', 'a\\n', 'a.b', None, 123, True]:\n value = order()\n value['items'][0]['sku'] = sku\n invalid.append(value)\n for value in invalid:\n with self.subTest(value=value):\n self.assert_invalid(json.dumps(value))\n value = order()\n value['items'][0]['sku'] = 'a' * 32\n self.assert_quote(value, 100, 0, 0, 500)\n\n def test_malformed_json_and_arguments(self):\n for payload in ['', '{', '{} {}', '{\"items\":}', '{\"items\": [],}']:\n with self.subTest(payload=payload):\n self.assert_invalid(payload)\n for arg in ['--help', '--version', 'extra']:\n with self.subTest(arg=arg):\n self.assert_invalid(json.dumps(order()), arg)\n\n\nif __name__ == '__main__':\n unittest.main()\n","70f94e8bd5c95cc3d70f8bfe9183fc9f0ae6c387aa3a935af531fc71fe45df71":"import json\nfrom pathlib import Path\nimport subprocess\nimport sys\nimport unittest\n\n\nCLI = Path(__file__).with_name('quote.py')\n\n\ndef order(price=100, quantity=1, rate=0):\n return {'items': [{'sku': 'A_1-b', 'quantity': quantity,\n 'unit_cents': price}], 'tax_bps': rate}\n\n\nclass QuoteCLITests(unittest.TestCase):\n def run_cli(self, payload, *args):\n return subprocess.run([sys.executable, str(CLI), *args],\n input=payload, capture_output=True, text=True)\n\n def assert_invalid(self, payload, *args):\n result = self.run_cli(payload, *args)\n self.assertEqual(result.returncode, 2)\n self.assertEqual(result.stdout, '')\n self.assertEqual(json.loads(result.stderr), {'error': 'INVALID_ORDER'})\n self.assertEqual(len(result.stderr.splitlines()), 1)\n\n def test_totals_and_rounding_boundaries(self):\n # price, quantity, rate, subtotal, discount, tax, shipping, total\n cases = [\n (0, 1, 10000, 0, 0, 0, 500, 500),\n (9999, 1, 0, 9999, 0, 0, 500, 10499),\n (10000, 1, 0, 10000, 1000, 0, 500, 9500),\n (10004, 1, 0, 10004, 1000, 0, 500, 9504),\n (10005, 1, 0, 10005, 1001, 0, 500, 9504),\n (1, 1, 4999, 1, 0, 0, 500, 501),\n (1, 1, 5000, 1, 0, 1, 500, 502),\n (1, 1, 5001, 1, 0, 1, 500, 502),\n (10000, 1, 5, 10000, 1000, 5, 500, 9505),\n (16666, 1, 10000, 16666, 1667, 14999, 500, 30498),\n (16667, 1, 0, 16667, 1667, 0, 0, 15000),\n (16668, 1, 0, 16668, 1667, 0, 0, 15001),\n (1000000, 1000, 10000, 1000000000, 100000000,\n 900000000, 0, 1800000000),\n ]\n keys = ('subtotal_cents', 'discount_cents', 'tax_cents',\n 'shipping_cents', 'total_cents')\n for price, quantity, rate, *expected in cases:\n with self.subTest(price=price, quantity=quantity, rate=rate):\n result = self.run_cli(json.dumps(order(price, quantity, rate)))\n self.assertEqual(result.returncode, 0, result.stderr)\n self.assertEqual(result.stderr, '')\n actual = json.loads(result.stdout)\n self.assertEqual(actual, dict(zip(keys, expected)))\n self.assertTrue(all(type(value) is int for value in actual.values()))\n self.assertEqual(len(result.stdout.splitlines()), 1)\n\n def test_duplicate_skus_and_maximum_item_count(self):\n value = order(1000000, 1000, 10000)\n value['items'][0]['sku'] = 'a' * 32\n value['items'] *= 100\n result = self.run_cli(json.dumps(value))\n self.assertEqual(result.returncode, 0, result.stderr)\n self.assertEqual(result.stderr, '')\n self.assertEqual(json.loads(result.stdout), {\n 'subtotal_cents': 100000000000, 'discount_cents': 10000000000,\n 'tax_cents': 90000000000, 'shipping_cents': 0,\n 'total_cents': 180000000000})\n\n def test_invalid_numeric_values(self):\n for field, maximum in [('quantity', 1000), ('unit_cents', 1000000),\n ('tax_bps', 10000)]:\n invalid = [True, False, 1.0, '1', None, [], {}, -1, maximum + 1]\n if field == 'quantity':\n invalid.append(0)\n for value in invalid:\n with self.subTest(field=field, value=value):\n payload = order()\n target = payload if field == 'tax_bps' else payload['items'][0]\n target[field] = value\n self.assert_invalid(json.dumps(payload))\n\n def test_invalid_schema_and_skus(self):\n invalid = [None, [], True, 1, 'order', {}, {'items': []}]\n for field in order():\n payload = order()\n del payload[field]\n invalid.append(payload)\n payload = order()\n payload['extra'] = 1\n invalid.append(payload)\n for items in [None, {}, 'items', [], [order()['items'][0]] * 101,\n [None], [1], [[]]]:\n payload = order()\n payload['items'] = items\n invalid.append(payload)\n for field in order()['items'][0]:\n payload = order()\n del payload['items'][0][field]\n invalid.append(payload)\n payload = order()\n payload['items'][0]['extra'] = 1\n invalid.append(payload)\n for sku in ['', 'a' * 33, 'é', 'a b', 'a\\n', 'a.b', 1, None, True]:\n payload = order()\n payload['items'][0]['sku'] = sku\n invalid.append(payload)\n for payload in invalid:\n with self.subTest(payload=payload):\n self.assert_invalid(json.dumps(payload))\n\n def test_malformed_json_and_arguments(self):\n for payload in ['', '{', '{} {}', '{\"items\":}', 'null trailing']:\n with self.subTest(payload=payload):\n self.assert_invalid(payload)\n for args in [('--help',), ('--version',), ('extra',), ('--',)]:\n with self.subTest(args=args):\n self.assert_invalid(json.dumps(order()), *args)\n\n\nif __name__ == '__main__':\n unittest.main()\n","2330c531bb052743cd0cee4d536e822d829a8b8484cb4aa594bf2815860af22a":"# Ticket snapshot analysis\nImplement python3 analyze.py INPUT_DIR OUTPUT_DIR using the standard library. Read every *.jsonl file in INPUT_DIR; each nonblank line is a ticket snapshot with id, updated_at (integer revision), team, status, priority, resolution_hours. Input JSON is well formed. Multiple snapshots may share an ID; retain the largest updated_at per ID. Equal revisions are exact duplicate objects; tie selection must not affect the result. Count raw_rows and unique_tickets, and discarded_rows=raw_rows-unique_tickets. Normalize team by stripping whitespace and lowercasing. Status is open, pending, or closed; priority is low, medium, or high.\nWrite OUTPUT_DIR/summary.json with raw_rows, unique_tickets, discarded_rows, and teams sorted alphabetically. Each team row contains team, total, unresolved (status not closed), high_priority_unresolved, closed, missing_closed_duration, median_resolution_hours, p90_resolution_hours, and sla_breaches. Include only closed records with a non-null duration in duration statistics; durations are nonnegative numbers. missing_closed_duration counts closed records with null duration. Median is the middle value or arithmetic mean of two middle values. P90 uses nearest rank, ceil(0.9*n), with 1-based rank. Empty duration groups have null median and p90. sla_breaches counts valid closed durations strictly greater than 24. Create OUTPUT_DIR if needed. Do not modify input data.\nWrite OUTPUT_DIR/report.md summarizing deduplication, per-team unresolved and high-priority workload, duration statistics and missing-data handling, with correct numbers. Run the tool on the supplied data/ and write those deliverables under output/. The script must also work on other exports with this schema. An empty input directory yields all counts zero and an empty teams array.\n","0e9c970cef1f3a3cf1222338028bdaebc1aea53d0ab06fe3c572767c0a42b6fe":"Implement the reusable ticket analysis requested in README.md, run it on the supplied data into output/, and verify the results. Keep README.md and TASK.txt unchanged. Use Python standard library only. Work only within this project, without external services or other projects. You may add your own tests and documentation. Finish with a concise report when the requested work is complete.\n","7c866400411f1d0fa0397d0fc378078caba12e47f82d0c015636c02a7c45a9ed":"\"\"\"Analyze latest ticket snapshots using only the Python standard library.\"\"\"\n\nimport argparse\nimport json\nfrom pathlib import Path\nfrom statistics import median\n\n\ndef analyze(input_dir):\n \"\"\"Return summary data for the JSONL files directly inside input_dir.\"\"\"\n input_dir = Path(input_dir)\n if not input_dir.is_dir():\n raise NotADirectoryError(input_dir)\n latest = {}\n raw_rows = 0\n for path in sorted(input_dir.glob('*.jsonl')):\n if not path.is_file():\n continue\n with path.open(encoding='utf-8') as source:\n for line in source:\n if not line.strip():\n continue\n ticket = json.loads(line)\n raw_rows += 1\n previous = latest.get(ticket['id'])\n if previous is None or ticket['updated_at'] > previous['updated_at']:\n latest[ticket['id']] = ticket\n\n groups = {}\n for ticket in latest.values():\n team = ticket['team'].strip().lower()\n groups.setdefault(team, []).append(ticket)\n\n teams = []\n for team, tickets in sorted(groups.items()):\n closed = [t for t in tickets if t['status'] == 'closed']\n unresolved = [t for t in tickets if t['status'] != 'closed']\n durations = sorted(t['resolution_hours'] for t in closed\n if t['resolution_hours'] is not None)\n teams.append({\n 'team': team,\n 'total': len(tickets),\n 'unresolved': len(unresolved),\n 'high_priority_unresolved': sum(t['priority'] == 'high' for t in unresolved),\n 'closed': len(closed),\n 'missing_closed_duration': len(closed) - len(durations),\n 'median_resolution_hours': median(durations) if durations else None,\n # Integer arithmetic computes ceil(0.9*n) exactly.\n 'p90_resolution_hours': durations[(9 * len(durations) + 9) // 10 - 1]\n if durations else None,\n 'sla_breaches': sum(d > 24 for d in durations),\n })\n return {'raw_rows': raw_rows, 'unique_tickets': len(latest),\n 'discarded_rows': raw_rows - len(latest), 'teams': teams}\n\n\ndef render_report(summary):\n \"\"\"Render a Markdown report from a summary.\"\"\"\n lines = [\n '# Ticket snapshot analysis', '',\n f\"Read {summary['raw_rows']:,} snapshots; retained {summary['unique_tickets']:,} \"\n f\"unique tickets and discarded {summary['discarded_rows']:,} rows.\",\n 'Each ticket uses its largest updated_at revision. Equal revisions are '\n 'duplicates. Team names are stripped and lowercased.', '',\n '| Team | Total | Unresolved | High-priority unresolved | Closed | Missing closed duration | Median hours | P90 hours | SLA breaches |',\n '| --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: |',\n ]\n for row in summary['teams']:\n team = row['team'].replace('&', '&amp;').replace('<', '&lt;').replace('>', '&gt;')\n team = team.replace('|', '&#124;').replace('\\r', '&#13;').replace('\\n', '&#10;')\n values = [team] + [str(row[key]) if row[key] is not None else 'N/A' for key in (\n 'total', 'unresolved', 'high_priority_unresolved', 'closed',\n 'missing_closed_duration', 'median_resolution_hours',\n 'p90_resolution_hours', 'sla_breaches')]\n lines.append('| ' + ' | '.join(values) + ' |')\n lines.extend(['',\n 'Unresolved includes open and pending tickets. High-priority workload counts '\n 'only unresolved tickets with high priority.', '',\n 'Duration statistics include only closed tickets with non-null durations, '\n 'including zero. Closed tickets with null durations are counted as missing '\n 'and excluded from duration statistics and SLA breaches. '\n 'Durations on unresolved tickets are excluded.', '',\n 'Median is the middle duration, or the mean of the two middle durations. '\n 'P90 uses nearest rank ceil(0.9 × n), with ranks starting at 1. '\n 'N/A (null in JSON) means no valid closed durations. '\n 'SLA breaches count closed durations strictly greater than 24 hours.', ''])\n return '\\n'.join(lines)\n\n\ndef main():\n parser = argparse.ArgumentParser(description=__doc__)\n parser.add_argument('input_dir', type=Path)\n parser.add_argument('output_dir', type=Path)\n args = parser.parse_args()\n summary = analyze(args.input_dir)\n args.output_dir.mkdir(parents=True, exist_ok=True)\n (args.output_dir / 'summary.json').write_text(\n json.dumps(summary, indent=2, ensure_ascii=False) + '\\n', encoding='utf-8')\n (args.output_dir / 'report.md').write_text(render_report(summary), encoding='utf-8')\n\n\nif __name__ == '__main__':\n main()\n","4b795b9a80bf30b3e684a086f9857448c789f37e1976005665696980a3ea1d65":"{\"id\": \"T00796\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00947\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01056\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00855\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01172\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 23}\n{\"id\": \"T00329\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00842\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01755\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 29.0}\n{\"id\": \"T01369\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 48.0}\n{\"id\": \"T00999\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00815\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 94.5}\n{\"id\": \"T00835\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01728\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01431\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01175\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01478\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00167\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 4.5}\n{\"id\": \"T00766\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00648\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01081\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01424\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01689\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01728\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00248\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 1}\n{\"id\": \"T01252\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 83.0}\n{\"id\": \"T00880\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01384\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01143\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00286\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00196\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01257\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01791\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01079\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00882\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00136\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00784\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 8}\n{\"id\": \"T00711\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 23.5}\n{\"id\": \"T00332\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 74.0}\n{\"id\": \"T00582\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01416\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 82}\n{\"id\": \"T00207\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01220\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01488\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00182\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01015\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01290\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01087\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 8.0}\n{\"id\": \"T00110\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 84.5}\n{\"id\": \"T00963\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 5.5}\n{\"id\": \"T00479\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00873\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 64.5}\n{\"id\": \"T01233\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00824\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00552\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 66}\n{\"id\": \"T00882\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01784\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 63}\n{\"id\": \"T00576\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 65.0}\n{\"id\": \"T00712\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 76}\n{\"id\": \"T00468\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 80}\n{\"id\": \"T01212\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 43}\n{\"id\": \"T01240\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 13}\n{\"id\": \"T01418\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00378\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00102\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 31.5}\n{\"id\": \"T01300\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01694\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01611\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01064\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00624\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 77}\n{\"id\": \"T00964\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 76.5}\n{\"id\": \"T00874\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00860\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 92}\n{\"id\": \"T01491\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01688\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 47}\n{\"id\": \"T00283\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00952\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01762\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 23.5}\n{\"id\": \"T01331\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 24.5}\n{\"id\": \"T00547\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00552\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01026\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 6.0}\n{\"id\": \"T00662\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00387\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01268\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 55.0}\n{\"id\": \"T01620\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 99}\n{\"id\": \"T00253\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00967\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00812\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 26}\n{\"id\": \"T01668\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00196\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 52}\n{\"id\": \"T01551\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01163\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00992\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00792\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01192\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00242\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00744\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 63}\n{\"id\": \"T01249\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01674\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01120\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 45}\n{\"id\": \"T01340\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 53}\n{\"id\": \"T00891\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 74.5}\n{\"id\": \"T00921\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 2.0}\n{\"id\": \"T00995\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00151\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00433\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00421\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 17.0}\n{\"id\": \"T00076\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00520\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 35}\n{\"id\": \"T00903\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01542\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 4.0}\n{\"id\": \"T00222\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01064\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 68}\n{\"id\": \"T00477\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01250\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00688\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 22}\n{\"id\": \"T01203\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00268\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 25}\n{\"id\": \"T01199\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01111\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 22.5}\n{\"id\": \"T01120\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00379\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00368\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 44.0}\n{\"id\": \"T01359\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 73.0}\n{\"id\": \"T01436\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 31}\n{\"id\": \"T00810\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 15.5}\n{\"id\": \"T00665\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01529\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00460\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 54}\n{\"id\": \"T00655\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01647\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00664\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 28.0}\n{\"id\": \"T00867\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00260\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01640\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 91.5}\n{\"id\": \"T01768\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01156\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00950\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00588\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00507\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 16.0}\n{\"id\": \"T00663\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00580\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 16}\n{\"id\": \"T00536\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 80}\n{\"id\": \"T01677\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01116\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 63}\n{\"id\": \"T00648\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 52}\n{\"id\": \"T01611\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01147\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 26.5}\n{\"id\": \"T00386\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 42.5}\n{\"id\": \"T00080\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 23}\n{\"id\": \"T00606\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 27.5}\n{\"id\": \"T01340\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01404\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 22.5}\n{\"id\": \"T01251\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01198\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00979\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01792\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00975\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01061\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 54.5}\n{\"id\": \"T01368\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 34}\n{\"id\": \"T00306\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00251\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 73.0}\n{\"id\": \"T01082\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 34.5}\n{\"id\": \"T01770\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00981\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01746\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00389\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01481\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 44.5}\n{\"id\": \"T00778\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00316\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 61}\n{\"id\": \"T00007\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00542\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01631\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00380\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00229\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 3.5}\n{\"id\": \"T00313\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00853\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01154\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00977\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00726\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00300\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 55.0}\n{\"id\": \"T01537\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00593\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00904\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 15.0}\n{\"id\": \"T00246\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01334\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 90.0}\n{\"id\": \"T00092\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 10.0}\n{\"id\": \"T00405\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01319\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01215\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01227\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00215\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01142\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01574\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00561\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 81.5}\n{\"id\": \"T00916\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 20}\n{\"id\": \"T01761\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 91.0}\n{\"id\": \"T01092\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00851\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00724\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 29}\n{\"id\": \"T01276\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01182\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 51.0}\n{\"id\": \"T00370\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00252\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 65}\n{\"id\": \"T01197\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00145\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00162\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00834\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01440\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01746\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01676\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 19}\n{\"id\": \"T00728\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00024\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 9.5}\n{\"id\": \"T00729\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 7.5}\n{\"id\": \"T01301\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00100\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 46.0}\n{\"id\": \"T01206\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00336\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 77}\n{\"id\": \"T00125\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01414\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00816\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00018\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 17.0}\n{\"id\": \"T00762\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01115\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00027\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00414\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 44.5}\n{\"id\": \"T01173\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01513\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01305\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01304\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 52.5}\n{\"id\": \"T01072\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01274\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00692\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 75}\n{\"id\": \"T01792\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 44}\n{\"id\": \"T01599\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01459\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00723\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01320\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01045\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00821\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01255\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 88.0}\n{\"id\": \"T01691\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01782\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00513\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00698\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 37.0}\n{\"id\": \"T01587\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01624\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 83}\n{\"id\": \"T00028\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00425\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00953\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00988\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 63}\n{\"id\": \"T00820\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 86}\n{\"id\": \"T00897\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 0.0}\n{\"id\": \"T00259\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00068\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 95.5}\n{\"id\": \"T01404\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 22.5}\n{\"id\": \"T01718\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01420\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 94.0}\n{\"id\": \"T00862\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00266\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00220\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 3.5}\n{\"id\": \"T01131\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 35.0}\n{\"id\": \"T01332\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00018\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 17.0}\n{\"id\": \"T01004\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 48}\n{\"id\": \"T01236\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 98}\n{\"id\": \"T00044\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00831\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00472\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 97}\n{\"id\": \"T01065\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01191\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00568\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 23}\n{\"id\": \"T01259\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00088\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00393\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 1.5}\n{\"id\": \"T00438\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01287\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00760\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 40.0}\n{\"id\": \"T00826\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01442\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01475\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01116\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 90.0}\n{\"id\": \"T00852\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 39}\n{\"id\": \"T01268\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 51}\n{\"id\": \"T00035\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00945\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00042\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01604\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 55}\n{\"id\": \"T00492\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 70}\n{\"id\": \"T00148\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01739\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00446\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01436\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 39.0}\n{\"id\": \"T01717\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01382\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 57.0}\n{\"id\": \"T01767\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 31.5}\n{\"id\": \"T01476\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 69.0}\n{\"id\": \"T01534\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 70.0}\n{\"id\": \"T00776\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00050\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00846\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 31.5}\n{\"id\": \"T01570\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01713\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01223\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01601\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01357\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00524\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 53}\n{\"id\": \"T00078\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01506\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 24.5}\n{\"id\": \"T01399\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 78.5}\n{\"id\": \"T00508\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00248\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01581\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 74.0}\n{\"id\": \"T01232\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01244\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 86}\n{\"id\": \"T00160\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 58.5}\n{\"id\": \"T00551\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 21.5}\n{\"id\": \"T00610\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 54.0}\n{\"id\": \"T01363\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 2.5}\n{\"id\": \"T00075\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01180\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 64}\n{\"id\": \"T00898\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 77.5}\n{\"id\": \"T01760\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00702\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01573\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 26.0}\n{\"id\": \"T00954\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01586\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 89.0}\n{\"id\": \"T00288\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00124\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 10}\n{\"id\": \"T00574\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01435\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01226\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 67.0}\n{\"id\": \"T00173\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01380\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 58}\n{\"id\": \"T00152\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 76}\n{\"id\": \"T01548\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00622\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00178\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 56.5}\n{\"id\": \"T00599\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00105\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00448\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 26}\n{\"id\": \"T01602\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 77.5}\n{\"id\": \"T01621\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00800\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00704\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01493\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 28.5}\n{\"id\": \"T00269\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00709\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01423\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00103\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 38.5}\n{\"id\": \"T01204\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 55}\n{\"id\": \"T00523\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 91.5}\n{\"id\": \"T01584\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00615\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 21.5}\n{\"id\": \"T01041\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00558\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 37.0}\n{\"id\": \"T00412\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01136\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 19.5}\n{\"id\": \"T00845\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00632\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 5}\n{\"id\": \"T00608\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01480\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 27}\n{\"id\": \"T01532\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 83}\n{\"id\": \"T00886\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00244\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 80}\n{\"id\": \"T01673\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01749\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00261\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01597\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00590\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 94.5}\n{\"id\": \"T01174\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01379\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01260\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00611\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01455\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 43.0}\n{\"id\": \"T00193\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00858\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 40.5}\n{\"id\": \"T01649\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 85.5}\n{\"id\": \"T01799\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00232\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00555\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 37.5}\n{\"id\": \"T01701\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01596\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01763\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00703\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01507\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01044\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 50.5}\n{\"id\": \"T01605\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 50.0}\n{\"id\": \"T00775\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01732\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01239\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00186\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00600\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 2}\n{\"id\": \"T00929\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 34.0}\n{\"id\": \"T00148\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 56}\n{\"id\": \"T00104\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 8}\n{\"id\": \"T00153\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00419\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01606\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00678\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01100\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01069\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00877\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00696\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 12}\n{\"id\": \"T01733\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 47.5}\n{\"id\": \"T00469\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00277\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00922\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00144\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 77}\n{\"id\": \"T01096\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01616\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 83.0}\n{\"id\": \"T00304\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 33.5}\n{\"id\": \"T00360\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 36.0}\n{\"id\": \"T01075\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00116\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 76}\n{\"id\": \"T00870\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00304\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 89}\n{\"id\": \"T00855\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01202\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01138\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00648\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01492\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01409\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 2.0}\n{\"id\": \"T01168\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01593\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00294\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00647\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 38.5}\n{\"id\": \"T01214\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 70.0}\n{\"id\": \"T01665\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00951\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00462\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00828\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 33.0}\n{\"id\": \"T01780\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 24}\n{\"id\": \"T00140\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 69}\n{\"id\": \"T01622\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 41.5}\n{\"id\": \"T00866\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01682\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 5.0}\n{\"id\": \"T01700\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 4.5}\n{\"id\": \"T00920\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 88}\n{\"id\": \"T00192\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00566\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 37.0}\n{\"id\": \"T00604\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 56}\n{\"id\": \"T00908\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00928\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 63}\n{\"id\": \"T00296\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 65}\n{\"id\": \"T01500\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 33}\n{\"id\": \"T00159\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 34.0}\n{\"id\": \"T00422\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01272\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 94.0}\n{\"id\": \"T01521\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00692\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 19.5}\n{\"id\": \"T00567\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00357\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00166\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 93.5}\n{\"id\": \"T00141\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 81.5}\n{\"id\": \"T01452\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 67.0}\n{\"id\": \"T01370\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01141\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01094\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 59.5}\n{\"id\": \"T00670\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00418\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 1.5}\n{\"id\": \"T00015\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00208\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 76}\n{\"id\": \"T00743\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01645\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00578\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01630\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 82.0}\n{\"id\": \"T01725\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00972\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00713\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00660\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00344\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01358\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01035\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00264\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00846\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 31.5}\n{\"id\": \"T00625\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01608\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00328\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 65.0}\n{\"id\": \"T01796\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 63.5}\n{\"id\": \"T00515\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00553\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01502\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00944\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 76.0}\n{\"id\": \"T00341\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 52.0}\n{\"id\": \"T00137\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01132\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 50}\n{\"id\": \"T01280\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 47}\n{\"id\": \"T01614\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 14.5}\n{\"id\": \"T00758\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00531\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01381\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 23.0}\n{\"id\": \"T00396\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01451\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 43.5}\n{\"id\": \"T00400\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 21}\n{\"id\": \"T01464\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 80}\n{\"id\": \"T00339\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 12.0}\n{\"id\": \"T00388\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01387\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01283\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01020\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 28.5}\n{\"id\": \"T00312\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 78}\n{\"id\": \"T00189\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00311\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01592\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 35}\n{\"id\": \"T01010\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01488\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 49}\n{\"id\": \"T00036\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00049\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00293\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01054\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00900\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00829\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 58.0}\n{\"id\": \"T00216\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 23}\n{\"id\": \"T01108\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01742\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00585\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01636\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01721\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 31.0}\n{\"id\": \"T01598\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00459\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 46.5}\n{\"id\": \"T00968\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01329\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 29.5}\n{\"id\": \"T00503\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01005\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01444\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00192\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 73}\n{\"id\": \"T01494\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 68.5}\n{\"id\": \"T01565\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 81.0}\n{\"id\": \"T00252\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00198\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01703\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00040\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 66}\n{\"id\": \"T00871\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 73.0}\n{\"id\": \"T01160\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 70}\n{\"id\": \"T01578\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01710\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01558\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 39.0}\n{\"id\": \"T01769\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 0.5}\n{\"id\": \"T00544\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 57}\n{\"id\": \"T00619\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00974\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01413\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00548\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 17.0}\n{\"id\": \"T01176\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01200\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 49}\n{\"id\": \"T01735\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 46.0}\n{\"id\": \"T00474\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01099\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00918\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 9.5}\n{\"id\": \"T01276\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00899\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00106\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 47.5}\n{\"id\": \"T00581\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01374\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00258\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01708\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00219\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01576\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 67}\n{\"id\": \"T00353\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00458\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 30.0}\n{\"id\": \"T01704\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00302\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 91.0}\n{\"id\": \"T00326\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00272\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 26}\n{\"id\": \"T00668\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 20}\n{\"id\": \"T00635\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01448\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 47}\n{\"id\": \"T00532\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 48}\n{\"id\": \"T00809\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00720\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 67}\n{\"id\": \"T01490\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00901\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01178\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00298\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01638\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00279\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01063\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 30.0}\n{\"id\": \"T01296\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 27.5}\n{\"id\": \"T00936\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 47.5}\n{\"id\": \"T00213\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01657\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 26.0}\n{\"id\": \"T00756\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 13}\n{\"id\": \"T01228\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 20.0}\n{\"id\": \"T01632\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 17}\n{\"id\": \"T00968\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00700\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00098\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00721\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00408\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00038\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01412\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 64}\n{\"id\": \"T01242\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 16.0}\n{\"id\": \"T00189\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00288\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 53}\n{\"id\": \"T00653\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00844\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 93.5}\n{\"id\": \"T01456\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 62}\n{\"id\": \"T00585\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00865\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01398\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00792\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00227\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00126\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00058\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00521\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 42.0}\n{\"id\": \"T00091\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01794\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 28.5}\n{\"id\": \"T00048\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 49.5}\n{\"id\": \"T01289\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00506\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01024\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00666\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 50.0}\n","fd8097092d1af0ad5dd9731003f41186aa8b140a4be86bfba5234fa6171d7b7b":"{\"id\": \"T00708\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00395\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01444\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 59}\n{\"id\": \"T00511\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00276\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00008\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 49.5}\n{\"id\": \"T01756\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 83}\n{\"id\": \"T01313\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00454\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01260\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 40}\n{\"id\": \"T01254\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 41.5}\n{\"id\": \"T00847\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00799\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 51.0}\n{\"id\": \"T00522\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00733\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 53.5}\n{\"id\": \"T00409\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00656\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 75}\n{\"id\": \"T00996\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 89}\n{\"id\": \"T01233\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01351\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01292\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 12}\n{\"id\": \"T00360\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 36.0}\n{\"id\": \"T01773\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 66.5}\n{\"id\": \"T00917\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01765\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00392\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 89}\n{\"id\": \"T01453\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00952\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 58}\n{\"id\": \"T00240\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 65.5}\n{\"id\": \"T00303\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 0.5}\n{\"id\": \"T00128\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 62.5}\n{\"id\": \"T01001\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01042\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00155\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 12.0}\n{\"id\": \"T00787\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01269\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01437\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00554\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 76.5}\n{\"id\": \"T00970\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00090\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01332\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01540\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01615\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01524\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00597\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 80.5}\n{\"id\": \"T01359\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 73.0}\n{\"id\": \"T00596\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 20}\n{\"id\": \"T00620\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 63}\n{\"id\": \"T00033\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 94.0}\n{\"id\": \"T00146\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 64.0}\n{\"id\": \"T00708\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 70}\n{\"id\": \"T01044\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 50.5}\n{\"id\": \"T01189\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00405\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00147\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00428\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 13.0}\n{\"id\": \"T00650\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 53.5}\n{\"id\": \"T00244\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01395\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00828\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 33.0}\n{\"id\": \"T01072\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 46}\n{\"id\": \"T00096\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 5.5}\n{\"id\": \"T00508\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 67}\n{\"id\": \"T00334\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01618\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 63.0}\n{\"id\": \"T01577\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 71.5}\n{\"id\": \"T00691\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00122\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01764\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 64}\n{\"id\": \"T00751\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 78.5}\n{\"id\": \"T01527\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00361\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 9.5}\n{\"id\": \"T00118\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01692\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 5}\n{\"id\": \"T00609\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00998\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01458\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 59.5}\n{\"id\": \"T01144\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 21.5}\n{\"id\": \"T00099\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00592\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 4.0}\n{\"id\": \"T00364\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 86}\n{\"id\": \"T01480\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00820\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01731\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 81.5}\n{\"id\": \"T00956\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00245\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01367\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 35.0}\n{\"id\": \"T01291\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01751\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 37.5}\n{\"id\": \"T01582\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00701\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00452\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00645\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00560\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00114\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 64.0}\n{\"id\": \"T01680\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 95}\n{\"id\": \"T01528\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 4}\n{\"id\": \"T00022\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 87.0}\n{\"id\": \"T00572\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 53.0}\n{\"id\": \"T00232\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 24}\n{\"id\": \"T01238\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00557\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01684\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 55}\n{\"id\": \"T01300\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 8}\n{\"id\": \"T01076\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00185\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01408\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00257\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01089\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 52.5}\n{\"id\": \"T00254\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 39.0}\n{\"id\": \"T01515\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00014\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01441\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 85.0}\n{\"id\": \"T01619\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 73.0}\n{\"id\": \"T00077\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01287\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01613\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01692\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00920\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00071\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00318\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00833\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01071\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00817\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00942\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 92.0}\n{\"id\": \"T01719\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00964\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 3}\n{\"id\": \"T00925\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 53.0}\n{\"id\": \"T00032\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 73.5}\n{\"id\": \"T01431\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01511\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01002\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01279\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01335\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01281\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00643\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 25.0}\n{\"id\": \"T00220\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00869\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01343\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00677\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01795\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 73.5}\n{\"id\": \"T01037\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00891\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 74.5}\n{\"id\": \"T00520\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 95.0}\n{\"id\": \"T00170\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 81.5}\n{\"id\": \"T01377\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00216\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01263\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01012\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01660\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01737\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 21.0}\n{\"id\": \"T00549\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 76.5}\n{\"id\": \"T00404\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 86}\n{\"id\": \"T00489\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01021\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 78.0}\n{\"id\": \"T01036\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01720\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 55.5}\n{\"id\": \"T00931\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01390\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00320\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 45}\n{\"id\": \"T00630\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00626\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01104\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 42}\n{\"id\": \"T00468\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01566\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 7.0}\n{\"id\": \"T01647\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00591\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00736\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 69}\n{\"id\": \"T00089\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01625\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 5.5}\n{\"id\": \"T00740\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01232\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01316\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00945\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00819\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01161\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 3.0}\n{\"id\": \"T01466\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00660\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00558\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 37.0}\n{\"id\": \"T01714\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 36.0}\n{\"id\": \"T00687\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 10.5}\n{\"id\": \"T00200\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 71}\n{\"id\": \"T01100\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 85.5}\n{\"id\": \"T01344\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01427\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 62.0}\n{\"id\": \"T01616\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 98}\n{\"id\": \"T01460\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 0}\n{\"id\": \"T00030\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00969\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 84.5}\n{\"id\": \"T01278\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 33.0}\n{\"id\": \"T00307\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00175\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01092\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 92}\n{\"id\": \"T01559\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01298\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00324\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00132\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00531\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00372\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00844\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 5}\n{\"id\": \"T00197\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01591\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 42.5}\n{\"id\": \"T01476\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 81}\n{\"id\": \"T01525\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 63.5}\n{\"id\": \"T00803\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 2.0}\n{\"id\": \"T00279\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01208\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00702\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00430\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01608\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 14}\n{\"id\": \"T01080\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01403\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 2.0}\n{\"id\": \"T01197\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00340\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00233\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01644\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 85}\n{\"id\": \"T00804\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 40}\n{\"id\": \"T01215\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01272\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 9}\n{\"id\": \"T01791\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01541\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 55.0}\n{\"id\": \"T00136\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 57}\n{\"id\": \"T01658\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 3.5}\n{\"id\": \"T01634\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01487\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01754\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00759\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01472\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01328\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 32}\n{\"id\": \"T01352\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 50}\n{\"id\": \"T01161\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 3.0}\n{\"id\": \"T00988\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00909\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01516\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00805\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00485\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01562\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00892\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 84}\n{\"id\": \"T01632\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 80.0}\n{\"id\": \"T01686\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01366\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01760\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01593\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00598\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00358\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 82.0}\n{\"id\": \"T00879\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 60.5}\n{\"id\": \"T00502\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01356\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00932\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 28}\n{\"id\": \"T01128\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01048\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00560\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 21}\n{\"id\": \"T01000\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 90.0}\n{\"id\": \"T00773\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01201\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00374\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01701\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00642\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00512\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 19}\n{\"id\": \"T01160\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 95.0}\n{\"id\": \"T01759\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 9.5}\n{\"id\": \"T00306\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00238\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01434\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01252\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 10}\n{\"id\": \"T00056\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 16}\n{\"id\": \"T00377\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01185\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 87.0}\n{\"id\": \"T01256\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 73}\n{\"id\": \"T00487\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 4.5}\n{\"id\": \"T00171\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 29.5}\n{\"id\": \"T01560\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01168\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 78}\n{\"id\": \"T00742\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01636\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 21}\n{\"id\": \"T01538\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01025\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00640\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 63}\n{\"id\": \"T00684\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 39}\n{\"id\": \"T01028\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 63}\n{\"id\": \"T00640\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 78.5}\n{\"id\": \"T00436\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 59.0}\n{\"id\": \"T00986\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00840\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 74}\n{\"id\": \"T01017\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00243\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 38.0}\n{\"id\": \"T01429\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00234\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01667\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 58.0}\n{\"id\": \"T00356\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 28}\n{\"id\": \"T00275\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01183\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01637\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01321\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01224\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01406\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 77.5}\n{\"id\": \"T01119\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 76.5}\n{\"id\": \"T01595\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 63.5}\n{\"id\": \"T00404\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 49.5}\n{\"id\": \"T00204\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 36.0}\n{\"id\": \"T01405\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 59.0}\n{\"id\": \"T00158\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00889\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01672\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00456\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 86}\n{\"id\": \"T00623\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00629\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01469\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01576\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00857\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00011\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01084\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01708\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 88}\n{\"id\": \"T01200\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00669\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 76.0}\n{\"id\": \"T00993\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00287\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00477\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01425\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 93.0}\n{\"id\": \"T00924\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01756\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01014\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00908\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 87}\n{\"id\": \"T00754\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 12.5}\n{\"id\": \"T00465\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 37.5}\n{\"id\": \"T01396\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00312\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00937\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01140\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 69}\n{\"id\": \"T00616\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00191\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00051\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00674\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 24.0}\n{\"id\": \"T01067\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00755\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00636\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 95}\n{\"id\": \"T01422\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 73.5}\n{\"id\": \"T00994\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01110\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00200\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00657\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01798\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 22.0}\n{\"id\": \"T01656\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00097\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01510\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00024\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 45}\n{\"id\": \"T00856\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00057\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01107\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00483\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01048\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 6}\n{\"id\": \"T00411\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01264\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 86}\n{\"id\": \"T00417\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00423\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01073\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00009\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 39.0}\n{\"id\": \"T00918\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 9.5}\n{\"id\": \"T01656\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01109\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01016\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 33}\n{\"id\": \"T00094\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 87.5}\n{\"id\": \"T00747\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 6.5}\n{\"id\": \"T00218\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00596\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 51.0}\n{\"id\": \"T00872\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 31}\n{\"id\": \"T01220\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 17}\n{\"id\": \"T01518\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01146\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 95.0}\n{\"id\": \"T01411\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00926\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01563\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00403\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 3.0}\n{\"id\": \"T01572\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00956\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 49}\n{\"id\": \"T00217\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00163\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 95.5}\n{\"id\": \"T01097\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00972\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01156\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 10}\n{\"id\": \"T00965\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00736\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01771\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01346\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 82.5}\n{\"id\": \"T00696\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00816\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 0}\n{\"id\": \"T01030\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 78.5}\n{\"id\": \"T00579\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 53.5}\n{\"id\": \"T01230\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00788\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 44.0}\n{\"id\": \"T01297\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00936\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 52}\n{\"id\": \"T00878\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 48.5}\n{\"id\": \"T01392\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 11}\n{\"id\": \"T00065\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01567\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00716\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 41}\n{\"id\": \"T00510\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01557\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 92.5}\n{\"id\": \"T00416\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 26}\n{\"id\": \"T00036\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01496\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01078\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00825\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01066\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00705\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00612\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 94}\n{\"id\": \"T00335\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01293\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 52.5}\n{\"id\": \"T00210\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00638\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 14.5}\n{\"id\": \"T01128\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 36}\n{\"id\": \"T00142\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 43.5}\n{\"id\": \"T00753\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00792\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00444\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 39.5}\n{\"id\": \"T00327\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01495\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 87.0}\n{\"id\": \"T01468\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 18}\n{\"id\": \"T00108\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 60}\n{\"id\": \"T00471\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 28.0}\n{\"id\": \"T00910\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00476\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 51}\n{\"id\": \"T00818\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00464\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 62.0}\n{\"id\": \"T01208\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 29}\n{\"id\": \"T00848\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 50.0}\n{\"id\": \"T00822\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00237\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 71.0}\n{\"id\": \"T00564\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01029\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00909\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00944\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 92}\n{\"id\": \"T01772\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 22}\n{\"id\": \"T00768\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 22}\n{\"id\": \"T01778\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01627\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00699\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00957\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00850\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01648\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 15}\n{\"id\": \"T00725\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00892\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00649\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01003\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00524\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01788\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 13}\n{\"id\": \"T00637\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00656\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00295\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 86.5}\n{\"id\": \"T01668\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 93}\n{\"id\": \"T01603\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00034\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00127\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00336\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00013\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 83.0}\n{\"id\": \"T00657\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01019\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01620\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00260\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 33}\n{\"id\": \"T01225\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00181\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01722\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01775\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 25.0}\n{\"id\": \"T00838\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01678\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 66.0}\n{\"id\": \"T00848\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 0}\n{\"id\": \"T00330\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01000\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 28}\n{\"id\": \"T00849\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01318\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01584\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 59.5}\n{\"id\": \"T00832\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 62.0}\n{\"id\": \"T00452\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 41}\n{\"id\": \"T00385\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00924\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01579\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01076\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 51}\n{\"id\": \"T00864\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 95.5}\n{\"id\": \"T00480\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 74.5}\n{\"id\": \"T00415\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 72.0}\n{\"id\": \"T00427\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00315\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00896\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 33}\n{\"id\": \"T01400\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01046\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 18.0}\n{\"id\": \"T00505\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00492\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01164\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 67}\n{\"id\": \"T00528\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00001\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01499\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00614\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00795\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01339\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01712\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 44}\n{\"id\": \"T01572\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 38}\n{\"id\": \"T01588\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 95}\n{\"id\": \"T01420\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 39}\n{\"id\": \"T00205\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 30.5}\n{\"id\": \"T01628\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00756\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01690\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 13.5}\n{\"id\": \"T00068\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 66}\n{\"id\": \"T00732\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 98}\n{\"id\": \"T00675\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01309\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01236\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00323\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00216\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01496\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00406\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00528\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01089\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 52.5}\n{\"id\": \"T00612\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00280\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01654\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01248\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 36}\n{\"id\": \"T00992\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 87}\n{\"id\": \"T01237\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00618\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01512\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 66}\n{\"id\": \"T01779\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01253\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00752\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 11}\n{\"id\": \"T00256\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 80}\n{\"id\": \"T01240\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00160\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 97}\n{\"id\": \"T01712\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00369\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01053\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 33.0}\n{\"id\": \"T00984\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 46}\n{\"id\": \"T01221\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00390\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01720\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 72}\n{\"id\": \"T01430\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 60.5}\n{\"id\": \"T00636\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00267\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00782\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01479\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01773\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 66.5}\n{\"id\": \"T00720\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00639\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 3.5}\n{\"id\": \"T00435\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 23.0}\n{\"id\": \"T01465\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01699\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 69.0}\n{\"id\": \"T00247\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00176\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 53.5}\n{\"id\": \"T00679\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00808\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 80}\n{\"id\": \"T01114\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 24.5}\n{\"id\": \"T01397\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 2.0}\n{\"id\": \"T00497\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00824\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 17}\n{\"id\": \"T00719\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01555\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00948\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01467\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01580\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 47.0}\n{\"id\": \"T00980\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00984\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 84.0}\n{\"id\": \"T00072\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 89.0}\n{\"id\": \"T00654\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 80.5}\n{\"id\": \"T00010\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 20.0}\n{\"id\": \"T00584\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00652\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00839\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01766\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 88.5}\n{\"id\": \"T01325\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 32.0}\n{\"id\": \"T01448\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01543\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00676\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 72}\n{\"id\": \"T00939\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 21.0}\n{\"id\": \"T00190\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00801\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01062\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00195\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00445\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 47.0}\n{\"id\": \"T00228\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 74}\n{\"id\": \"T00428\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 26}\n{\"id\": \"T00420\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01716\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01360\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 8}\n{\"id\": \"T00396\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 58.0}\n{\"id\": \"T01262\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 89.5}\n{\"id\": \"T01522\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00765\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 17.0}\n{\"id\": \"T00484\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01685\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00731\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 0.5}\n{\"id\": \"T00401\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01166\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01417\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00296\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00224\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 18}\n{\"id\": \"T00297\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 69.5}\n{\"id\": \"T01162\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00000\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01337\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00172\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 18}\n{\"id\": \"T01040\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 33}\n{\"id\": \"T00680\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00117\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00577\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01700\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 4}\n{\"id\": \"T01566\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 7.0}\n{\"id\": \"T00228\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00319\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01251\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00890\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 80.0}\n{\"id\": \"T00784\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00121\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00777\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n","b98e3e0ce40000442f50728ca7d4434269061f52bf0d9c4870239f888c26ebd4":"{\"id\": \"T00675\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01554\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00961\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00864\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 95.5}\n{\"id\": \"T00600\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00902\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00881\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00529\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 52.0}\n{\"id\": \"T01285\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00819\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01229\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01550\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 54.5}\n{\"id\": \"T00812\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00092\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 58}\n{\"id\": \"T01489\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 32.5}\n{\"id\": \"T00276\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 60}\n{\"id\": \"T00958\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 86.5}\n{\"id\": \"T00999\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01408\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 7.5}\n{\"id\": \"T01151\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00880\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00128\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 64}\n{\"id\": \"T01350\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 0.5}\n{\"id\": \"T01103\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 20.5}\n{\"id\": \"T01626\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 59.5}\n{\"id\": \"T01472\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 52}\n{\"id\": \"T00704\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 23.5}\n{\"id\": \"T01125\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01512\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00388\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 75}\n{\"id\": \"T00694\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 38.5}\n{\"id\": \"T01033\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 40.5}\n{\"id\": \"T00949\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01187\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 89.0}\n{\"id\": \"T00518\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01440\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 91}\n{\"id\": \"T00172\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00407\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 80.0}\n{\"id\": \"T01273\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01665\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01629\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00580\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 62.0}\n{\"id\": \"T01324\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 61}\n{\"id\": \"T00052\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01170\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00493\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00841\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 19.0}\n{\"id\": \"T00214\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00440\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01088\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 48}\n{\"id\": \"T01186\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01655\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01776\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00308\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01709\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01707\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00836\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 60.0}\n{\"id\": \"T01375\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00053\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 2.5}\n{\"id\": \"T01388\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 50}\n{\"id\": \"T01652\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00429\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01433\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00729\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 7.5}\n{\"id\": \"T00570\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 45.0}\n{\"id\": \"T00534\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 12.0}\n{\"id\": \"T01148\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 36}\n{\"id\": \"T01793\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01737\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 21.0}\n{\"id\": \"T01231\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 39.5}\n{\"id\": \"T01327\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00150\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01752\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 91}\n{\"id\": \"T01112\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00397\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00800\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 83}\n{\"id\": \"T00516\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 76}\n{\"id\": \"T00021\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00120\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00644\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 53}\n{\"id\": \"T00069\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 22.5}\n{\"id\": \"T01123\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00496\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 78}\n{\"id\": \"T00644\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00459\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 46.5}\n{\"id\": \"T00113\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00376\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01498\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01786\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01659\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01428\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01549\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00321\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 2.0}\n{\"id\": \"T01589\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01122\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00717\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 18.0}\n{\"id\": \"T00439\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00883\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01013\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01152\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00571\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 77.5}\n{\"id\": \"T00130\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00274\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01006\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00567\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01311\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 72.5}\n{\"id\": \"T01744\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 61}\n{\"id\": \"T00714\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00774\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00212\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 40}\n{\"id\": \"T01008\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01449\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00672\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00583\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01118\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 47.0}\n{\"id\": \"T00028\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 26}\n{\"id\": \"T00016\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 82}\n{\"id\": \"T01412\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00575\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 54.0}\n{\"id\": \"T00226\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01424\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 4}\n{\"id\": \"T00060\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 7}\n{\"id\": \"T00478\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01575\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00164\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 10}\n{\"id\": \"T00802\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 31.5}\n{\"id\": \"T01520\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00711\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 23.5}\n{\"id\": \"T00860\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 55.5}\n{\"id\": \"T00494\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01080\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 13}\n{\"id\": \"T01402\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00738\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00365\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00837\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01752\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01484\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 40}\n{\"id\": \"T00873\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 64.5}\n{\"id\": \"T01090\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00516\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01243\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 22.0}\n{\"id\": \"T01516\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 1}\n{\"id\": \"T00278\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01172\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00280\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 29}\n{\"id\": \"T01638\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01086\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00586\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01590\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00087\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00980\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 1}\n{\"id\": \"T00414\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 44.5}\n{\"id\": \"T00144\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01706\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01179\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00107\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00139\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01091\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 8.5}\n{\"id\": \"T00904\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 27}\n{\"id\": \"T01776\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 45}\n{\"id\": \"T00054\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01224\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01267\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00045\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00443\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 30.5}\n{\"id\": \"T00039\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00284\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00270\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 30.5}\n{\"id\": \"T01588\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01560\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 48}\n{\"id\": \"T01051\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01782\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00424\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 51}\n{\"id\": \"T00111\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01305\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01316\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 45}\n{\"id\": \"T00169\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01222\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00780\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01171\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 75.0}\n{\"id\": \"T00876\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 74.5}\n{\"id\": \"T01787\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 20.0}\n{\"id\": \"T00161\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00932\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 67.0}\n{\"id\": \"T00673\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01610\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01439\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00292\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 100}\n{\"id\": \"T00764\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01653\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 89.5}\n{\"id\": \"T00681\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 85.5}\n{\"id\": \"T01526\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01035\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00893\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 52.0}\n{\"id\": \"T00894\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01071\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00434\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00037\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00697\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01270\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 11.5}\n{\"id\": \"T00473\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01643\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01244\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00954\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00289\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00090\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00152\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00779\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01449\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01468\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00381\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00941\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00522\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01519\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01043\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01774\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01373\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 55.5}\n{\"id\": \"T01179\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01440\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01134\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01521\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00608\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 73}\n{\"id\": \"T00095\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01458\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 59.5}\n{\"id\": \"T01607\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01004\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00689\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00700\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 92}\n{\"id\": \"T00081\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 20.5}\n{\"id\": \"T00432\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 91.0}\n{\"id\": \"T00400\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 38.0}\n{\"id\": \"T00231\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01347\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01018\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00488\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 9.5}\n{\"id\": \"T00495\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 34.0}\n{\"id\": \"T00746\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 85.0}\n{\"id\": \"T00763\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00297\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 69.5}\n{\"id\": \"T00230\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 36.5}\n{\"id\": \"T01153\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00342\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00756\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00668\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01105\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01145\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 26.5}\n{\"id\": \"T01121\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00198\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00535\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00634\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 22.5}\n{\"id\": \"T01584\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 59.5}\n{\"id\": \"T01031\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 40.5}\n{\"id\": \"T01148\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00112\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 65}\n{\"id\": \"T01212\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 16.0}\n{\"id\": \"T00496\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01032\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01050\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00315\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00972\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 4}\n{\"id\": \"T01349\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01158\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01299\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 81.0}\n{\"id\": \"T00044\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00476\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01312\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01269\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01789\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01049\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 14.5}\n{\"id\": \"T00080\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00748\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 13.0}\n{\"id\": \"T01332\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 34}\n{\"id\": \"T01407\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01796\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 78}\n{\"id\": \"T00436\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 1}\n{\"id\": \"T01639\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00398\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01150\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 57.0}\n{\"id\": \"T01125\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01352\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00081\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 20.5}\n{\"id\": \"T01040\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01368\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01371\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 93.0}\n{\"id\": \"T01047\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 88.5}\n{\"id\": \"T00724\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 5.0}\n{\"id\": \"T00448\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01190\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00500\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 0}\n{\"id\": \"T01356\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 41}\n{\"id\": \"T01470\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00737\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01024\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 52}\n{\"id\": \"T01265\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 39.0}\n{\"id\": \"T00911\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 92.5}\n{\"id\": \"T01663\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01732\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 98}\n{\"id\": \"T00565\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00345\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 23.5}\n{\"id\": \"T01745\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00449\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01533\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01548\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00264\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00666\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 50.0}\n{\"id\": \"T00225\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00631\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 6.0}\n{\"id\": \"T01361\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00806\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00630\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00441\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00936\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 47.5}\n{\"id\": \"T01747\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 35.5}\n{\"id\": \"T00830\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00164\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 73.0}\n{\"id\": \"T00935\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 30.5}\n{\"id\": \"T00896\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00973\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00540\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00343\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00814\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00811\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 94.5}\n{\"id\": \"T01784\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 48.5}\n{\"id\": \"T00367\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 39.5}\n{\"id\": \"T00712\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 42.0}\n{\"id\": \"T01206\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00976\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 78.5}\n{\"id\": \"T00223\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00340\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 50}\n{\"id\": \"T01129\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01188\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 33.5}\n{\"id\": \"T01583\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01098\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 63.0}\n{\"id\": \"T01264\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 80.0}\n{\"id\": \"T00174\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00362\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 46.0}\n{\"id\": \"T01058\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00382\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00914\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00550\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 68.5}\n{\"id\": \"T01130\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00934\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01034\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00738\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01354\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00533\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00797\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01652\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 99}\n{\"id\": \"T00594\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 88.0}\n{\"id\": \"T00162\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01288\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00620\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00836\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01450\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01730\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00576\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 41}\n{\"id\": \"T00052\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 73}\n{\"id\": \"T00224\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00036\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 2}\n{\"id\": \"T00463\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00933\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01640\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 5}\n{\"id\": \"T00781\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00350\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01116\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 90.0}\n{\"id\": \"T00328\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 10}\n{\"id\": \"T01193\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01740\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 28}\n{\"id\": \"T01333\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01196\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 83}\n{\"id\": \"T00612\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00943\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00887\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 50.0}\n{\"id\": \"T00940\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 43}\n{\"id\": \"T01303\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01454\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 5.5}\n{\"id\": \"T00770\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00384\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00683\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01038\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01096\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 76}\n{\"id\": \"T00149\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 28.0}\n{\"id\": \"T00572\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01209\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01494\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 68.5}\n{\"id\": \"T01788\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 51.5}\n{\"id\": \"T00455\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01149\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 39.0}\n{\"id\": \"T00807\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 79.5}\n{\"id\": \"T01022\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01781\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01705\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00744\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01312\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 22}\n{\"id\": \"T00928\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 62.0}\n{\"id\": \"T01504\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01585\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00012\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 29}\n{\"id\": \"T00324\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01152\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 31}\n{\"id\": \"T00761\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01452\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00876\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 94}\n{\"id\": \"T00601\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01137\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00514\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 19.5}\n{\"id\": \"T00396\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 58.0}\n{\"id\": \"T01315\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 64.5}\n{\"id\": \"T00989\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01294\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 26.0}\n{\"id\": \"T00117\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00177\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00288\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00349\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01364\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00464\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 12}\n{\"id\": \"T01734\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01314\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 57.0}\n{\"id\": \"T00517\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00100\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 0}\n{\"id\": \"T00987\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00270\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 30.5}\n{\"id\": \"T01600\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01216\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 52.0}\n{\"id\": \"T00338\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00750\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00202\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00525\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01196\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00512\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00003\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 24.5}\n{\"id\": \"T01743\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01362\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 82.0}\n{\"id\": \"T01592\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01415\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 25.5}\n{\"id\": \"T01547\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00209\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00309\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 17.5}\n{\"id\": \"T00316\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 35.0}\n{\"id\": \"T01258\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00852\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 24.0}\n{\"id\": \"T00301\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00605\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 85.0}\n{\"id\": \"T01753\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01404\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 86}\n{\"id\": \"T01124\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 91.5}\n{\"id\": \"T00868\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 24}\n{\"id\": \"T01107\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00639\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 3.5}\n{\"id\": \"T00156\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 91}\n{\"id\": \"T00486\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00783\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00923\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 71.5}\n{\"id\": \"T00332\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 77}\n{\"id\": \"T00740\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 63}\n{\"id\": \"T00212\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01664\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00859\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01646\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 60.0}\n{\"id\": \"T00786\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00771\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00938\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00559\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 29.0}\n{\"id\": \"T01421\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00641\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 31.0}\n{\"id\": \"T00115\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00171\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 29.5}\n{\"id\": \"T00004\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 88}\n{\"id\": \"T00752\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01307\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 40.0}\n{\"id\": \"T00884\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 31}\n{\"id\": \"T00188\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00888\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 3.0}\n{\"id\": \"T00990\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01242\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 16.0}\n{\"id\": \"T00589\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01246\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00109\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00284\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 63}\n{\"id\": \"T00710\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01462\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01056\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 55.0}\n{\"id\": \"T00843\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00029\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00048\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 24}\n{\"id\": \"T00020\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 93}\n{\"id\": \"T01302\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01266\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 3.0}\n{\"id\": \"T00544\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00684\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 31.5}\n{\"id\": \"T01662\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00801\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00447\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00153\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00333\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00484\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01568\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01028\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00112\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00791\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01633\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 71.0}\n{\"id\": \"T01698\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00352\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01672\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01008\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 66}\n{\"id\": \"T00780\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 31}\n{\"id\": \"T00019\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00658\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00119\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01736\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 76}\n{\"id\": \"T01070\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 49.5}\n{\"id\": \"T00491\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 50.5}\n{\"id\": \"T00354\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 91.5}\n{\"id\": \"T00061\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00308\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00168\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 83}\n{\"id\": \"T00025\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01535\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00688\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 40.0}\n{\"id\": \"T00499\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01544\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 25}\n{\"id\": \"T00402\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00584\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 49}\n{\"id\": \"T00739\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01768\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 74}\n{\"id\": \"T00392\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01464\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 11.0}\n{\"id\": \"T00442\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01219\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01664\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 34}\n{\"id\": \"T00543\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01039\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00272\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00291\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 85.0}\n{\"id\": \"T01184\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 79}\n{\"id\": \"T01609\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00996\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 8.5}\n{\"id\": \"T00179\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01306\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01783\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00437\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 77.0}\n{\"id\": \"T00250\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01007\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01389\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00016\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00536\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00305\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 95.5}\n{\"id\": \"T01715\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00184\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00983\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00940\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 37.0}\n{\"id\": \"T01140\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00671\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00682\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01247\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01085\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00060\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 3.0}\n{\"id\": \"T00652\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 77}\n{\"id\": \"T00912\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 86}\n{\"id\": \"T01126\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00856\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 54}\n{\"id\": \"T00199\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 15.5}\n{\"id\": \"T00595\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00325\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01314\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 57.0}\n{\"id\": \"T01180\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 94.0}\n{\"id\": \"T00256\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01068\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 92.0}\n{\"id\": \"T01278\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 33.0}\n{\"id\": \"T00320\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00348\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00131\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00539\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01304\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 67}\n{\"id\": \"T00143\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00281\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00236\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 14}\n{\"id\": \"T00468\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00467\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01604\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00363\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01400\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 26}\n{\"id\": \"T01500\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00960\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 50}\n{\"id\": \"T01084\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 45}\n{\"id\": \"T01284\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 19}\n{\"id\": \"T01656\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 23}\n{\"id\": \"T00504\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00271\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 5.5}\n{\"id\": \"T00201\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00861\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00420\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 22}\n{\"id\": \"T00748\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00324\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 49}\n{\"id\": \"T01628\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01194\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01509\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00680\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 88}\n{\"id\": \"T00351\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01624\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00157\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00730\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 38.0}\n{\"id\": \"T01139\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01176\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 71}\n{\"id\": \"T01474\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01384\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 21}\n{\"id\": \"T00813\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00387\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01104\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01696\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00576\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 65.0}\n{\"id\": \"T00376\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 88}\n","d44d0eee9917c0beb680404ca2cd3590048656233956d6f5d1ea265c0db0f3c9":"{\"id\": \"T00587\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01642\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00985\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00790\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01112\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 70}\n{\"id\": \"T00907\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00180\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 10.0}\n{\"id\": \"T00912\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01447\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 3.5}\n{\"id\": \"T01724\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 59.5}\n{\"id\": \"T00991\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01492\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 92}\n{\"id\": \"T01350\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 0.5}\n{\"id\": \"T01483\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 10.5}\n{\"id\": \"T01546\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 26.0}\n{\"id\": \"T00063\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01661\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 15.5}\n{\"id\": \"T00154\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01053\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 33.0}\n{\"id\": \"T00664\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 25}\n{\"id\": \"T00129\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01098\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 63.0}\n{\"id\": \"T01328\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01666\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01396\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 6}\n{\"id\": \"T00032\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 3}\n{\"id\": \"T01132\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 88.5}\n{\"id\": \"T01575\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01540\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01080\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01216\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 8}\n{\"id\": \"T01561\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00971\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 5.0}\n{\"id\": \"T00076\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 21}\n{\"id\": \"T01055\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01772\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01501\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00412\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 47}\n{\"id\": \"T00603\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01612\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00785\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01410\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00676\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01413\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01074\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00735\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01740\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 22.0}\n{\"id\": \"T00268\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 24.5}\n{\"id\": \"T00008\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 17}\n{\"id\": \"T00745\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01711\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00627\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00588\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 90}\n{\"id\": \"T01348\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 2}\n{\"id\": \"T01288\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 46}\n{\"id\": \"T00672\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 72}\n{\"id\": \"T01548\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 4}\n{\"id\": \"T01062\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01195\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00774\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00041\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00527\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 72.0}\n{\"id\": \"T00628\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00720\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01165\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01569\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 63.0}\n{\"id\": \"T00504\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00132\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 60.5}\n{\"id\": \"T00444\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 9}\n{\"id\": \"T01317\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00348\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 91}\n{\"id\": \"T00203\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00707\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00990\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00573\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00040\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01032\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 64}\n{\"id\": \"T01228\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 32}\n{\"id\": \"T00300\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 79}\n{\"id\": \"T00769\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01748\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 8}\n{\"id\": \"T01671\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00207\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00134\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00684\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 31.5}\n{\"id\": \"T00180\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 10.0}\n{\"id\": \"T00240\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 26}\n{\"id\": \"T00480\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 25}\n{\"id\": \"T01443\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01282\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01323\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00632\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00621\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 29.0}\n{\"id\": \"T01736\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01378\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01286\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01241\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00373\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01553\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00375\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 13.5}\n{\"id\": \"T01729\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00568\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00685\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00472\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01184\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01394\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 88.5}\n{\"id\": \"T01124\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 98}\n{\"id\": \"T01602\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 77.5}\n{\"id\": \"T00144\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01027\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01467\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00384\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 18}\n{\"id\": \"T00331\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 74.0}\n{\"id\": \"T00718\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00613\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 16.5}\n{\"id\": \"T01280\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00194\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00693\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00475\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01688\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01134\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00978\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 92.5}\n{\"id\": \"T00265\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01512\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01790\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00905\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00255\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00351\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01376\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00538\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01692\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00020\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00241\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 1.5}\n{\"id\": \"T01446\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 43.5}\n{\"id\": \"T00009\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 39.0}\n{\"id\": \"T00960\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00431\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01077\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00501\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00064\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 41.5}\n{\"id\": \"T01277\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00741\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00796\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 95}\n{\"id\": \"T01530\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00569\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00093\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 78.5}\n{\"id\": \"T00549\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 76.5}\n{\"id\": \"T01341\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 20.0}\n{\"id\": \"T00263\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 55.5}\n{\"id\": \"T01392\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00063\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00211\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00082\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00165\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01365\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00540\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 77}\n{\"id\": \"T00062\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 62.5}\n{\"id\": \"T01681\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00187\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 47.0}\n{\"id\": \"T00451\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00470\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01261\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01669\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01596\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 90}\n{\"id\": \"T00084\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00594\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 88.0}\n{\"id\": \"T01520\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 65}\n{\"id\": \"T01650\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01460\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 35.5}\n{\"id\": \"T01256\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00101\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01528\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 8.0}\n{\"id\": \"T00794\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 20.0}\n{\"id\": \"T01395\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01727\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01710\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00135\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 62.5}\n{\"id\": \"T00208\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00180\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 6}\n{\"id\": \"T00378\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01485\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00667\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 50.0}\n{\"id\": \"T01780\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01523\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 41.0}\n{\"id\": \"T00963\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 5.5}\n{\"id\": \"T00757\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 24.5}\n{\"id\": \"T00541\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01532\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 24.5}\n{\"id\": \"T00793\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 48.5}\n{\"id\": \"T00690\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01477\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01292\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01106\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00767\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00000\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00646\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01684\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 90.0}\n{\"id\": \"T01696\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 80}\n{\"id\": \"T00885\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 78.0}\n{\"id\": \"T00310\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01504\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 21}\n{\"id\": \"T01497\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01135\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01192\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 60}\n{\"id\": \"T00927\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 12.5}\n{\"id\": \"T01167\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01360\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01620\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01697\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 53.5}\n{\"id\": \"T01536\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 8}\n{\"id\": \"T00346\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 2.5}\n{\"id\": \"T01726\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00457\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01683\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01716\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00450\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 34.5}\n{\"id\": \"T00563\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01383\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01052\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 95}\n{\"id\": \"T00322\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00391\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00772\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 51.5}\n{\"id\": \"T01326\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00783\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01484\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00292\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01224\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 68}\n{\"id\": \"T00450\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 34.5}\n{\"id\": \"T00126\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00285\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 96.0}\n{\"id\": \"T00017\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01679\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 19.0}\n{\"id\": \"T00930\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00789\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 69.5}\n{\"id\": \"T01564\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 77.0}\n{\"id\": \"T00546\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01564\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 43}\n{\"id\": \"T01758\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01213\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01723\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00617\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 19.5}\n{\"id\": \"T00027\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01210\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 18.5}\n{\"id\": \"T00317\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 34.0}\n{\"id\": \"T01676\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00368\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 58}\n{\"id\": \"T01508\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 46.0}\n{\"id\": \"T01629\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01127\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00262\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00776\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 12}\n{\"id\": \"T00055\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 47.0}\n{\"id\": \"T01514\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 40.0}\n{\"id\": \"T00364\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01571\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01170\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01471\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00002\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 24.0}\n{\"id\": \"T01009\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00099\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01702\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00808\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00948\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 30}\n{\"id\": \"T00056\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00532\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00764\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 85}\n{\"id\": \"T00031\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 6.0}\n{\"id\": \"T00066\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 37.5}\n{\"id\": \"T01386\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01539\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 38.5}\n{\"id\": \"T00868\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00104\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00072\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 51}\n{\"id\": \"T00840\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00734\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00981\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01683\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00976\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 81}\n{\"id\": \"T01505\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01461\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01757\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01188\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00183\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01600\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 56}\n{\"id\": \"T00023\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01368\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00659\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01556\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 73}\n{\"id\": \"T01296\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 24}\n{\"id\": \"T00715\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01342\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00686\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00380\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 29}\n{\"id\": \"T01473\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 49.5}\n{\"id\": \"T00184\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 90}\n{\"id\": \"T01531\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01338\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01023\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01660\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 96}\n{\"id\": \"T00768\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 11.5}\n{\"id\": \"T00732\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00624\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 3.0}\n{\"id\": \"T00067\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 64.0}\n{\"id\": \"T00314\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00064\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 3}\n{\"id\": \"T00133\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01750\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00693\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00156\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00456\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00290\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00046\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01155\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00604\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00592\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 28}\n{\"id\": \"T01704\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 59}\n{\"id\": \"T00628\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 14}\n{\"id\": \"T01401\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00408\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 85}\n{\"id\": \"T00716\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00722\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 67.0}\n{\"id\": \"T00108\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01012\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01719\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00488\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 3}\n{\"id\": \"T00096\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 47}\n{\"id\": \"T00661\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 14.0}\n{\"id\": \"T00482\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01057\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01482\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00371\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01545\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01345\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01508\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 72}\n{\"id\": \"T01217\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 94.0}\n{\"id\": \"T01260\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00461\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00906\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 12.0}\n{\"id\": \"T00012\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00513\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00043\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01355\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 37.0}\n{\"id\": \"T00088\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01344\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 48}\n{\"id\": \"T00633\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 65.5}\n{\"id\": \"T00495\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 34.0}\n{\"id\": \"T01136\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 75}\n{\"id\": \"T01738\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01235\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 27.0}\n{\"id\": \"T01364\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01644\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00204\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 20}\n{\"id\": \"T01372\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01060\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00299\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01205\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00079\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00509\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 6.5}\n{\"id\": \"T00621\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 29.0}\n{\"id\": \"T00399\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00168\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01011\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00997\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00915\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 7.5}\n{\"id\": \"T00084\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 91}\n{\"id\": \"T00913\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00225\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00273\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01026\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 6.0}\n{\"id\": \"T01724\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 57}\n{\"id\": \"T00810\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 15.5}\n{\"id\": \"T00004\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01432\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 49}\n{\"id\": \"T01204\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01324\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 36.0}\n{\"id\": \"T00727\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00966\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00352\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01728\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 25}\n{\"id\": \"T00854\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01432\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00360\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 92}\n{\"id\": \"T01102\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 24.0}\n{\"id\": \"T00900\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 58}\n{\"id\": \"T00005\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 33.5}\n{\"id\": \"T00562\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01680\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01323\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01211\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00221\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01341\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 20.0}\n{\"id\": \"T00135\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 62.5}\n{\"id\": \"T01095\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 55.0}\n{\"id\": \"T01336\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 87}\n{\"id\": \"T00916\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00085\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01386\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01188\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 33.5}\n{\"id\": \"T01693\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01748\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 88.5}\n{\"id\": \"T00261\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00760\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 61}\n{\"id\": \"T01380\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01539\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 38.5}\n{\"id\": \"T01524\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 18}\n{\"id\": \"T00047\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01036\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 54}\n{\"id\": \"T00235\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01088\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 44.5}\n{\"id\": \"T00765\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 17.0}\n{\"id\": \"T00188\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 79}\n{\"id\": \"T01108\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 66}\n{\"id\": \"T00695\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00432\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 14}\n{\"id\": \"T00556\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 14}\n{\"id\": \"T01486\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 38.0}\n{\"id\": \"T00616\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00138\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01353\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01391\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00234\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00498\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01020\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 26}\n{\"id\": \"T00426\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01152\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01419\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01169\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01764\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00054\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01456\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01422\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 73.5}\n{\"id\": \"T01052\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 63.5}\n{\"id\": \"T01016\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01101\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01457\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 56.5}\n{\"id\": \"T00252\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01284\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 88.5}\n{\"id\": \"T00410\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00432\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 91.0}\n{\"id\": \"T01143\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01552\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 83}\n{\"id\": \"T01113\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01580\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 81}\n{\"id\": \"T01044\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 33}\n{\"id\": \"T01428\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 96}\n{\"id\": \"T00526\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00959\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01648\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00337\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01445\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 13.5}\n{\"id\": \"T01377\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00962\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01310\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00545\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01674\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01744\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00875\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00176\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00863\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00372\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 38}\n{\"id\": \"T01463\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01385\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00519\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 85.5}\n{\"id\": \"T01308\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00333\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00416\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 19.0}\n{\"id\": \"T00086\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 73.5}\n{\"id\": \"T00424\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01438\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 83.0}\n{\"id\": \"T00500\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01157\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 34.0}\n{\"id\": \"T00864\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 38}\n{\"id\": \"T00895\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 23.0}\n{\"id\": \"T01785\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01008\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01552\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01207\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 6.0}\n{\"id\": \"T01675\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01503\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00900\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00369\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00282\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00772\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 58}\n{\"id\": \"T00823\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01503\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00602\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01322\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 73.0}\n{\"id\": \"T01181\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 58.0}\n{\"id\": \"T01234\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00249\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 46.0}\n{\"id\": \"T00441\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00872\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00651\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01117\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 22.5}\n{\"id\": \"T00239\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01372\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 74}\n{\"id\": \"T00837\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00540\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00000\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00466\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01159\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01330\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00236\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01777\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00083\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01144\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01248\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 51.0}\n{\"id\": \"T01177\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 43.5}\n{\"id\": \"T01687\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01068\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 83}\n{\"id\": \"T00342\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00749\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01612\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 32}\n{\"id\": \"T01060\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 92}\n{\"id\": \"T00747\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 6.5}\n{\"id\": \"T00359\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00116\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01059\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01536\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01557\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 92.5}\n{\"id\": \"T01245\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00123\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 26.5}\n{\"id\": \"T01594\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 40.5}\n{\"id\": \"T00564\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 81}\n{\"id\": \"T01164\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00366\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00383\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00884\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00490\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01275\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00728\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 63}\n{\"id\": \"T00706\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00548\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 19}\n{\"id\": \"T00394\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01623\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 11.5}\n{\"id\": \"T01517\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 45.5}\n{\"id\": \"T00798\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01635\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01348\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00804\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 96.0}\n{\"id\": \"T00108\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01296\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 27.5}\n{\"id\": \"T00982\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00440\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 74.5}\n{\"id\": \"T00423\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01426\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 31.0}\n{\"id\": \"T01093\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 53.5}\n{\"id\": \"T00074\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 82.5}\n{\"id\": \"T01530\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01764\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01568\", \"updated_at\": 2, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 8}\n{\"id\": \"T00486\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00356\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00347\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 69.0}\n{\"id\": \"T01308\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 34}\n{\"id\": \"T01556\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 92.0}\n{\"id\": \"T00832\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 3}\n{\"id\": \"T01651\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00124\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00355\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00070\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00607\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 92.0}\n{\"id\": \"T00006\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00073\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00530\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 54.5}\n{\"id\": \"T01617\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01416\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00504\", \"updated_at\": 2, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 52}\n{\"id\": \"T00556\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01320\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01336\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T01017\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00243\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 38.0}\n{\"id\": \"T01476\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 69.0}\n{\"id\": \"T00206\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00453\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01218\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00045\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01544\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01388\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": 58.0}\n{\"id\": \"T00827\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01755\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 29.0}\n{\"id\": \"T00460\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01695\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00927\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 12.5}\n{\"id\": \"T00537\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00955\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01393\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"closed\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01641\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00344\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 20}\n{\"id\": \"T00059\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01083\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00481\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00072\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 89.0}\n{\"id\": \"T01376\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 60}\n{\"id\": \"T00888\", \"updated_at\": 2, \"team\": \"PLATFORM\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 95}\n{\"id\": \"T01670\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01271\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"open\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00603\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00140\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01133\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01295\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00919\", \"updated_at\": 1, \"team\": \"PLATFORM\", \"status\": \"open\", \"priority\": \"medium\", \"resolution_hours\": null}\n{\"id\": \"T00788\", \"updated_at\": 2, \"team\": \" Ops \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 100}\n{\"id\": \"T00120\", \"updated_at\": 2, \"team\": \"Support\", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 45}\n{\"id\": \"T01485\", \"updated_at\": 1, \"team\": \"Support\", \"status\": \"open\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T00026\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 60.0}\n{\"id\": \"T00946\", \"updated_at\": 1, \"team\": \"Trust\", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T00413\", \"updated_at\": 1, \"team\": \"Sales\", \"status\": \"pending\", \"priority\": \"high\", \"resolution_hours\": null}\n{\"id\": \"T01797\", \"updated_at\": 1, \"team\": \" Ops \", \"status\": \"pending\", \"priority\": \"low\", \"resolution_hours\": null}\n{\"id\": \"T01741\", \"updated_at\": 1, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"low\", \"resolution_hours\": 83.0}\n{\"id\": \"T00828\", \"updated_at\": 2, \"team\": \" Billing \", \"status\": \"closed\", \"priority\": \"medium\", \"resolution_hours\": 41}\n","d6984f3ad96142d2d31ff25fda9c3104b9da81dc05a8906f9dccd87d7a58600a":"# Ticket snapshot analysis\n\nRead 2,450 snapshots; retained 1,800 unique tickets and discarded 650 rows.\nEach ticket uses its largest updated_at revision. Equal revisions are duplicates. Team names are stripped and lowercased.\n\n| Team | Total | Unresolved | High-priority unresolved | Closed | Missing closed duration | Median hours | P90 hours | SLA breaches |\n| --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: |\n| billing | 286 | 134 | 44 | 152 | 24 | 42.75 | 86 | 92 |\n| ops | 320 | 165 | 52 | 155 | 18 | 48 | 88.5 | 103 |\n| platform | 302 | 125 | 37 | 177 | 19 | 51.0 | 87.0 | 120 |\n| sales | 284 | 144 | 46 | 140 | 18 | 52.25 | 85.0 | 95 |\n| support | 324 | 168 | 56 | 156 | 16 | 45.0 | 83 | 105 |\n| trust | 284 | 153 | 42 | 131 | 19 | 43.0 | 91 | 74 |\n\nUnresolved includes open and pending tickets. High-priority workload counts only unresolved tickets with high priority.\n\nDuration statistics include only closed tickets with non-null durations, including zero. Closed tickets with null durations are counted as missing and excluded from duration statistics and SLA breaches. Durations on unresolved tickets are excluded.\n\nMedian is the middle duration, or the mean of the two middle durations. P90 uses nearest rank ceil(0.9 × n), with ranks starting at 1. N/A (null in JSON) means no valid closed durations. SLA breaches count closed durations strictly greater than 24 hours.\n","d9fde5dcad05fab02822b81680ffd05938a41b975975a07cd9d304a88fbc4f7c":"{\n \"raw_rows\": 2450,\n \"unique_tickets\": 1800,\n \"discarded_rows\": 650,\n \"teams\": [\n {\n \"team\": \"billing\",\n \"total\": 286,\n \"unresolved\": 134,\n \"high_priority_unresolved\": 44,\n \"closed\": 152,\n \"missing_closed_duration\": 24,\n \"median_resolution_hours\": 42.75,\n \"p90_resolution_hours\": 86,\n \"sla_breaches\": 92\n },\n {\n \"team\": \"ops\",\n \"total\": 320,\n \"unresolved\": 165,\n \"high_priority_unresolved\": 52,\n \"closed\": 155,\n \"missing_closed_duration\": 18,\n \"median_resolution_hours\": 48,\n \"p90_resolution_hours\": 88.5,\n \"sla_breaches\": 103\n },\n {\n \"team\": \"platform\",\n \"total\": 302,\n \"unresolved\": 125,\n \"high_priority_unresolved\": 37,\n \"closed\": 177,\n \"missing_closed_duration\": 19,\n \"median_resolution_hours\": 51.0,\n \"p90_resolution_hours\": 87.0,\n \"sla_breaches\": 120\n },\n {\n \"team\": \"sales\",\n \"total\": 284,\n \"unresolved\": 144,\n \"high_priority_unresolved\": 46,\n \"closed\": 140,\n \"missing_closed_duration\": 18,\n \"median_resolution_hours\": 52.25,\n \"p90_resolution_hours\": 85.0,\n \"sla_breaches\": 95\n },\n {\n \"team\": \"support\",\n \"total\": 324,\n \"unresolved\": 168,\n \"high_priority_unresolved\": 56,\n \"closed\": 156,\n \"missing_closed_duration\": 16,\n \"median_resolution_hours\": 45.0,\n \"p90_resolution_hours\": 83,\n \"sla_breaches\": 105\n },\n {\n \"team\": \"trust\",\n \"total\": 284,\n \"unresolved\": 153,\n \"high_priority_unresolved\": 42,\n \"closed\": 131,\n \"missing_closed_duration\": 19,\n \"median_resolution_hours\": 43.0,\n \"p90_resolution_hours\": 91,\n \"sla_breaches\": 74\n }\n ]\n}\n","306c4d7655cfa9f196b2cfcfb4d2b15918a29857e174fde42e96a313e45f85e9":"import json\nfrom pathlib import Path\nimport subprocess\nimport sys\nimport tempfile\nimport unittest\n\nfrom analyze import analyze, render_report\n\n\nclass AnalysisTests(unittest.TestCase):\n def setUp(self):\n self.temp = tempfile.TemporaryDirectory(dir=Path(__file__).parent)\n self.addCleanup(self.temp.cleanup)\n self.root = Path(self.temp.name)\n\n def write_rows(self, name, rows):\n (self.root / name).write_text('\\n\\n' + '\\n'.join(json.dumps(t) for t in rows)\n + '\\n \\n', encoding='utf-8')\n\n def ticket(self, id, duration=None, **changes):\n result = dict(id=id, updated_at=1, team=' Team ', status='closed',\n priority='high', resolution_hours=duration)\n result.update(changes)\n return result\n\n def test_latest_normalization_and_missing(self):\n latest = self.ticket('a', updated_at=3, team=' OTHER ', status='pending')\n self.write_rows('a.jsonl', [latest, self.ticket('b', 0),\n self.ticket('c', 24), self.ticket('d', 25)])\n self.write_rows('b.jsonl', [self.ticket('a', 100), latest,\n self.ticket('e'), self.ticket('f', 999, status='open')])\n (self.root / 'ignored.json').write_text('not JSONL')\n result = analyze(self.root)\n self.assertEqual((result['raw_rows'], result['unique_tickets'],\n result['discarded_rows']), (8, 6, 2))\n self.assertEqual(result['teams'], [\n dict(team='other', total=1, unresolved=1, high_priority_unresolved=1,\n closed=0, missing_closed_duration=0, median_resolution_hours=None,\n p90_resolution_hours=None, sla_breaches=0),\n dict(team='team', total=5, unresolved=1, high_priority_unresolved=1,\n closed=4, missing_closed_duration=1, median_resolution_hours=24,\n p90_resolution_hours=25, sla_breaches=1)])\n self.assertIn('N/A', render_report(result))\n\n def test_even_median_and_nearest_rank(self):\n for n, expected_median, expected_p90 in [(2, 0.5, 1), (10, 4.5, 8), (11, 5, 9)]:\n with self.subTest(n=n):\n self.write_rows('a.jsonl', [self.ticket(str(i), i) for i in range(n)])\n row = analyze(self.root)['teams'][0]\n self.assertEqual(row['median_resolution_hours'], expected_median)\n self.assertEqual(row['p90_resolution_hours'], expected_p90)\n\n def test_null_only_closed_and_fractional_duration(self):\n self.write_rows('a.jsonl', [self.ticket('a'), self.ticket('b', 24.5, team='B')])\n rows = analyze(self.root)['teams']\n self.assertEqual(rows[0]['median_resolution_hours'], 24.5)\n self.assertEqual(rows[0]['sla_breaches'], 1)\n self.assertEqual(rows[1]['missing_closed_duration'], 1)\n self.assertIsNone(rows[1]['p90_resolution_hours'])\n\n def test_empty_cli_and_nested_output(self):\n output = self.root / 'nested' / 'output'\n subprocess.run([sys.executable, str(Path(__file__).with_name('analyze.py')),\n str(self.root), str(output)], check=True)\n self.assertEqual(json.loads((output / 'summary.json').read_text()),\n dict(raw_rows=0, unique_tickets=0, discarded_rows=0, teams=[]))\n self.assertIn('retained 0 unique tickets', (output / 'report.md').read_text())\n\n\nif __name__ == '__main__':\n unittest.main()\n","f84b24c7b0496f8ea3114b2f9423d83e846ff13c086814f8f2841cbc058252a8":"\"\"\"Analyze latest ticket snapshots: python3 analyze.py INPUT_DIR OUTPUT_DIR.\"\"\"\n\nimport argparse\nimport json\nfrom pathlib import Path\nfrom statistics import median\n\n\ndef analyze(input_dir):\n \"\"\"Return aggregate statistics, keeping the greatest revision of each ID.\"\"\"\n latest = {}\n raw_rows = 0\n for path in sorted(Path(input_dir).glob('*.jsonl')):\n if not path.is_file():\n continue\n with path.open(encoding='utf-8') as source:\n for line in source:\n if not line.strip():\n continue\n ticket = json.loads(line)\n raw_rows += 1\n previous = latest.get(ticket['id'])\n if previous is None or ticket['updated_at'] > previous['updated_at']:\n latest[ticket['id']] = ticket\n\n groups = {}\n for ticket in latest.values():\n team = ticket['team'].strip().lower()\n groups.setdefault(team, []).append(ticket)\n\n teams = []\n for team, tickets in sorted(groups.items()):\n closed = [t for t in tickets if t['status'] == 'closed']\n durations = sorted(t['resolution_hours'] for t in closed\n if t['resolution_hours'] is not None)\n teams.append({\n 'team': team,\n 'total': len(tickets),\n 'unresolved': len(tickets) - len(closed),\n 'high_priority_unresolved': sum(\n t['status'] != 'closed' and t['priority'] == 'high'\n for t in tickets),\n 'closed': len(closed),\n 'missing_closed_duration': len(closed) - len(durations),\n 'median_resolution_hours': median(durations) if durations else None,\n # Integer arithmetic implements ceil(0.9*n) exactly.\n 'p90_resolution_hours': durations[(9 * len(durations) + 9) // 10 - 1]\n if durations else None,\n 'sla_breaches': sum(d > 24 for d in durations),\n })\n return {'raw_rows': raw_rows, 'unique_tickets': len(latest),\n 'discarded_rows': raw_rows - len(latest), 'teams': teams}\n\n\ndef render_report(summary):\n \"\"\"Render a Markdown report using the same computed summary as the JSON.\"\"\"\n lines = [\n '# Ticket snapshot analysis', '',\n f\"Read {summary['raw_rows']} nonblank snapshot rows; retained \"\n f\"{summary['unique_tickets']} unique tickets and discarded \"\n f\"{summary['discarded_rows']} superseded or duplicate rows.\", '',\n 'Each ticket uses its largest updated_at revision. Team names are stripped '\n 'of surrounding whitespace and lowercased. Open and pending tickets are unresolved.', '',\n '| Team | Total | Unresolved | High-priority unresolved | Closed | Missing closed duration | Median hours | P90 hours | SLA breaches |',\n '| --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: |',\n ]\n for row in summary['teams']:\n cells = []\n for key, value in row.items():\n if key == 'team':\n value = (value.replace('&', '&amp;').replace('<', '&lt;')\n .replace('>', '&gt;').replace('|', '&#124;')\n .replace('\\r', '&#13;').replace('\\n', '&#10;'))\n cells.append('N/A' if value is None else str(value))\n lines.append('| ' + ' | '.join(cells) + ' |')\n if not summary['teams']:\n lines.extend(['', 'No tickets were found.'])\n lines.extend(['',\n 'Duration statistics include only closed tickets with non-null resolution_hours. '\n 'Closed tickets with null durations are counted as missing and excluded from '\n 'median, P90, and SLA calculations; durations on unresolved tickets are excluded. '\n 'Zero hours is a valid duration. Empty duration groups show N/A (null in JSON).', '',\n 'Median is the middle duration, or the mean of the two middle durations. '\n 'P90 uses nearest rank ceil(0.9 × n), with ranks starting at 1. '\n 'SLA breaches count closed durations strictly greater than 24 hours.', ''])\n return '\\n'.join(lines)\n\n\ndef main():\n parser = argparse.ArgumentParser(description=__doc__)\n parser.add_argument('input_dir', type=Path)\n parser.add_argument('output_dir', type=Path)\n args = parser.parse_args()\n if not args.input_dir.is_dir():\n parser.error(f'input directory does not exist: {args.input_dir}')\n summary = analyze(args.input_dir)\n args.output_dir.mkdir(parents=True, exist_ok=True)\n (args.output_dir / 'summary.json').write_text(\n json.dumps(summary, indent=2, ensure_ascii=False) + '\\n', encoding='utf-8')\n (args.output_dir / 'report.md').write_text(render_report(summary), encoding='utf-8')\n\n\nif __name__ == '__main__':\n main()\n","b2c37f8493e9984b487bedb9fc877488f25c1708ec2e139813fa2274e0c46189":"# Ticket snapshot analysis\n\nRead 2450 nonblank snapshot rows; retained 1800 unique tickets and discarded 650 superseded or duplicate rows.\n\nEach ticket uses its largest updated_at revision. Team names are stripped of surrounding whitespace and lowercased. Open and pending tickets are unresolved.\n\n| Team | Total | Unresolved | High-priority unresolved | Closed | Missing closed duration | Median hours | P90 hours | SLA breaches |\n| --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: |\n| billing | 286 | 134 | 44 | 152 | 24 | 42.75 | 86 | 92 |\n| ops | 320 | 165 | 52 | 155 | 18 | 48 | 88.5 | 103 |\n| platform | 302 | 125 | 37 | 177 | 19 | 51.0 | 87.0 | 120 |\n| sales | 284 | 144 | 46 | 140 | 18 | 52.25 | 85.0 | 95 |\n| support | 324 | 168 | 56 | 156 | 16 | 45.0 | 83 | 105 |\n| trust | 284 | 153 | 42 | 131 | 19 | 43.0 | 91 | 74 |\n\nDuration statistics include only closed tickets with non-null resolution_hours. Closed tickets with null durations are counted as missing and excluded from median, P90, and SLA calculations; durations on unresolved tickets are excluded. Zero hours is a valid duration. Empty duration groups show N/A (null in JSON).\n\nMedian is the middle duration, or the mean of the two middle durations. P90 uses nearest rank ceil(0.9 × n), with ranks starting at 1. SLA breaches count closed durations strictly greater than 24 hours.\n","50cd2a6142c00ca9795281f52e7a1ea27304b34a5592461f06af639144afd8e6":"import json\nfrom pathlib import Path\nimport subprocess\nimport sys\nimport tempfile\nimport unittest\n\nfrom analyze import analyze\n\n\nclass AnalysisTests(unittest.TestCase):\n def test_latest_and_statistics(self):\n def ticket(identifier, revision=2, team=' Ops ', status='closed',\n priority='high', duration=None):\n return dict(id=identifier, updated_at=revision, team=team,\n status=status, priority=priority, resolution_hours=duration)\n\n rows = [ticket(str(i), duration=d) for i, d in\n enumerate([0, 2, 4, 6, 8, 10, 12, 24, 25, 100])]\n rows += [ticket('missing'), ticket('pending', status='pending', duration=999),\n ticket('open', team=' ALPHA ', status='open', priority='low'),\n ticket('old', team='alpha')]\n stale = ticket('0', revision=1, team='wrong', status='open')\n with tempfile.TemporaryDirectory(dir=Path(__file__).parent) as temp:\n root = Path(temp)\n (root / 'a.jsonl').write_text('\\n' + '\\n'.join(map(json.dumps, rows)) + '\\n')\n (root / 'b.jsonl').write_text('\\n'.join(map(json.dumps, [stale, rows[0]])))\n (root / 'ignored.txt').write_text('not json')\n result = analyze(root)\n self.assertEqual((result['raw_rows'], result['unique_tickets'],\n result['discarded_rows']), (16, 14, 2))\n self.assertEqual(result['teams'], [\n dict(team='alpha', total=2, unresolved=1, high_priority_unresolved=0,\n closed=1, missing_closed_duration=1, median_resolution_hours=None,\n p90_resolution_hours=None, sla_breaches=0),\n dict(team='ops', total=12, unresolved=1, high_priority_unresolved=1,\n closed=11, missing_closed_duration=1, median_resolution_hours=9,\n p90_resolution_hours=25, sla_breaches=2)])\n\n def test_odd_and_single_duration(self):\n with tempfile.TemporaryDirectory(dir=Path(__file__).parent) as temp:\n root = Path(temp)\n for durations in ([3], [1, 3, 7]):\n rows = [dict(id=i, updated_at=0, team='x', status='closed',\n priority='low', resolution_hours=d)\n for i, d in enumerate(durations)]\n (root / 'x.jsonl').write_text('\\n'.join(map(json.dumps, rows)))\n row = analyze(root)['teams'][0]\n self.assertEqual(row['median_resolution_hours'], 3)\n self.assertEqual(row['p90_resolution_hours'], durations[-1])\n\n def test_empty_cli(self):\n with tempfile.TemporaryDirectory(dir=Path(__file__).parent) as temp:\n root = Path(temp)\n output = root / 'nested' / 'output'\n subprocess.run([sys.executable, str(Path(__file__).with_name('analyze.py')),\n str(root), str(output)], check=True)\n self.assertEqual(json.loads((output / 'summary.json').read_text()),\n dict(raw_rows=0, unique_tickets=0, discarded_rows=0, teams=[]))\n self.assertIn('No tickets were found.', (output / 'report.md').read_text())\n\n\nif __name__ == '__main__':\n unittest.main()\n","efbe449b6fa80d9de1f8d7c925006792f8cd5463d3b129d034da14763221c3b2":"\"\"\"Command-line parsing, JSON decoding, and input/output.\"\"\"\n\nimport json\nimport sys\n\nfrom .domain import LogError, aggregate, identifier\n\n\ndef reject_constant(value):\n raise ValueError()\n\n\ndef decode_records(lines):\n \"\"\"Decode lazily so validation reports errors in input order.\"\"\"\n for line, raw in enumerate(lines, 1):\n if not raw.strip():\n continue\n try:\n record = json.loads(raw, parse_constant=reject_constant)\n except (ValueError, RecursionError):\n raise LogError('INVALID_JSON', line) from None\n yield line, record\n\n\ndef main():\n try:\n args = sys.argv[1:]\n if not args:\n selected = None\n elif len(args) == 2 and args[0] == '--service' and identifier(args[1]):\n selected = args[1]\n else:\n raise LogError('INVALID_ARGUMENT')\n result = aggregate(decode_records(sys.stdin), selected)\n except LogError as error:\n print(json.dumps({'error': {'code': error.code, 'line': error.line}}),\n file=sys.stderr)\n return 2\n print(json.dumps(result))\n return 0\n","9367667f207214c2744c65fd7417146e6aee90a50935537b417d7b61bb7f122d":"\"\"\"Record validation and aggregation, independent of JSON and command-line I/O.\"\"\"\n\nimport re\n\n\nclass LogError(Exception):\n def __init__(self, code, line=0):\n self.code = code\n self.line = line\n\n\ndef identifier(value):\n return (\n isinstance(value, str)\n and re.fullmatch(r'[A-Za-z0-9_-]{1,32}', value) is not None\n )\n\n\ndef validate(record, line):\n if not isinstance(record, dict) or set(record) != {'service', 'level', 'duration_ms'}:\n raise LogError('INVALID_RECORD', line)\n if (\n not identifier(record['service'])\n or record['level'] not in ['info', 'warn', 'error']\n or type(record['duration_ms']) is not int\n or not 0 <= record['duration_ms'] <= 1000000000\n ):\n raise LogError('INVALID_RECORD', line)\n\n\ndef aggregate(records, selected=None):\n \"\"\"Consume (physical line number, decoded record) pairs and return totals.\n\n Validate all records, including services excluded by the output filter.\n \"\"\"\n groups = {}\n for line, record in records:\n validate(record, line)\n name = record['service']\n duration = record['duration_ms']\n row = groups.setdefault(name, dict(\n service=name, count=0, errors=0,\n duration_sum_ms=0, duration_max_ms=0,\n ))\n row['count'] += 1\n row['errors'] += int(record['level'] == 'error')\n row['duration_sum_ms'] += duration\n row['duration_max_ms'] = max(row['duration_max_ms'], duration)\n rows = [groups[k] for k in sorted(groups) if selected is None or selected == k]\n return {'services': rows, 'count': sum(row['count'] for row in rows)}\n","831c6eedee8387667f38e2c8d3b167f6f8640c4f249bf85d31f05fc2c56ca777":"import json\nfrom pathlib import Path\nimport subprocess\nimport sys\nimport unittest\n\nfrom logstats.domain import LogError, aggregate\n\nROOT = Path(__file__).resolve().parents[1]\n\n\ndef record(service='api', level='info', duration_ms=1):\n return dict(service=service, level=level, duration_ms=duration_ms)\n\n\ndef run_cli(raw='', args=()):\n return subprocess.run([sys.executable, '-m', 'logstats', *args],\n input=raw, text=True, capture_output=True, cwd=ROOT)\n\n\nclass CLITests(unittest.TestCase):\n def assert_error(self, raw, code, line, args=()):\n result = run_cli(raw, args)\n self.assertEqual(result.returncode, 2)\n self.assertEqual(result.stdout, '')\n self.assertEqual(json.loads(result.stderr),\n {'error': {'code': code, 'line': line}})\n\n def test_totals_and_filter(self):\n raw = '\\n'.join(json.dumps(r) for r in [\n record('z', 'warn', 0), record('api', 'error', 1000000000),\n record('api', 'info', 2)])\n rows = [dict(service='api', count=2, errors=1,\n duration_sum_ms=1000000002, duration_max_ms=1000000000),\n dict(service='z', count=1, errors=0,\n duration_sum_ms=0, duration_max_ms=0)]\n for args, expected_rows in [((), rows), (('--service', 'api'), rows[:1]),\n (('--service', 'missing'), [])]:\n with self.subTest(args=args):\n result = run_cli(raw, args)\n self.assertEqual(result.returncode, 0)\n self.assertEqual(result.stderr, '')\n self.assertEqual(json.loads(result.stdout), {\n 'services': expected_rows,\n 'count': sum(r['count'] for r in expected_rows)})\n\n def test_empty(self):\n for raw in ['', '\\n \\t\\n']:\n result = run_cli(raw)\n self.assertEqual(result.returncode, 0)\n self.assertEqual(result.stderr, '')\n self.assertEqual(json.loads(result.stdout), {'services': [], 'count': 0})\n\n def test_invalid_records(self):\n invalid = [None, [], 1, {}, {**record(), 'extra': 1}]\n for key, values in {\n 'service': ['', 'a' * 33, 'é', 'a b', 'a\\n', None, 1],\n 'level': ['INFO', '', [], {}, None, 1],\n 'duration_ms': [True, False, 1.0, -1, 1000000001, '1', None],\n }.items():\n invalid.extend({**record(), key: value} for value in values)\n for key in record():\n invalid.append({k: v for k, v in record().items() if k != key})\n for value in invalid:\n with self.subTest(value=value):\n self.assert_error('\\n' + json.dumps(value), 'INVALID_RECORD', 2)\n\n def test_invalid_json(self):\n for raw in ['{', 'NaN', 'Infinity', '-Infinity', '{} {}',\n '{\"duration_ms\": NaN}', '[' * 2000]:\n with self.subTest(raw=raw[:40]):\n self.assert_error('\\n\\n' + raw, 'INVALID_JSON', 3)\n\n def test_error_order_and_filtered_validation(self):\n self.assert_error('\\n{}\\n{', 'INVALID_RECORD', 2)\n self.assert_error('\\n{\\n{}', 'INVALID_JSON', 2)\n self.assert_error(json.dumps(record()) + '\\n\\n{}', 'INVALID_RECORD', 3,\n ('--service', 'missing'))\n\n def test_arguments(self):\n for args in [('--help',), ('--serv', 'api'), ('--service=api',),\n ('--service',), ('api',), ('--service', ''),\n ('--service', 'a' * 33), ('--service', 'é'),\n ('--service', 'api', 'extra'), ('--',)]:\n with self.subTest(args=args):\n self.assert_error('{', 'INVALID_ARGUMENT', 0, args)\n\n\nclass DomainTests(unittest.TestCase):\n def test_decoded_records_and_identifier_boundaries(self):\n for name in ['a', 'A0_-', 'a' * 32]:\n result = aggregate([(7, record(name, duration_ms=0))])\n self.assertEqual(result['count'], 1)\n self.assertEqual(result['services'][0]['service'], name)\n\n def test_line_is_preserved(self):\n with self.assertRaises(LogError) as caught:\n aggregate([(42, {})])\n self.assertEqual((caught.exception.code, caught.exception.line),\n ('INVALID_RECORD', 42))\n\n\nif __name__ == '__main__':\n unittest.main()\n","baeea6d449a5f8f09e11a26e478df5f58c941b6e2c7cd554567c33476295c804":"import json\nimport sys\n\nfrom .domain import LogError, aggregate as aggregate_records, identifier\n\n\ndef reject_constant(value):\n raise ValueError()\n\n\ndef decode_records(lines):\n \"\"\"Yield decoded records with their physical input line numbers.\"\"\"\n for line, raw in enumerate(lines, 1):\n if not raw.strip():\n continue\n try:\n record = json.loads(raw, parse_constant=reject_constant)\n except (ValueError, RecursionError):\n raise LogError('INVALID_JSON', line) from None\n yield line, record\n\n\ndef aggregate(lines, selected):\n return aggregate_records(decode_records(lines), selected)\n\n\ndef main():\n try:\n args = sys.argv[1:]\n if not args:\n selected = None\n elif len(args) == 2 and args[0] == '--service' and identifier(args[1]):\n selected = args[1]\n else:\n raise LogError('INVALID_ARGUMENT')\n result = aggregate(sys.stdin, selected)\n except LogError as error:\n print(json.dumps({'error': {'code': error.code, 'line': error.line}}),\n file=sys.stderr)\n return 2\n print(json.dumps(result))\n return 0\n","006e492f0968a05b8ef269673779bb01fbc0988f4d51a74619af0254f06b4efe":"\"\"\"Record validation and aggregation, independent of JSON and input/output.\"\"\"\n\nimport re\n\n\nclass LogError(Exception):\n def __init__(self, code, line=0):\n self.code = code\n self.line = line\n\n\ndef identifier(value):\n return (isinstance(value, str)\n and re.fullmatch(r'[A-Za-z0-9_-]{1,32}', value) is not None)\n\n\ndef validate(record, line):\n if (not isinstance(record, dict)\n or set(record) != {'service', 'level', 'duration_ms'}):\n raise LogError('INVALID_RECORD', line)\n if (not identifier(record['service'])\n or record['level'] not in ['info', 'warn', 'error']\n or type(record['duration_ms']) is not int\n or not 0 <= record['duration_ms'] <= 1000000000):\n raise LogError('INVALID_RECORD', line)\n\n\ndef aggregate(records, selected=None):\n \"\"\"Validate (line number, record) pairs and return sorted service totals.\n\n All records are validated, including services excluded from the result.\n \"\"\"\n groups = {}\n for line, record in records:\n validate(record, line)\n name = record['service']\n duration = record['duration_ms']\n row = groups.setdefault(name, dict(\n service=name, count=0, errors=0,\n duration_sum_ms=0, duration_max_ms=0))\n row['count'] += 1\n row['errors'] += int(record['level'] == 'error')\n row['duration_sum_ms'] += duration\n row['duration_max_ms'] = max(row['duration_max_ms'], duration)\n rows = [groups[name] for name in sorted(groups)\n if selected is None or selected == name]\n return {'services': rows, 'count': sum(row['count'] for row in rows)}\n","644e116ba5d92d6dab149a9859aab82f0101a802707618bf3fe0eea2036769ab":"import json\nfrom pathlib import Path\nimport subprocess\nimport sys\nimport unittest\nfrom unittest.mock import patch\n\nfrom logstats.cli import decode_records\n\nfrom logstats.domain import LogError, aggregate\n\n\nROOT = Path(__file__).resolve().parents[1]\n\n\ndef record(service='api', level='info', duration_ms=0):\n return dict(service=service, level=level, duration_ms=duration_ms)\n\n\nclass CliTests(unittest.TestCase):\n def run_cli(self, data='', args=()):\n return subprocess.run(\n [sys.executable, '-m', 'logstats', *args], input=data,\n text=True, capture_output=True, cwd=ROOT)\n\n def assert_error(self, data, code, line, args=()):\n result = self.run_cli(data, args)\n self.assertEqual(result.returncode, 2)\n self.assertEqual(result.stdout, '')\n self.assertEqual(json.loads(result.stderr),\n {'error': {'code': code, 'line': line}})\n\n def test_empty(self):\n for data in ('', '\\n \\t\\n'):\n with self.subTest(data=data):\n result = self.run_cli(data)\n self.assertEqual(result.returncode, 0)\n self.assertEqual(result.stderr, '')\n self.assertEqual(json.loads(result.stdout), {'services': [], 'count': 0})\n\n def test_totals_sorting_and_filter(self):\n data = '\\n'.join(json.dumps(r) for r in (\n record('z', 'warn', 0), record('a', 'error', 1000000000),\n record('a', 'info', 1000000000), record('a', 'warn', 1)))\n rows = [dict(service='a', count=3, errors=1,\n duration_sum_ms=2000000001, duration_max_ms=1000000000),\n dict(service='z', count=1, errors=0,\n duration_sum_ms=0, duration_max_ms=0)]\n for args, expected in (((), rows), (('--service', 'a'), rows[:1]),\n (('--service', 'missing'), [])):\n with self.subTest(args=args):\n result = self.run_cli(data, args)\n self.assertEqual(result.returncode, 0)\n self.assertEqual(result.stderr, '')\n self.assertEqual(json.loads(result.stdout),\n {'services': expected,\n 'count': sum(r['count'] for r in expected)})\n\n def test_invalid_records(self):\n invalid = [None, [], 1, 'text', {},\n dict(record(), extra=1), {'service': 'api', 'level': 'info'}]\n for service in ('', 'a' * 33, 'é', 'a.b', 'a\\n', None, 1, []):\n invalid.append(record(service=service))\n for level in ('INFO', '', None, [], {}, True):\n invalid.append(record(level=level))\n for duration in (-1, 1000000001, True, False, 1.0, '1', None, []):\n invalid.append(record(duration_ms=duration))\n for value in invalid:\n with self.subTest(value=value):\n self.assert_error('\\n' + json.dumps(value), 'INVALID_RECORD', 2)\n\n def test_identifier_boundaries(self):\n for service in ('A', '_-09Az', 'a' * 32):\n with self.subTest(service=service):\n result = self.run_cli(json.dumps(record(service)), ('--service', service))\n self.assertEqual(result.returncode, 0)\n self.assertEqual
View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

@Dentonshaw

Copy link
Copy Markdown

跑得快不一定赢,老跌跟头才是成功 —— DentonShaw

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment