{
 "schema": 1,
 "updated": "2026-10-11",
 "about": "TT Lab 용구 카탈로그. 사양은 제조사 공식 페이지(source)에서 checked_at 에 확인한 값만, 없으면 null. 러버의 ittf_larc 와 공의 ittf_code 는 ITTF 장비 포털(equipment.ittf.com)의 공개 목록과 이름을 맞춘 값. 가격·제휴 링크는 넣지 않는다. 갱신 절차: docs/superpowers/specs/2026-10-11-tt-gear-design.md 6절.",
 "ittf": {
  "larc": "https://equipment.ittf.com/#/equipment/racket_coverings",
  "balls": "https://equipment.ittf.com/#/equipment/balls",
  "checked_at": "2026-10-11"
 },
 "brands": [
  {
   "id": "butterfly",
   "name": "Butterfly",
   "name_ko": "버터플라이",
   "name_ja": "バタフライ",
   "country": "JP",
   "site": "https://www.butterfly.co.jp/",
   "scale": {
    "ko": "블레이드는 반발 특성 수치(속도 칸)와 진동 특성, 러버는 스피드·스핀 지수와 버터플라이 자체 스펀지 경도. 핌플·안티는 안정성·변화 수치.",
    "en": "Blades: reaction (shown as speed) and vibration figures. Rubbers: speed and spin indices with Butterfly's own sponge hardness. Pips and anti: stability and variation figures.",
    "ja": "ブレードは反発特性(スピード欄)と振動特性、ラバーはスピード・スピン指数とバタフライ独自のスポンジ硬度。粒・アンチは安定性・変化の数値。"
   }
  },
  {
   "id": "dhs",
   "name": "DHS",
   "name_ko": "DHS(홍쌍희)",
   "name_ja": "DHS(紅双喜)",
   "country": "CN",
   "site": "https://web.archive.org/web/2025/http://www.dhs-sports.com/",
   "scale": {
    "ko": "블레이드는 OFF++ 같은 유형 표기, 러버는 수치 등급 없이 스펀지 경도(39/40/41 처럼 여러 단계)와 두께. 2026-10-12 현재 공식 사이트가 점검 중이라 웹 아카이브의 공식 사이트 보관본에서 읽었다.",
    "en": "Blades: a type such as OFF++. Rubbers: no numeric ratings, only sponge hardness (several grades, e.g. 39/40/41) and thickness. The official site was under maintenance on 2026-10-12, so values come from web-archive copies of it.",
    "ja": "ブレードはOFF++などのタイプ表記、ラバーは数値の等級がなくスポンジ硬度(39/40/41のような複数段階)と厚さ。2026-10-12時点で公式サイトがメンテナンス中のため、ウェブアーカイブの公式サイト保存版から読んだ。"
   }
  },
  {
   "id": "nittaku",
   "name": "Nittaku",
   "name_ko": "닛타쿠",
   "name_ja": "ニッタク",
   "country": "JP",
   "site": "https://www.nittaku.com/",
   "scale": {
    "ko": "블레이드는 스피드 단계어(ミッド 등)와 공격·올라운드·수비 분류, 러버는 스피드·스핀 수치와 닛타쿠 스펀지 경도(독일·중국 기준 병기). 두께는 中·厚·特厚·MAX.",
    "en": "Blades: speed words (e.g. ミッド, mid) and attack/allround/defence class. Rubbers: speed and spin figures with Nittaku sponge hardness (German/Chinese equivalents also listed). Thickness as 中, 厚, 特厚, MAX.",
    "ja": "ブレードはスピードの段階語(ミッドなど)と攻撃用・オールラウンド・守備用の分類、ラバーはスピード・スピン数値とニッタクのスポンジ硬度(ドイツ・中国基準を併記)。厚さは中・厚・特厚・MAX。"
   }
  },
  {
   "id": "yasaka",
   "name": "Yasaka",
   "name_ko": "야사카",
   "name_ja": "ヤサカ",
   "country": "JP",
   "site": "https://yasakatabletennis.com/",
   "scale": {
    "ko": "블레이드·러버 모두 Speed·Control(러버는 Spin 추가) 0–100 수치. 스펀지 경도는 단위 없이 표기.",
    "en": "Blades and rubbers: Speed and Control (rubbers also Spin) on a 0–100 scale. Sponge hardness without a stated unit.",
    "ja": "ブレード・ラバーともSpeed・Control(ラバーはSpinも)の0–100数値。スポンジ硬度は単位なしで表記。"
   }
  },
  {
   "id": "tibhar",
   "name": "TIBHAR",
   "name_ko": "티바",
   "name_ja": "ティバー",
   "country": "DE",
   "site": "https://tibhar.info/",
   "scale": {
    "ko": "블레이드는 TEMPO·KONTROLLE 10점 척도(9-, 7+ 처럼 ± 표기)와 DEF/ALL/OFF 전략 분류, 러버는 TEMPO·SPIN·KONTROLLE 수치(100이 넘기도 한다)와 경도(도, 척도 미표기).",
    "en": "Blades: TEMPO and KONTROLLE on a 10-point scale (with +/−, e.g. 9-, 7+) and a DEF/ALL/OFF strategy class. Rubbers: TEMPO, SPIN and KONTROLLE figures (can exceed 100) and hardness in degrees (scale not named).",
    "ja": "ブレードはTEMPO・KONTROLLEの10点尺度(9-、7+のように±表記)とDEF/ALL/OFFの分類、ラバーはTEMPO・SPIN・KONTROLLEの数値(100を超えることも)と硬度(度、尺度の表記なし)。"
   }
  },
  {
   "id": "donic",
   "name": "DONIC",
   "name_ko": "도닉",
   "name_ja": "ドニック",
   "country": "DE",
   "site": "https://www.donic.com/",
   "scale": {
    "ko": "DEF·ALL·OFF 꼬리표(여러 개일 수 있다)와 Tempo·Kontrolle·Spin 낱말 등급(독일어 원문을 화면 언어로 옮김). 러버 경도는 도닉 표기의 도.",
    "en": "DEF/ALL/OFF tags (often several) and word ratings for tempo, control and spin (German originals, translated on screen). Rubber hardness in DONIC's degrees.",
    "ja": "DEF・ALL・OFFのタグ(複数のことも)とTempo・Kontrolle・Spinの段階語(ドイツ語の原文を画面の言語に訳す)。ラバー硬度はドニック表記の度。"
   }
  },
  {
   "id": "andro",
   "name": "andro",
   "name_ko": "안드로",
   "name_ja": "アンドロ",
   "country": "DE",
   "site": "https://www.andro.de/en",
   "scale": {
    "ko": "블레이드는 이름 꼬리표(OFF/S·ALL·DEF 등)와 무게 범위·두께, 러버는 수치 등급 없이 스펀지 경도(도)와 TENSOR 등 기술 표시.",
    "en": "Blades: name tags (OFF/S, ALL, DEF…) with weight range and thickness. Rubbers: no numeric ratings, only sponge degrees and technology marks such as TENSOR.",
    "ja": "ブレードは名前のタグ(OFF/S・ALL・DEFなど)と重量の幅・厚さ、ラバーは数値の等級がなく、スポンジの度数とTENSORなどの技術表示。"
   }
  },
  {
   "id": "stiga",
   "name": "STIGA",
   "name_ko": "스티가",
   "name_ja": "スティガ",
   "country": "SE",
   "site": "https://www.stigasports.com/en",
   "scale": {
    "ko": "블레이드는 Speed·Control 소수 수치(10 안팎)와 스타일 분류, 러버는 Speed·Spin·Control 정수 수치(100이 넘기도 한다)와 경도(도).",
    "en": "Blades: decimal Speed and Control (around 10) and a style class. Rubbers: integer Speed, Spin and Control (can exceed 100) and hardness in degrees.",
    "ja": "ブレードはSpeed・Controlの小数値(10前後)とスタイル分類、ラバーはSpeed・Spin・Controlの整数値(100を超えることも)と硬度(度)。"
   }
  },
  {
   "id": "xiom",
   "name": "XIOM",
   "name_ko": "엑시옴",
   "name_ja": "エクシオン",
   "country": "KR",
   "site": "https://www.xiom.co.kr/",
   "scale": {
    "ko": "블레이드는 OFF·DEF+ 같은 Type 등급과 합판·두께·무게, 러버는 수치 지수 없이 스펀지 경도(도)만.",
    "en": "Blades: a type grade such as OFF or DEF+ with plies, thickness and weight. Rubbers: no indices, only sponge hardness in degrees.",
    "ja": "ブレードはOFF・DEF+などのType等級と合板・厚さ・重量、ラバーは指数がなくスポンジ硬度(度)だけ。"
   }
  },
  {
   "id": "victas",
   "name": "VICTAS",
   "name_ko": "빅타스",
   "name_ja": "ヴィクタス",
   "country": "JP",
   "site": "https://www.victas.com/",
   "scale": {
    "ko": "블레이드는 DEF·OFF·OFF+ 등급, 러버는 수치 등급 없이 종류(텐션 등)와 스펀지 경도(단위 미표기, ±3).",
    "en": "Blades: DEF, OFF, OFF+ grades. Rubbers: no numeric ratings, only the type (tension etc.) and sponge hardness (no unit, ±3).",
    "ja": "ブレードはDEF・OFF・OFF+の等級、ラバーは数値の等級がなく、種類(テンションなど)とスポンジ硬度(単位なし、±3)。"
   }
  },
  {
   "id": "joola",
   "name": "JOOLA",
   "name_ko": "줄라",
   "name_ja": "ヨーラ",
   "country": "DE",
   "site": "https://joola.de/",
   "scale": {
    "ko": "joola.de 의 정수 지수 — 블레이드는 Tempo·Kontrolle(속도·컨트롤 칸), 러버는 Tempo·Spin. 경도는 도.",
    "en": "Integer indices on joola.de: blades Tempo and Kontrolle (speed and control), rubbers Tempo and Spin. Hardness in degrees.",
    "ja": "joola.deの整数指数 — ブレードはTempo・Kontrolle(スピード・コントロール欄)、ラバーはTempo・Spin。硬度は度。"
   }
  },
  {
   "id": "sauer-troeger",
   "name": "Sauer & Tröger",
   "name_ko": "사우어 & 트뢰거",
   "name_ja": "ザウアー&トレーガー",
   "country": "DE",
   "site": "https://www.sauer-troeger.com/",
   "scale": {
    "ko": "Pace(속도)·Control·교란 효과(Disruptive effect) 수치와 경기 방식 분류. 회전 수치는 내지 않고, 스펀지 경도는 Soft·Medium·Hard(±) 낱말.",
    "en": "Pace, Control and Disruptive effect figures with a game-system class. No spin figure; sponge hardness as Soft/Medium/Hard (+/−).",
    "ja": "Pace(スピード)・Control・かく乱効果(Disruptive effect)の数値とゲームシステム分類。スピンの数値はなく、スポンジ硬度はSoft・Medium・Hard(±)の言葉。"
   }
  },
  {
   "id": "sanwei",
   "name": "Sanwei",
   "name_ko": "산웨이",
   "name_ja": "サンウェイ",
   "country": "CN",
   "site": "https://sanweisport.com/en/",
   "scale": {
    "ko": "블레이드는 OFF+·ALL 등급과 반발·컨트롤·진동 수치, 러버는 Speed·Spin 수치.",
    "en": "Blades: OFF+/ALL grades with reaction, control and vibration figures. Rubbers: Speed and Spin figures.",
    "ja": "ブレードはOFF+・ALLの等級と反発・コントロール・振動の数値、ラバーはSpeed・Spinの数値。"
   }
  },
  {
   "id": "double-fish",
   "name": "Double Fish",
   "name_ko": "더블피시",
   "name_ja": "ダブルフィッシュ",
   "country": "CN",
   "site": "https://www.doublefish.com/",
   "scale": {
    "ko": "공은 별 등급(1–3성)과 ITTF 승인 표기, 수치 등급은 없다.",
    "en": "Balls: star grade (1–3 stars) and ITTF approval; no numeric ratings.",
    "ja": "ボールは星の等級(1–3つ星)とITTF公認の表記で、数値の等級はない。"
   }
  },
  {
   "id": "gewo",
   "name": "GEWO",
   "name_ko": "게보",
   "name_ja": "ゲボ",
   "country": "DE",
   "site": "https://www.gewo-tt.com/",
   "scale": {
    "ko": "Tempo·Effet(회전)·Kontrolle 수치(100이 넘기도 한다)와 DEF/ALL/OF 적합 분류. 스펀지 경도는 제품명 숫자나 Hard·Hard+ 낱말.",
    "en": "Tempo, Effet (spin) and Kontrolle figures (can exceed 100) with a DEF/ALL/OF suitability class. Sponge hardness in the product name or as Hard/Hard+.",
    "ja": "Tempo・Effet(回転)・Kontrolleの数値(100を超えることも)とDEF/ALL/OFの適性分類。スポンジ硬度は製品名の数字かHard・Hard+の言葉。"
   }
  },
  {
   "id": "dr-neubauer",
   "name": "Dr. Neubauer",
   "name_ko": "닥터 노이바우어",
   "name_ja": "ドクターノイバウアー",
   "country": "DE",
   "site": "https://drneubauer.com/",
   "scale": {
    "ko": "블레이드는 Speed·Control·Rigidity 수치, 롱핌플은 Speed·Spin·Control, 안티는 Speed·교란 효과·Control 수치와 경도(도).",
    "en": "Blades: Speed, Control and Rigidity figures. Long pips: Speed, Spin and Control. Anti: Speed, Disruptive effect and Control, with hardness in degrees.",
    "ja": "ブレードはSpeed・Control・Rigidity、粒高はSpeed・Spin・Control、アンチはSpeed・かく乱効果・Controlの数値と硬度(度)。"
   }
  },
  {
   "id": "cornilleau",
   "name": "Cornilleau",
   "name_ko": "코르닐로",
   "name_ja": "コルニヨー",
   "country": "FR",
   "site": "https://uk.cornilleau.com/",
   "scale": {
    "ko": "등급 지수가 없다 — 탁구대는 상판 두께·ITTF 승인 여부로 표기.",
    "en": "No rating indices — tables are described by top thickness and ITTF approval.",
    "ja": "等級の指数はない — 卓球台は天板の厚さとITTF公認の有無で表記。"
   }
  }
 ],
 "products": [
  {
   "id": "butterfly-viscaria",
   "type": "blade",
   "brand": "butterfly",
   "name": "Viscaria",
   "name_ja": "ビスカリア",
   "source": "https://www.butterfly.co.jp/products/detail/30041.html",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "5 wood + 2 Arylate Carbon",
    "carbon": "Arylate Carbon",
    "weight_g": "87",
    "thickness_mm": "5.8",
    "speed": "11.8",
    "control": null,
    "class": null,
    "handles": [
     "FL",
     "ST"
    ],
    "style": "offense"
   }
  },
  {
   "id": "butterfly-viscaria-super-alc",
   "type": "blade",
   "brand": "butterfly",
   "name": "Viscaria Super ALC",
   "name_ja": "ビスカリア SUPER ALC",
   "source": "https://www.butterfly.co.jp/products/detail/37191.html",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "5 wood + 2 Super Arylate Carbon",
    "carbon": "Super Arylate Carbon",
    "weight_g": "87",
    "thickness_mm": "5.7",
    "speed": "12.1",
    "control": null,
    "class": null,
    "handles": [
     "FL",
     "ST"
    ],
    "style": "offense"
   }
  },
  {
   "id": "butterfly-timo-boll-alc",
   "type": "blade",
   "brand": "butterfly",
   "name": "Timo Boll ALC",
   "name_ja": "ティモボル ALC",
   "source": "https://www.butterfly.co.jp/products/detail/35861.html",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "5 wood + 2 Arylate Carbon",
    "carbon": "Arylate Carbon",
    "weight_g": "87",
    "thickness_mm": "5.8",
    "speed": "11.8",
    "control": null,
    "class": null,
    "handles": [
     "FL",
     "ST",
     "AN"
    ],
    "style": "offense"
   }
  },
  {
   "id": "butterfly-harimoto-tomokazu-innerforce-alc",
   "type": "blade",
   "brand": "butterfly",
   "name": "Harimoto Tomokazu Innerforce ALC",
   "name_ja": "張本智和 インナーフォース ALC",
   "source": "https://www.butterfly.co.jp/products/detail/36991.html",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "5 wood + 2 Arylate Carbon (Innerfiber)",
    "carbon": "Arylate Carbon",
    "weight_g": "88",
    "thickness_mm": "6.0",
    "speed": "10.7",
    "control": null,
    "class": null,
    "handles": [
     "FL",
     "ST"
    ],
    "style": "offense"
   }
  },
  {
   "id": "butterfly-innerforce-layer-alc",
   "type": "blade",
   "brand": "butterfly",
   "name": "Innerforce Layer ALC",
   "name_ja": "インナーフォース レイヤー ALC",
   "source": "https://www.butterfly.co.jp/products/detail/36701.html",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "5 wood + 2 Arylate Carbon (Innerfiber)",
    "carbon": "Arylate Carbon",
    "weight_g": "91",
    "thickness_mm": "6.0",
    "speed": "10.7",
    "control": null,
    "class": null,
    "handles": [
     "FL",
     "ST",
     "AN"
    ],
    "style": "offense"
   }
  },
  {
   "id": "butterfly-fan-zhendong-alc",
   "type": "blade",
   "brand": "butterfly",
   "name": "Fan Zhendong ALC",
   "name_ja": "樊振東 ALC",
   "source": "https://www.butterfly.co.jp/products/detail/37221.html",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "5 wood + 2 Arylate Carbon",
    "carbon": "Arylate Carbon",
    "weight_g": "88",
    "thickness_mm": "5.8",
    "speed": "11.8",
    "control": null,
    "class": null,
    "handles": [
     "FL",
     "ST"
    ],
    "style": "offense"
   }
  },
  {
   "id": "butterfly-fan-zhendong-super-zlc",
   "type": "blade",
   "brand": "butterfly",
   "name": "Fan Zhendong Super ZLC",
   "name_ja": "樊振東 SUPER ZLC",
   "source": "https://www.butterfly.co.jp/products/detail/37251.html",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "5 wood + 2 Super ZL Carbon",
    "carbon": "Super ZLC",
    "weight_g": "88",
    "thickness_mm": "5.6",
    "speed": "12.3",
    "control": null,
    "class": null,
    "handles": [
     "FL",
     "ST"
    ],
    "style": "offense"
   }
  },
  {
   "id": "butterfly-lin-yun-ju-super-zlc",
   "type": "blade",
   "brand": "butterfly",
   "name": "Lin Yun-Ju Super ZLC",
   "name_ja": "林昀儒 SUPER ZLC",
   "source": "https://www.butterfly.co.jp/products/detail/37131.html",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "5 wood + 2 Super ZL Carbon",
    "carbon": "Super ZLC",
    "weight_g": "83",
    "thickness_mm": "5.6",
    "speed": "12.3",
    "control": null,
    "class": null,
    "handles": [
     "FL"
    ],
    "style": "offense"
   }
  },
  {
   "id": "butterfly-timo-boll-caf",
   "type": "blade",
   "brand": "butterfly",
   "name": "Timo Boll CAF",
   "name_ja": "ティモボル CAF",
   "source": "https://www.butterfly.co.jp/products/detail/36951.html",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 5,
    "composition": "3 wood + 2 CA Fiber",
    "carbon": "CA Fiber",
    "weight_g": "80",
    "thickness_mm": "5.7",
    "speed": "10.6",
    "control": null,
    "class": null,
    "handles": [
     "FL",
     "ST"
    ],
    "style": "offense"
   }
  },
  {
   "id": "butterfly-petr-korbel",
   "type": "blade",
   "brand": "butterfly",
   "name": "Petr Korbel",
   "name_ja": "コルベル",
   "source": "https://www.butterfly.co.jp/products/detail/30271.html",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 5,
    "composition": "5 wood",
    "carbon": "none",
    "weight_g": "95",
    "thickness_mm": "5.9",
    "speed": "10.6",
    "control": null,
    "class": null,
    "handles": [
     "FL"
    ],
    "style": "offense"
   }
  },
  {
   "id": "butterfly-sk7-classic",
   "type": "blade",
   "brand": "butterfly",
   "name": "SK7 Classic",
   "name_ja": "SK7クラシック",
   "source": "https://www.butterfly.co.jp/products/detail/36881.html",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "7 wood",
    "carbon": "none",
    "weight_g": "87",
    "thickness_mm": "6.8",
    "speed": "11.1",
    "control": null,
    "class": null,
    "handles": [
     "FL",
     "ST"
    ],
    "style": "offense"
   }
  },
  {
   "id": "butterfly-primorac",
   "type": "blade",
   "brand": "butterfly",
   "name": "Primorac",
   "source": "https://www.butterfly-global.com/en/products/detail/30551.html",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 5,
    "composition": "5 wood",
    "carbon": "none",
    "weight_g": null,
    "thickness_mm": "5.5",
    "speed": "9.7",
    "control": null,
    "class": null,
    "handles": [
     "FL"
    ],
    "style": "offense"
   }
  },
  {
   "id": "butterfly-timo-boll-spirit",
   "type": "blade",
   "brand": "butterfly",
   "name": "Timo Boll Spirit",
   "source": "https://www.butterfly-global.com/en/products/detail/30811.html",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "5 wood + 2 Arylate Carbon",
    "carbon": "Arylate Carbon",
    "weight_g": null,
    "thickness_mm": "5.8",
    "speed": "11.8",
    "control": null,
    "class": null,
    "handles": [
     "FL"
    ],
    "style": "offense"
   }
  },
  {
   "id": "butterfly-diode-v",
   "type": "blade",
   "brand": "butterfly",
   "name": "Diode V",
   "name_ja": "ダイオードV",
   "source": "https://www.butterfly.co.jp/products/detail/36961.html",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 5,
    "composition": "5 wood",
    "carbon": "none",
    "weight_g": "96",
    "thickness_mm": "5.7",
    "speed": "10.6",
    "control": null,
    "class": null,
    "handles": [
     "FL",
     "ST"
    ],
    "style": "defense"
   }
  },
  {
   "id": "butterfly-hadraw-jpv-s",
   "type": "blade",
   "brand": "butterfly",
   "name": "Hadraw JPV - S",
   "name_ja": "ハッドロウJPV - S",
   "source": "https://www.butterfly.co.jp/products/detail/23820.html",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 5,
    "composition": "5 wood",
    "carbon": "none",
    "weight_g": "78",
    "thickness_mm": "7.1",
    "speed": "11.4",
    "control": null,
    "class": null,
    "handles": [
     "JS"
    ],
    "style": "offense"
   }
  },
  {
   "id": "butterfly-cypress-g-max",
   "type": "blade",
   "brand": "butterfly",
   "name": "Cypress G-MAX",
   "name_ja": "サイプレスG-MAX",
   "source": "https://www.butterfly.co.jp/products/detail/23930.html",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 1,
    "composition": "1-ply Kiso hinoki",
    "carbon": "none",
    "weight_g": "93",
    "thickness_mm": "10.0",
    "speed": "13.6",
    "control": null,
    "class": null,
    "handles": [
     "JS"
    ],
    "style": "offense"
   }
  },
  {
   "id": "butterfly-viscaria-cs",
   "type": "blade",
   "brand": "butterfly",
   "name": "Viscaria - CS",
   "name_ja": "ビスカリア - CS",
   "source": "https://www.butterfly.co.jp/products/detail/24010.html",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "5 wood + 2 Arylate Carbon",
    "carbon": "Arylate Carbon",
    "weight_g": "80",
    "thickness_mm": "5.8",
    "speed": "11.8",
    "control": null,
    "class": null,
    "handles": [
     "CS"
    ],
    "style": null
   }
  },
  {
   "id": "butterfly-tenergy-05",
   "type": "rubber",
   "brand": "butterfly",
   "name": "Tenergy 05",
   "name_ja": "テナジー05",
   "source": "https://www.butterfly.co.jp/products/detail/05800.html",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": true,
    "sponge_mm": [
     "2.1",
     "1.9",
     "1.7"
    ],
    "hardness": "36",
    "hardness_scale": "Butterfly",
    "speed": "83",
    "spin": "76",
    "control": null,
    "class": null,
    "ittf_larc": "14-001"
   }
  },
  {
   "id": "butterfly-tenergy-05-hard",
   "type": "rubber",
   "brand": "butterfly",
   "name": "Tenergy 05 Hard",
   "name_ja": "テナジー05ハード",
   "source": "https://www.butterfly.co.jp/products/detail/06030.html",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": true,
    "sponge_mm": [
     "2.1",
     "1.9"
    ],
    "hardness": "43",
    "hardness_scale": "Butterfly",
    "speed": "82",
    "spin": "96",
    "control": null,
    "class": null,
    "ittf_larc": "14-033"
   }
  },
  {
   "id": "butterfly-tenergy-64",
   "type": "rubber",
   "brand": "butterfly",
   "name": "Tenergy 64",
   "name_ja": "テナジー64",
   "source": "https://www.butterfly.co.jp/products/detail/05820.html",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": true,
    "sponge_mm": [
     "2.1",
     "1.9",
     "1.7"
    ],
    "hardness": "36",
    "hardness_scale": "Butterfly",
    "speed": "87",
    "spin": "70",
    "control": null,
    "class": null,
    "ittf_larc": "14-003"
   }
  },
  {
   "id": "butterfly-tenergy-80",
   "type": "rubber",
   "brand": "butterfly",
   "name": "Tenergy 80",
   "name_ja": "テナジー80",
   "source": "https://www.butterfly.co.jp/products/detail/05930.html",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": true,
    "sponge_mm": [
     "2.1",
     "1.9",
     "1.7"
    ],
    "hardness": "36",
    "hardness_scale": "Butterfly",
    "speed": "85",
    "spin": "73",
    "control": null,
    "class": null,
    "ittf_larc": "14-018"
   }
  },
  {
   "id": "butterfly-tenergy-19",
   "type": "rubber",
   "brand": "butterfly",
   "name": "Tenergy 19",
   "name_ja": "テナジー19",
   "source": "https://www.butterfly.co.jp/products/detail/06090.html",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": true,
    "sponge_mm": [
     "2.1",
     "1.9",
     "1.7"
    ],
    "hardness": "36",
    "hardness_scale": "Butterfly",
    "speed": "84",
    "spin": "75",
    "control": null,
    "class": null,
    "ittf_larc": "14-041"
   }
  },
  {
   "id": "butterfly-dignics-05",
   "type": "rubber",
   "brand": "butterfly",
   "name": "Dignics 05",
   "name_ja": "ディグニクス05",
   "source": "https://www.butterfly.co.jp/products/detail/06040.html",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": true,
    "sponge_mm": [
     "2.1",
     "1.9"
    ],
    "hardness": "40",
    "hardness_scale": "Butterfly",
    "speed": "86",
    "spin": "85",
    "control": null,
    "class": null,
    "ittf_larc": "14-028"
   }
  },
  {
   "id": "butterfly-dignics-80",
   "type": "rubber",
   "brand": "butterfly",
   "name": "Dignics 80",
   "name_ja": "ディグニクス80",
   "source": "https://www.butterfly.co.jp/products/detail/06050.html",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": true,
    "sponge_mm": [
     "2.1",
     "1.9"
    ],
    "hardness": "40",
    "hardness_scale": "Butterfly",
    "speed": "88",
    "spin": "82",
    "control": null,
    "class": null,
    "ittf_larc": "14-029"
   }
  },
  {
   "id": "butterfly-dignics-64",
   "type": "rubber",
   "brand": "butterfly",
   "name": "Dignics 64",
   "name_ja": "ディグニクス64",
   "source": "https://www.butterfly.co.jp/products/detail/06060.html",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": true,
    "sponge_mm": [
     "2.1",
     "1.9"
    ],
    "hardness": "40",
    "hardness_scale": "Butterfly",
    "speed": "90",
    "spin": "79",
    "control": null,
    "class": null,
    "ittf_larc": "14-030"
   }
  },
  {
   "id": "butterfly-dignics-09c",
   "type": "rubber",
   "brand": "butterfly",
   "name": "Dignics 09C",
   "name_ja": "ディグニクス09C",
   "source": "https://www.butterfly.co.jp/products/detail/06070.html",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": true,
    "tension": true,
    "sponge_mm": [
     "2.1",
     "1.9"
    ],
    "hardness": "44",
    "hardness_scale": "Butterfly",
    "speed": "79",
    "spin": "96",
    "control": null,
    "class": null,
    "ittf_larc": "14-035"
   }
  },
  {
   "id": "butterfly-zyre-03",
   "type": "rubber",
   "brand": "butterfly",
   "name": "Zyre 03",
   "name_ja": "ザイア03",
   "source": "https://www.butterfly.co.jp/products/detail/06140.html",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": true,
    "sponge_mm": [
     "2.7",
     "2.5"
    ],
    "hardness": "44",
    "hardness_scale": "Butterfly",
    "speed": "88",
    "spin": "100",
    "control": null,
    "class": null,
    "ittf_larc": "14-049"
   }
  },
  {
   "id": "butterfly-glayzer",
   "type": "rubber",
   "brand": "butterfly",
   "name": "Glayzer",
   "name_ja": "グレイザー",
   "source": "https://www.butterfly.co.jp/products/detail/06100.html",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": true,
    "sponge_mm": [
     "2.1",
     "1.9"
    ],
    "hardness": "38",
    "hardness_scale": "Butterfly",
    "speed": "81",
    "spin": "73",
    "control": null,
    "class": null,
    "ittf_larc": "14-044"
   }
  },
  {
   "id": "butterfly-glayzer-09c",
   "type": "rubber",
   "brand": "butterfly",
   "name": "Glayzer 09C",
   "name_ja": "グレイザー09C",
   "source": "https://www.butterfly.co.jp/products/detail/06110.html",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": true,
    "tension": true,
    "sponge_mm": [
     "2.1",
     "1.9"
    ],
    "hardness": "42",
    "hardness_scale": "Butterfly",
    "speed": "75",
    "spin": "87",
    "control": null,
    "class": null,
    "ittf_larc": "14-045"
   }
  },
  {
   "id": "butterfly-rozena",
   "type": "rubber",
   "brand": "butterfly",
   "name": "Rozena",
   "name_ja": "ロゼナ",
   "source": "https://www.butterfly.co.jp/products/detail/06020.html",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": true,
    "sponge_mm": [
     "2.1",
     "1.9",
     "1.7"
    ],
    "hardness": "35",
    "hardness_scale": "Butterfly",
    "speed": "83",
    "spin": "70",
    "control": null,
    "class": null,
    "ittf_larc": "14-025"
   }
  },
  {
   "id": "butterfly-sriver",
   "type": "rubber",
   "brand": "butterfly",
   "name": "Sriver",
   "name_ja": "スレイバー",
   "source": "https://www.butterfly.co.jp/products/detail/05050.html",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "2.1",
     "1.9",
     "1.7"
    ],
    "hardness": "38",
    "hardness_scale": "Butterfly",
    "speed": "38",
    "spin": "23",
    "control": null,
    "class": null,
    "ittf_larc": null
   }
  },
  {
   "id": "butterfly-tackiness-chop",
   "type": "rubber",
   "brand": "butterfly",
   "name": "Tackiness Chop",
   "name_ja": "タキネス チョップ",
   "source": "https://www.butterfly.co.jp/products/detail/05450.html",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": true,
    "tension": null,
    "sponge_mm": [
     "1.9",
     "1.7",
     "1.3"
    ],
    "hardness": "32",
    "hardness_scale": "Butterfly",
    "speed": "16",
    "spin": "16",
    "control": null,
    "class": null,
    "ittf_larc": null
   }
  },
  {
   "id": "butterfly-impartial-xb",
   "type": "rubber",
   "brand": "butterfly",
   "name": "Impartial XB",
   "name_ja": "インパーシャルXB",
   "source": "https://www.butterfly.co.jp/products/detail/00410.html",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "short_pips",
    "tacky": null,
    "tension": true,
    "sponge_mm": [
     "2.1",
     "1.9",
     "1.7"
    ],
    "hardness": "30",
    "hardness_scale": "Butterfly",
    "speed": "（表）58",
    "spin": "（表）47",
    "control": null,
    "class": null,
    "ittf_larc": "14-024"
   }
  },
  {
   "id": "butterfly-impartial-xs",
   "type": "rubber",
   "brand": "butterfly",
   "name": "Impartial XS",
   "name_ja": "インパーシャルXS",
   "source": "https://www.butterfly.co.jp/products/detail/00420.html",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "short_pips",
    "tacky": null,
    "tension": true,
    "sponge_mm": [
     "2.1",
     "1.9",
     "1.7"
    ],
    "hardness": "30",
    "hardness_scale": "Butterfly",
    "speed": "（表）70",
    "spin": "（表）70",
    "control": null,
    "class": null,
    "ittf_larc": "14-023"
   }
  },
  {
   "id": "butterfly-feint-long-iii",
   "type": "rubber",
   "brand": "butterfly",
   "name": "Feint Long III",
   "name_ja": "フェイント ロング3",
   "source": "https://www.butterfly.co.jp/products/detail/00320.html",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "long_pips",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "1.3",
     "1.1"
    ],
    "hardness": "25",
    "hardness_scale": "Butterfly",
    "speed": null,
    "spin": null,
    "control": null,
    "class": null,
    "ittf_larc": null
   }
  },
  {
   "id": "butterfly-super-anti",
   "type": "rubber",
   "brand": "butterfly",
   "name": "Super Anti",
   "name_ja": "スーパーアンチ",
   "source": "https://www.butterfly.co.jp/products/detail/05030.html",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "anti",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "1.9",
     "1.3"
    ],
    "hardness": "25",
    "hardness_scale": "Butterfly",
    "speed": null,
    "spin": null,
    "control": null,
    "class": null,
    "ittf_larc": null
   }
  },
  {
   "id": "butterfly-three-star-ball-a40-plus",
   "type": "ball",
   "brand": "butterfly",
   "name": "Butterfly Three-Star Ball A40+",
   "source": "https://www.butterfly-global.com/en/products/detail/95770.html",
   "checked_at": "2026-10-11",
   "spec": {
    "ittf_approved": true,
    "material": "Plastic",
    "seam": "seamed",
    "grade": "3-star",
    "ittf_code": "ITTF-186-B-09/17"
   }
  },
  {
   "id": "butterfly-three-star-ball-r40-plus",
   "type": "ball",
   "brand": "butterfly",
   "name": "Butterfly Three-Star Ball R40+",
   "source": "https://www.butterfly-global.com/en/products/detail/95820.html",
   "checked_at": "2026-10-11",
   "spec": {
    "ittf_approved": true,
    "material": "Plastic",
    "seam": "seamed",
    "grade": "3-star",
    "ittf_code": "ITTF-234-B-01/20"
   }
  },
  {
   "id": "butterfly-training-ball-40-plus",
   "type": "ball",
   "brand": "butterfly",
   "name": "Butterfly Training Ball 40+",
   "source": "https://www.butterfly-global.com/en/products/detail/95840.html",
   "checked_at": "2026-10-11",
   "spec": {
    "ittf_approved": null,
    "material": "Plastic",
    "seam": null,
    "grade": "training"
   }
  },
  {
   "id": "butterfly-lezoline-mach",
   "type": "shoes",
   "brand": "butterfly",
   "name": "Lezoline Mach",
   "name_ja": "レゾライン マッハ",
   "source": "https://www.butterfly.co.jp/products/detail/93630.html",
   "checked_at": "2026-10-11",
   "spec": {
    "note": "Sole: rubber, EVA"
   }
  },
  {
   "id": "butterfly-lezoline-reiss",
   "type": "shoes",
   "brand": "butterfly",
   "name": "Lezoline Reiss",
   "name_ja": "レゾライン レイス",
   "source": "https://www.butterfly.co.jp/products/detail/93690.html",
   "checked_at": "2026-10-11",
   "spec": {
    "note": "Sole: rubber, EVA"
   }
  },
  {
   "id": "butterfly-starker-bs-2",
   "type": "table",
   "brand": "butterfly",
   "name": "Starker BS-2",
   "name_ja": "スターカー・BS‐2",
   "source": "https://www.butterfly.co.jp/products/detail/95290.html",
   "checked_at": "2026-10-11",
   "spec": {
    "category": "table",
    "ittf_approved": true,
    "note": "Top 25mm particle core, 125kg"
   }
  },
  {
   "id": "butterfly-free-chack-ii",
   "type": "accessory",
   "brand": "butterfly",
   "name": "Free Chack II",
   "name_ja": "フリー・チャック2",
   "source": "https://www.butterfly.co.jp/products/detail/74860.html",
   "checked_at": "2026-10-11",
   "spec": {
    "category": "glue",
    "note": "20ml, JTTA approved"
   }
  },
  {
   "id": "butterfly-clean-care",
   "type": "accessory",
   "brand": "butterfly",
   "name": "Clean Care",
   "name_ja": "クリーン・ケア",
   "source": "https://www.butterfly.co.jp/products/detail/75790.html",
   "checked_at": "2026-10-11",
   "spec": {
    "category": "cleaner",
    "note": null
   }
  },
  {
   "id": "butterfly-edge-protector-ii",
   "type": "accessory",
   "brand": "butterfly",
   "name": "Edge Protector II",
   "name_ja": "エッジ・プロテクター2",
   "source": "https://www.butterfly.co.jp/products/detail/77030.html",
   "checked_at": "2026-10-11",
   "spec": {
    "category": "edge_tape",
    "note": "48cm long, 6/8/10/12mm wide"
   }
  },
  {
   "id": "butterfly-rosmore-hard-full-case",
   "type": "accessory",
   "brand": "butterfly",
   "name": "Rosmore Hard Full Case",
   "name_ja": "ロスモア・ハードフルケース",
   "source": "https://www.butterfly.co.jp/products/detail/63450.html",
   "checked_at": "2026-10-11",
   "spec": {
    "category": "case",
    "note": "18×29×6cm, holds 1 racket"
   }
  },
  {
   "id": "dhs-hurricane-long-5x",
   "type": "blade",
   "brand": "dhs",
   "name": "Hurricane Long 5X",
   "source": "https://web.archive.org/web/20250917024016/http://www.dhs-sports.com/malong/89d3c98d-55d1-5bc1-3472-918d14e86045.shtml",
   "checked_at": "2026-10-12",
   "source_archived": "2025-09-17",
   "spec": {
    "plies": 7,
    "composition": "5 wood + 2 Arylate Carbon",
    "carbon": "Arylate Carbon",
    "weight_g": "89±3",
    "thickness_mm": "6.0",
    "speed": "OFF++",
    "control": null,
    "class": null,
    "handles": [
     "FL",
     "CS"
    ],
    "style": "offense"
   }
  },
  {
   "id": "dhs-hurricane-long-5",
   "type": "blade",
   "brand": "dhs",
   "name": "Hurricane Long 5",
   "source": "https://web.archive.org/web/20250625172423/http://www.dhs-sports.com/malong/60578c01-f2ff-4a68-151c-245c6fe4387d.shtml",
   "checked_at": "2026-10-12",
   "source_archived": "2025-06-25",
   "spec": {
    "plies": 7,
    "composition": "5 wood + 2 Arylate Carbon",
    "carbon": "Arylate Carbon",
    "weight_g": "89±3",
    "thickness_mm": "5.9",
    "speed": "OFF++",
    "control": null,
    "class": null,
    "handles": [
     "FL",
     "CS",
     "ST"
    ],
    "style": "offense"
   }
  },
  {
   "id": "dhs-hurricane-301",
   "type": "blade",
   "brand": "dhs",
   "name": "Hurricane 301",
   "source": "https://web.archive.org/web/20250915211233/http://en.dhs-sports.com/a94abedb-3967-4770-99ca-d526051499fc/686306c7-c590-7b36-aef1-4c58dde563b4.shtml",
   "checked_at": "2026-10-12",
   "source_archived": "2025-09-15",
   "spec": {
    "plies": 7,
    "composition": "5 wood + 2 Arylate Carbon",
    "carbon": "Arylate Carbon",
    "weight_g": "89±3",
    "thickness_mm": "5.8",
    "speed": "OFF++",
    "control": null,
    "class": null,
    "handles": [
     "FL",
     "CS"
    ],
    "style": "offense"
   }
  },
  {
   "id": "dhs-power-g7",
   "type": "blade",
   "brand": "dhs",
   "name": "Power G7",
   "source": "https://web.archive.org/web/20250815052741/http://www.dhs-sports.com/malong/1beb66a9-8667-7758-ecb9-6280ef47f003.shtml",
   "checked_at": "2026-10-12",
   "source_archived": "2025-08-15",
   "spec": {
    "plies": 7,
    "composition": "7 wood",
    "carbon": "none",
    "weight_g": "89±3",
    "thickness_mm": "6.3",
    "speed": null,
    "control": null,
    "class": null,
    "handles": [
     "FL",
     "CS"
    ],
    "style": null
   }
  },
  {
   "id": "dhs-hurricane-3",
   "type": "rubber",
   "brand": "dhs",
   "name": "Hurricane 3",
   "source": "https://web.archive.org/web/20210620154058/http://en.dhs-sports.com/c8f809c3-110f-5b2c-3afc-89deed24c7a1/a225fb60-a1b3-70a8-da23-f1e6891b9359.shtml",
   "checked_at": "2026-10-12",
   "source_archived": "2021-06-20",
   "spec": {
    "kind": "inverted",
    "tacky": true,
    "tension": null,
    "sponge_mm": [
     "2.15",
     "2.2"
    ],
    "hardness": "39/40/41",
    "hardness_scale": "DHS",
    "speed": null,
    "spin": null,
    "control": null,
    "class": null,
    "ittf_larc": "24-108"
   }
  },
  {
   "id": "dhs-neo-hurricane-3",
   "type": "rubber",
   "brand": "dhs",
   "name": "NEO Hurricane 3",
   "source": "https://web.archive.org/web/20210620165346/http://en.dhs-sports.com/c8f809c3-110f-5b2c-3afc-89deed24c7a1/a402f836-24fd-a4e0-d801-6344a567d6c6.shtml",
   "checked_at": "2026-10-12",
   "source_archived": "2021-06-20",
   "spec": {
    "kind": "inverted",
    "tacky": true,
    "tension": null,
    "sponge_mm": [
     "2.15",
     "2.2"
    ],
    "hardness": "39/40/41",
    "hardness_scale": "DHS",
    "speed": null,
    "spin": null,
    "control": null,
    "class": null,
    "ittf_larc": null
   }
  },
  {
   "id": "dhs-hurricane-8",
   "type": "rubber",
   "brand": "dhs",
   "name": "Hurricane 8",
   "source": "https://web.archive.org/web/20210620150643/http://en.dhs-sports.com/c8f809c3-110f-5b2c-3afc-89deed24c7a1/961ba3ee-d935-5b14-a01e-b7f0dba26f2a.shtml",
   "checked_at": "2026-10-12",
   "source_archived": "2021-06-20",
   "spec": {
    "kind": "inverted",
    "tacky": true,
    "tension": null,
    "sponge_mm": [
     "2.15",
     "2.2"
    ],
    "hardness": "39/40/41",
    "hardness_scale": "DHS",
    "speed": null,
    "spin": null,
    "control": null,
    "class": null,
    "ittf_larc": "24-054"
   }
  },
  {
   "id": "dhs-skyline-3",
   "type": "rubber",
   "brand": "dhs",
   "name": "Skyline 3",
   "source": "https://web.archive.org/web/20210620152848/http://en.dhs-sports.com/e4dc9f69-673d-938a-2301-f52bece5dca9/2c4d5629-1ab9-f117-002e-52563fd8841a.shtml",
   "checked_at": "2026-10-12",
   "source_archived": "2021-06-20",
   "spec": {
    "kind": "inverted",
    "tacky": true,
    "tension": null,
    "sponge_mm": [
     "2.15",
     "2.2"
    ],
    "hardness": "39/40/41",
    "hardness_scale": "DHS",
    "speed": null,
    "spin": null,
    "control": null,
    "class": null,
    "ittf_larc": "24-006"
   }
  },
  {
   "id": "dhs-gold-arc-8",
   "type": "rubber",
   "brand": "dhs",
   "name": "Gold Arc 8",
   "source": "https://web.archive.org/web/20260511062631/http://dhs-sports.com/a177b31b-0f9d-a907-4e5f-8648cdab6dda/39702e4b-ce82-633c-d09b-bf4175dbaa28.shtml",
   "checked_at": "2026-10-12",
   "source_archived": "2026-05-11",
   "spec": {
    "kind": "inverted",
    "tacky": false,
    "tension": null,
    "sponge_mm": null,
    "hardness": null,
    "hardness_scale": null,
    "speed": null,
    "spin": null,
    "control": null,
    "class": null,
    "ittf_larc": "24-057"
   }
  },
  {
   "id": "dhs-tinarc-5",
   "type": "rubber",
   "brand": "dhs",
   "name": "TinArc 5",
   "source": "https://web.archive.org/web/20260423002025/http://en.dhs-sports.com/95a1ae15-7617-c446-a1ca-96cc999272c2/1c5f5deb-ced1-7ec3-cd95-ad133ba5fe6c.shtml",
   "checked_at": "2026-10-12",
   "source_archived": "2026-04-23",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "2.0",
     "2.1"
    ],
    "hardness": "33/35/37",
    "hardness_scale": "DHS",
    "speed": null,
    "spin": null,
    "control": null,
    "class": null,
    "ittf_larc": "24-051"
   }
  },
  {
   "id": "dhs-sharping",
   "type": "rubber",
   "brand": "dhs",
   "name": "Sharping",
   "source": "https://web.archive.org/web/20260519191814/http://en.dhs-sports.com/740d74ea-c2e0-f5e1-73dd-d38b983fc051/b2938d84-f879-d69c-99ca-edb2fb6efd83.shtml",
   "checked_at": "2026-10-12",
   "source_archived": "2026-05-19",
   "spec": {
    "kind": "short_pips",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "1.8",
     "2.15"
    ],
    "hardness": "Medium",
    "hardness_scale": "DHS",
    "speed": null,
    "spin": null,
    "control": null,
    "class": null,
    "ittf_larc": "24-034"
   }
  },
  {
   "id": "dhs-c8",
   "type": "rubber",
   "brand": "dhs",
   "name": "C8",
   "source": "https://web.archive.org/web/20260519183559/http://en.dhs-sports.com/740d74ea-c2e0-f5e1-73dd-d38b983fc051/6f234a65-511e-99ab-858a-e5e5ccc61463.shtml",
   "checked_at": "2026-10-12",
   "source_archived": "2026-05-19",
   "spec": {
    "kind": "long_pips",
    "tacky": null,
    "tension": null,
    "sponge_mm": null,
    "hardness": null,
    "hardness_scale": null,
    "speed": null,
    "spin": null,
    "control": null,
    "class": null,
    "ittf_larc": "24-027"
   }
  },
  {
   "id": "dhs-d40-plus-abs-tour-ball-saiding-3-star",
   "type": "ball",
   "brand": "dhs",
   "name": "D40+ ABS Tour Ball (Saiding 3-star)",
   "source": "https://web.archive.org/web/20251012115124/http://www.dhs-sports.com/aa29b5c1-dcc8-20a8-59f9-96bd25446525/9e1719e3-79cf-f3a7-fe5a-86a722a15bcb.shtml",
   "checked_at": "2026-10-12",
   "source_archived": "2025-10-12",
   "spec": {
    "ittf_approved": true,
    "material": "ABS plastic",
    "seam": "seamed",
    "grade": "3-star",
    "ittf_code": null
   }
  },
  {
   "id": "dhs-rainbow-19",
   "type": "table",
   "brand": "dhs",
   "name": "Rainbow 19",
   "source": "https://web.archive.org/web/20260516205203/http://dhs-sports.com/9bc1115e-3bd3-3702-74e7-aed8af23ef7c/6c858b24-d367-69a8-cdb4-90da8408ea36.shtml",
   "checked_at": "2026-10-12",
   "source_archived": "2026-05-16",
   "spec": {
    "category": "table",
    "ittf_approved": null,
    "note": "Used at the 2019 World Championships (Budapest) / flatness ≤3mm"
   }
  },
  {
   "id": "double-fish-v40-plus-volant-3-stars",
   "type": "ball",
   "brand": "double-fish",
   "name": "V40+ Volant 3 Stars",
   "source": "https://www.doublefish.com/best-quality-double-fish-v40-volant-3-stars-table-tennis-ball_p28",
   "checked_at": "2026-10-12",
   "spec": {
    "ittf_approved": true,
    "material": "ABS plastic",
    "seam": "seamed",
    "grade": "3-star",
    "ittf_code": null
   }
  },
  {
   "id": "double-fish-par40-plus-3-stars",
   "type": "ball",
   "brand": "double-fish",
   "name": "PAR40+ 3-Stars",
   "source": "https://www.doublefish.com/double-fish-par40-3-stars-table-tennis-ball_p239",
   "checked_at": "2026-10-12",
   "spec": {
    "ittf_approved": true,
    "material": "ABS plastic",
    "seam": "seamed",
    "grade": "3-star",
    "ittf_code": "ITTF-260-B-09/23"
   }
  },
  {
   "id": "double-fish-99-45b",
   "type": "table",
   "brand": "double-fish",
   "name": "99-45B",
   "source": "https://www.doublefish.com/official-durable-table-tennis-table-for-world-tour-99-45b_p18",
   "checked_at": "2026-10-12",
   "spec": {
    "category": "table",
    "ittf_approved": true,
    "note": "Top 25mm"
   }
  },
  {
   "id": "sanwei-froster",
   "type": "blade",
   "brand": "sanwei",
   "name": "Froster",
   "source": "https://sanweisport.com/en/product/blade/expert-carbon/froster/",
   "checked_at": "2026-10-12",
   "spec": {
    "plies": 7,
    "composition": "5 wood + 2 Arylate fiber",
    "carbon": "Arylate Carbon",
    "weight_g": "85±5",
    "thickness_mm": "5.9",
    "speed": null,
    "control": "11.5",
    "class": "OFF+",
    "handles": [
     "CS",
     "FL",
     "ST"
    ],
    "style": "offense"
   }
  },
  {
   "id": "sanwei-fextra-one",
   "type": "blade",
   "brand": "sanwei",
   "name": "Fextra One",
   "source": "https://sanweisport.com/en/product/blade/fextra/fextra-one/",
   "checked_at": "2026-10-12",
   "spec": {
    "plies": 7,
    "composition": "7 wood",
    "carbon": "none",
    "weight_g": null,
    "thickness_mm": null,
    "speed": null,
    "control": null,
    "class": "ALL",
    "handles": [
     "FL",
     "CS",
     "ST",
     "AN"
    ],
    "style": "allround"
   }
  },
  {
   "id": "sanwei-new-target-national",
   "type": "rubber",
   "brand": "sanwei",
   "name": "New Target National",
   "source": "https://sanweisport.com/en/product/rubber/target/best-table-tennis-rubber-sanwei-target-national-2-2/",
   "checked_at": "2026-10-12",
   "spec": {
    "kind": "inverted",
    "tacky": true,
    "tension": null,
    "sponge_mm": [
     "MAX"
    ],
    "hardness": null,
    "hardness_scale": null,
    "speed": "13",
    "spin": "13.5",
    "control": null,
    "class": null,
    "ittf_larc": null
   }
  },
  {
   "id": "donic-waldner-senso-carbon",
   "type": "blade",
   "brand": "donic",
   "name": "Waldner Senso Carbon",
   "source": "https://www.donic.com/DONIC-WALDNER-SENSO-CARBON/100219010",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "Limba–Anegre–Carbon–Abachi(core)",
    "carbon": "Carbon",
    "weight_g": "80-90",
    "thickness_mm": null,
    "speed": "mittel",
    "control": "mittel",
    "class": "ALL+, OFF-",
    "handles": [
     "AN",
     "ST",
     "FL"
    ],
    "style": "offense",
    "layers": [
     "Limba",
     "Anegre",
     "Carbon",
     "Abachi",
     "Carbon",
     "Anegre",
     "Limba"
    ]
   }
  },
  {
   "id": "donic-persson-powerplay",
   "type": "blade",
   "brand": "donic",
   "name": "Persson Powerplay",
   "source": "https://www.donic.com/DONIC-PERSSON-POWERPLAY/100206010",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "Koto–Anti-vibration film–Abachi–Abachi(core)",
    "carbon": "none",
    "weight_g": "80-90",
    "thickness_mm": null,
    "speed": "schnell",
    "control": "mittel",
    "class": "OFF-, OFF",
    "handles": [
     "AN",
     "ST",
     "FL"
    ],
    "style": "offense"
   }
  },
  {
   "id": "donic-original-true-carbon",
   "type": "blade",
   "brand": "donic",
   "name": "Original True Carbon",
   "source": "https://www.donic.com/DONIC-ORIGINAL-TRUE-CARBON/110265010",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "Koto–Kevlar Carbon–Ayous–Kiri(core)",
    "carbon": "Kevlar Carbon",
    "weight_g": "80-90",
    "thickness_mm": null,
    "speed": "schnell",
    "control": "anspruchsvoll",
    "class": "OFF, OFF+",
    "handles": [
     "AN",
     "ST",
     "FL"
    ],
    "style": "offense",
    "layers": [
     "Koto",
     "Kevlar Carbon",
     "Ayous",
     "Kiri",
     "Ayous",
     "Kevlar Carbon",
     "Koto"
    ]
   }
  },
  {
   "id": "donic-original-true-carbon-inner",
   "type": "blade",
   "brand": "donic",
   "name": "Original True Carbon Inner",
   "source": "https://www.donic.com/DONIC-ORIGINAL-TRUE-CARBON-INNER/110291010",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "Koto–Ayous–Hybrid Aramid Carbon–Kiri(core)",
    "carbon": "Hybrid Aramid Carbon",
    "weight_g": "80-90",
    "thickness_mm": null,
    "speed": "mittel",
    "control": "hoch",
    "class": "ALL+, OFF-",
    "handles": [
     "AN",
     "ST",
     "FL"
    ],
    "style": "offense",
    "layers": [
     "Koto",
     "Ayous",
     "Hybrid Aramid Carbon",
     "Kiri",
     "Hybrid Aramid Carbon",
     "Ayous",
     "Koto"
    ]
   }
  },
  {
   "id": "donic-waldner-allplay",
   "type": "blade",
   "brand": "donic",
   "name": "Waldner Allplay",
   "source": "https://www.donic.com/DONIC-WALDNER-ALLPLAY/100218020",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 5,
    "composition": "Limba–Limba–Abachi(core)",
    "carbon": "none",
    "weight_g": "80-90",
    "thickness_mm": null,
    "speed": "kontrolliert",
    "control": "hoch",
    "class": "ALL-, ALL",
    "handles": [
     "AN",
     "ST",
     "FL"
    ],
    "style": "allround",
    "layers": [
     "Limba",
     "Limba",
     "Abachi",
     "Limba",
     "Limba"
    ]
   }
  },
  {
   "id": "donic-defplay-senso",
   "type": "blade",
   "brand": "donic",
   "name": "Defplay Senso",
   "source": "https://www.donic.com/DONIC-DEFPLAY-SENSO/100212010",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 5,
    "composition": "Anegre–Gabun–Abachi(core)",
    "carbon": "none",
    "weight_g": "< 80",
    "thickness_mm": null,
    "speed": "kontrolliert",
    "control": "hoch",
    "class": "DEF, ALL-",
    "handles": [
     "AN",
     "ST",
     "FL"
    ],
    "style": "defense",
    "layers": [
     "Anegre",
     "Gabun",
     "Abachi",
     "Gabun",
     "Anegre"
    ]
   }
  },
  {
   "id": "donic-bluefire-m1",
   "type": "rubber",
   "brand": "donic",
   "name": "Bluefire M1",
   "source": "https://www.donic.com/DONIC-BLUEFIRE-M1/000294220",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "2.0",
     "max"
    ],
    "hardness": "47.5",
    "hardness_scale": "DONIC",
    "speed": "schnell",
    "spin": "hoch",
    "control": "mittel",
    "class": "OFF, OFF+",
    "ittf_larc": "21-025"
   }
  },
  {
   "id": "donic-bluegrip-c2",
   "type": "rubber",
   "brand": "donic",
   "name": "BlueGrip C2",
   "source": "https://www.donic.com/DONIC-BLUEGRIP-C2/000241120",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": true,
    "tension": true,
    "sponge_mm": [
     "2.0",
     "max"
    ],
    "hardness": "55",
    "hardness_scale": "DONIC",
    "speed": "schnell",
    "spin": "extrem",
    "control": "anspruchsvoll",
    "class": "OFF, OFF+",
    "ittf_larc": "21-059"
   }
  },
  {
   "id": "donic-bluestorm-z1",
   "type": "rubber",
   "brand": "donic",
   "name": "Bluestorm Z1",
   "source": "https://www.donic.com/DONIC-BLUESTORM-Z1/000214225",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "1.9",
     "2.1",
     "max+"
    ],
    "hardness": "47.5",
    "hardness_scale": "DONIC",
    "speed": "schnell",
    "spin": "hoch",
    "control": "anspruchsvoll",
    "class": "OFF, OFF+",
    "ittf_larc": "21-049"
   }
  },
  {
   "id": "donic-baracuda",
   "type": "rubber",
   "brand": "donic",
   "name": "Baracuda",
   "source": "https://www.donic.com/DONIC-BARACUDA/000284118",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "1.8",
     "2.0",
     "max"
    ],
    "hardness": null,
    "hardness_scale": null,
    "speed": "schnell",
    "spin": "hoch",
    "control": "mittel",
    "class": "OFF-, OFF, OFF+",
    "ittf_larc": "21-006"
   }
  },
  {
   "id": "donic-acuda-s2",
   "type": "rubber",
   "brand": "donic",
   "name": "Acuda S2",
   "source": "https://www.donic.com/DONIC-ACUDA-S2/000208125",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "1.8",
     "2.0",
     "max"
    ],
    "hardness": null,
    "hardness_scale": null,
    "speed": "mittel",
    "spin": "hoch",
    "control": "hoch",
    "class": "ALL+, OFF-, OFF",
    "ittf_larc": "21-012"
   }
  },
  {
   "id": "donic-slice-40-cd",
   "type": "rubber",
   "brand": "donic",
   "name": "Slice 40 CD",
   "source": "https://www.donic.com/DONIC-SLICE-40-CD/000281118",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": true,
    "tension": null,
    "sponge_mm": [
     "1.2",
     "1.5",
     "1.8"
    ],
    "hardness": null,
    "hardness_scale": null,
    "speed": "kontrolliert",
    "spin": "extrem",
    "control": "hoch",
    "class": "DEF, DEF+, ALL-",
    "ittf_larc": "21-048"
   }
  },
  {
   "id": "donic-piranja-cd",
   "type": "rubber",
   "brand": "donic",
   "name": "Piranja CD",
   "source": "https://www.donic.com/DONIC-PIRANJA-CD/000246100",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "long_pips",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "OX",
     "0.3-0.6",
     "1.0-1.3"
    ],
    "hardness": null,
    "hardness_scale": null,
    "speed": "kontrolliert",
    "spin": "hoch",
    "control": "hoch",
    "class": "DEF, DEF+",
    "ittf_larc": "21-064"
   }
  },
  {
   "id": "donic-alligator-anti",
   "type": "rubber",
   "brand": "donic",
   "name": "Alligator Anti",
   "source": "https://www.donic.com/DONIC-ALLIGATOR-ANTI/000244115",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "anti",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "1.0",
     "1.5"
    ],
    "hardness": null,
    "hardness_scale": null,
    "speed": "mittel",
    "spin": null,
    "control": "mittel",
    "class": "DEF+, ALL-, ALL",
    "ittf_larc": "21-022"
   }
  },
  {
   "id": "andro-treiber-co",
   "type": "blade",
   "brand": "andro",
   "name": "Treiber CO",
   "source": "https://www.andro.de/en/treiber-co",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "5 wood + 2 KVL Carbon",
    "carbon": "KVL Carbon",
    "weight_g": "87 - 93",
    "thickness_mm": "6.1",
    "speed": null,
    "control": null,
    "class": "OFF/S",
    "handles": [
     "ST",
     "FL",
     "AN"
    ],
    "style": "offense"
   }
  },
  {
   "id": "andro-kanter-co",
   "type": "blade",
   "brand": "andro",
   "name": "Kanter CO",
   "source": "https://www.andro.de/en/kanter-co",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 5,
    "composition": "3 wood + 2 Carbon",
    "carbon": "Carbon",
    "weight_g": "66 - 72",
    "thickness_mm": "6.6",
    "speed": null,
    "control": null,
    "class": "OFF",
    "handles": [
     "ST",
     "FL",
     "AN"
    ],
    "style": "offense"
   }
  },
  {
   "id": "andro-tp-ligna-co",
   "type": "blade",
   "brand": "andro",
   "name": "TP_Ligna CO",
   "source": "https://www.andro.de/en/tpligna-co",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "7 (Carbon)",
    "carbon": "Carbon",
    "weight_g": "92 - 98",
    "thickness_mm": "6.3",
    "speed": null,
    "control": null,
    "class": null,
    "handles": [
     "ST",
     "FL"
    ],
    "style": null
   }
  },
  {
   "id": "andro-synteliac-zco",
   "type": "blade",
   "brand": "andro",
   "name": "Synteliac ZCO",
   "source": "https://www.andro.de/en/synteliac-zco",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "5 wood + 2 Zyreema synthetic fiber",
    "carbon": "Zyreema",
    "weight_g": "82 - 88",
    "thickness_mm": "5.7",
    "speed": null,
    "control": null,
    "class": null,
    "handles": [
     "ST",
     "FL"
    ],
    "style": null
   }
  },
  {
   "id": "andro-novacell-off-s",
   "type": "blade",
   "brand": "andro",
   "name": "Novacell OFF/S",
   "source": "https://www.andro.de/en/novacell-offs",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 5,
    "composition": "5 wood",
    "carbon": "none",
    "weight_g": "77 - 83",
    "thickness_mm": "5.8",
    "speed": null,
    "control": null,
    "class": "OFF/S",
    "handles": [
     "ST",
     "FL",
     "AN"
    ],
    "style": "offense"
   }
  },
  {
   "id": "andro-timber-5-all",
   "type": "blade",
   "brand": "andro",
   "name": "Timber 5 ALL",
   "source": "https://www.andro.de/en/timber-5-all",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 5,
    "composition": "5 wood",
    "carbon": "none",
    "weight_g": "80 - 86",
    "thickness_mm": "5.8",
    "speed": null,
    "control": null,
    "class": "ALL",
    "handles": [
     "ST",
     "FL",
     "AN"
    ],
    "style": "allround"
   }
  },
  {
   "id": "andro-timber-5-def",
   "type": "blade",
   "brand": "andro",
   "name": "Timber 5 DEF",
   "source": "https://www.andro.de/en/timber-5-def",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 5,
    "composition": "5 wood",
    "carbon": "none",
    "weight_g": "77 - 83",
    "thickness_mm": "4.9",
    "speed": null,
    "control": null,
    "class": "DEF",
    "handles": [
     "ST",
     "FL"
    ],
    "style": "defense"
   }
  },
  {
   "id": "andro-rasanter-r45",
   "type": "rubber",
   "brand": "andro",
   "name": "Rasanter R45",
   "source": "https://www.andro.de/en/rasanter-r45",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": true,
    "sponge_mm": [
     "1.7",
     "2.0",
     "Ultramax"
    ],
    "hardness": "45",
    "hardness_scale": "andro",
    "speed": null,
    "spin": null,
    "control": null,
    "class": null,
    "ittf_larc": "03-051"
   }
  },
  {
   "id": "andro-rasanter-r37",
   "type": "rubber",
   "brand": "andro",
   "name": "Rasanter R37",
   "source": "https://www.andro.de/en/rasanter-r37",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": true,
    "sponge_mm": [
     "1.7",
     "2.0",
     "Ultramax"
    ],
    "hardness": "37",
    "hardness_scale": "andro",
    "speed": null,
    "spin": null,
    "control": null,
    "class": null,
    "ittf_larc": "03-037"
   }
  },
  {
   "id": "andro-rasanter-v47",
   "type": "rubber",
   "brand": "andro",
   "name": "Rasanter V47",
   "source": "https://www.andro.de/en/rasanter-v47",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": true,
    "sponge_mm": [
     "1.7",
     "2.0",
     "Ultramax"
    ],
    "hardness": "47",
    "hardness_scale": "andro",
    "speed": null,
    "spin": null,
    "control": null,
    "class": null,
    "ittf_larc": "03-040"
   }
  },
  {
   "id": "andro-rasanter-c53",
   "type": "rubber",
   "brand": "andro",
   "name": "Rasanter C53",
   "source": "https://www.andro.de/en/rasanter-c53",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": true,
    "sponge_mm": [
     "2.0",
     "Ultramax"
    ],
    "hardness": "53",
    "hardness_scale": "andro",
    "speed": null,
    "spin": null,
    "control": null,
    "class": null,
    "ittf_larc": "03-052"
   }
  },
  {
   "id": "andro-hexer-powergrip",
   "type": "rubber",
   "brand": "andro",
   "name": "Hexer Powergrip",
   "source": "https://www.andro.de/en/hexer-powergrip",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": true,
    "sponge_mm": [
     "1.7",
     "1.9",
     "2.1"
    ],
    "hardness": "47.5",
    "hardness_scale": "andro",
    "speed": null,
    "spin": null,
    "control": null,
    "class": null,
    "ittf_larc": "03-044"
   }
  },
  {
   "id": "andro-chintac-52s",
   "type": "rubber",
   "brand": "andro",
   "name": "Chintac 52S",
   "source": "https://www.andro.de/en/chintac-52s",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": true,
    "tension": true,
    "sponge_mm": null,
    "hardness": "52",
    "hardness_scale": "andro",
    "speed": null,
    "spin": null,
    "control": null,
    "class": null,
    "ittf_larc": "03-070"
   }
  },
  {
   "id": "andro-blowfish",
   "type": "rubber",
   "brand": "andro",
   "name": "Blowfish",
   "source": "https://www.andro.de/en/blowfish",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "short_pips",
    "tacky": null,
    "tension": true,
    "sponge_mm": [
     "1.8",
     "2.0",
     "Max."
    ],
    "hardness": null,
    "hardness_scale": null,
    "speed": null,
    "spin": null,
    "control": null,
    "class": null,
    "ittf_larc": "03-004"
   }
  },
  {
   "id": "andro-rasant-chaos",
   "type": "rubber",
   "brand": "andro",
   "name": "Rasant Chaos",
   "source": "https://www.andro.de/en/rasant-chaos",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "long_pips",
    "tacky": null,
    "tension": true,
    "sponge_mm": [
     "0.5",
     "1.2",
     "OX"
    ],
    "hardness": null,
    "hardness_scale": null,
    "speed": null,
    "spin": null,
    "control": null,
    "class": null,
    "ittf_larc": "03-034"
   }
  },
  {
   "id": "tibhar-stratus-powerwood",
   "type": "blade",
   "brand": "tibhar",
   "name": "Stratus Powerwood",
   "source": "https://tibhar.info/shop/stratus-powerwood/",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 5,
    "composition": "5 wood",
    "carbon": "none",
    "weight_g": "85",
    "thickness_mm": null,
    "speed": "9",
    "control": "7+",
    "class": null,
    "handles": [
     "FL",
     "AN",
     "ST"
    ],
    "style": "offense"
   }
  },
  {
   "id": "tibhar-samsonov-force-pro-black-edition",
   "type": "blade",
   "brand": "tibhar",
   "name": "Samsonov Force Pro Black Edition",
   "source": "https://tibhar.info/shop/samsonov-force-pro-black-edition/",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": null,
    "carbon": null,
    "weight_g": "85-90",
    "thickness_mm": null,
    "speed": "9-",
    "control": "7+",
    "class": null,
    "handles": [
     "FL",
     "AN",
     "ST"
    ],
    "style": "offense"
   }
  },
  {
   "id": "tibhar-samsonov-force-pro",
   "type": "blade",
   "brand": "tibhar",
   "name": "Samsonov Force Pro",
   "source": "https://tibhar.info/shop/samsonov-force-pro/",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": null,
    "carbon": null,
    "weight_g": "85",
    "thickness_mm": null,
    "speed": "9-",
    "control": "7",
    "class": null,
    "handles": [
     "FL",
     "AN",
     "ST"
    ],
    "style": "offense"
   }
  },
  {
   "id": "tibhar-felix-lebrun-hyper-carbon",
   "type": "blade",
   "brand": "tibhar",
   "name": "Félix Lebrun Hyper Carbon",
   "source": "https://tibhar.info/shop/felix-lebrun-hyper-carbon/",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "5 wood + 2 carbon/synthetic fibre blend (inner, next to core)",
    "carbon": "Carbon-synthetic fibre blend",
    "weight_g": "85",
    "thickness_mm": null,
    "speed": "9-",
    "control": "8-",
    "class": null,
    "handles": [
     "FL",
     "ST",
     "PEN"
    ],
    "style": "offense"
   }
  },
  {
   "id": "tibhar-defense-plus",
   "type": "blade",
   "brand": "tibhar",
   "name": "Defense Plus",
   "source": "https://tibhar.info/shop/defense-plus/",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 5,
    "composition": "5 wood (incl. 2 balsa)",
    "carbon": "none",
    "weight_g": "75",
    "thickness_mm": null,
    "speed": "3+",
    "control": "10",
    "class": null,
    "handles": [
     "FL",
     "ST"
    ],
    "style": "defense"
   }
  },
  {
   "id": "tibhar-evolution-mx-p",
   "type": "rubber",
   "brand": "tibhar",
   "name": "Evolution MX-P",
   "source": "https://tibhar.info/shop/evolution-mx-p/",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "1.5-1.6",
     "1.7-1.8",
     "1.9-2.0",
     "2.1-2.2"
    ],
    "hardness": "45.7-47.7",
    "hardness_scale": "TIBHAR",
    "speed": "125",
    "spin": "120",
    "control": "80",
    "class": null,
    "ittf_larc": "74-013"
   }
  },
  {
   "id": "tibhar-evolution-mx-d",
   "type": "rubber",
   "brand": "tibhar",
   "name": "Evolution MX-D",
   "source": "https://tibhar.info/shop/evolution-mx-d/",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "1.9-2.0",
     "2.1-2.2"
    ],
    "hardness": "50.3-52.3",
    "hardness_scale": "TIBHAR",
    "speed": "130",
    "spin": "122",
    "control": "75",
    "class": null,
    "ittf_larc": "74-042"
   }
  },
  {
   "id": "tibhar-hybrid-k3",
   "type": "rubber",
   "brand": "tibhar",
   "name": "Hybrid K3",
   "source": "https://tibhar.info/shop/hybrid-k3/",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": true,
    "tension": null,
    "sponge_mm": [
     "2.0",
     "MAX"
    ],
    "hardness": "53",
    "hardness_scale": "TIBHAR",
    "speed": "118",
    "spin": "130",
    "control": "100",
    "class": null,
    "ittf_larc": "74-047"
   }
  },
  {
   "id": "tibhar-quantum-x-pro",
   "type": "rubber",
   "brand": "tibhar",
   "name": "Quantum X Pro",
   "source": "https://tibhar.info/shop/quantum-x-pro/",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "1.8",
     "2.0",
     "MAX"
    ],
    "hardness": "47.5",
    "hardness_scale": "TIBHAR",
    "speed": "125",
    "spin": "120",
    "control": "80",
    "class": null,
    "ittf_larc": "74-039"
   }
  },
  {
   "id": "tibhar-grass-d-tecs",
   "type": "rubber",
   "brand": "tibhar",
   "name": "Grass D.TecS",
   "source": "https://tibhar.info/shop/grass-d-tecs/",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "long_pips",
    "tacky": null,
    "tension": true,
    "sponge_mm": [
     "OX",
     "0.5",
     "0.9",
     "1.2",
     "1.6"
    ],
    "hardness": "47.5",
    "hardness_scale": "TIBHAR",
    "speed": "45",
    "spin": "95",
    "control": "75",
    "class": null,
    "ittf_larc": null
   }
  },
  {
   "id": "tibhar-speedy-soft",
   "type": "rubber",
   "brand": "tibhar",
   "name": "Speedy Soft",
   "source": "https://tibhar.info/shop/speedy-soft/",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "short_pips",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "1.0",
     "1.5",
     "2.0"
    ],
    "hardness": "45",
    "hardness_scale": "TIBHAR",
    "speed": "100",
    "spin": "55",
    "control": "94",
    "class": null,
    "ittf_larc": null
   }
  },
  {
   "id": "sauer-troeger-hellfire",
   "type": "rubber",
   "brand": "sauer-troeger",
   "name": "Hellfire",
   "source": "https://www.sauer-troeger.com/en/products/hellfire",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "long_pips",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "OX"
    ],
    "hardness": "Medium",
    "hardness_scale": "Sauer & Tröger",
    "speed": "40",
    "spin": null,
    "control": "97",
    "class": null,
    "ittf_larc": "130-001"
   }
  },
  {
   "id": "sauer-troeger-schmerz",
   "type": "rubber",
   "brand": "sauer-troeger",
   "name": "Schmerz",
   "source": "https://www.sauer-troeger.com/en/products/schmerz-1",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "long_pips",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "OX",
     "0.5"
    ],
    "hardness": "Medium +",
    "hardness_scale": "Sauer & Tröger",
    "speed": "43",
    "spin": null,
    "control": "94",
    "class": null,
    "ittf_larc": "130-007"
   }
  },
  {
   "id": "sauer-troeger-hipster",
   "type": "rubber",
   "brand": "sauer-troeger",
   "name": "Hipster",
   "source": "https://www.sauer-troeger.com/en/products/hipster-1",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "short_pips",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "1.1",
     "1.5",
     "1.9"
    ],
    "hardness": "Hard -",
    "hardness_scale": "Sauer & Tröger",
    "speed": "91",
    "spin": null,
    "control": "82",
    "class": null,
    "ittf_larc": "130-006"
   }
  },
  {
   "id": "sauer-troeger-hass",
   "type": "rubber",
   "brand": "sauer-troeger",
   "name": "Hass",
   "source": "https://www.sauer-troeger.com/en/products/hass",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "short_pips",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "1.5",
     "1.8",
     "2.1"
    ],
    "hardness": "Medium",
    "hardness_scale": "Sauer & Tröger",
    "speed": "96",
    "spin": null,
    "control": "92",
    "class": null,
    "ittf_larc": "130-004"
   }
  },
  {
   "id": "sauer-troeger-super-stop",
   "type": "rubber",
   "brand": "sauer-troeger",
   "name": "Super Stop",
   "source": "https://www.sauer-troeger.com/en/products/super-stop-1",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "anti",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "1.5",
     "1.9"
    ],
    "hardness": "Soft +",
    "hardness_scale": "Sauer & Tröger",
    "speed": "43",
    "spin": null,
    "control": "105",
    "class": null,
    "ittf_larc": "130-008"
   }
  },
  {
   "id": "sauer-troeger-blackout",
   "type": "rubber",
   "brand": "sauer-troeger",
   "name": "Blackout",
   "source": "https://www.sauer-troeger.com/en/products/blackout-anti",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "anti",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "1.5",
     "2.0"
    ],
    "hardness": "Soft",
    "hardness_scale": "Sauer & Tröger",
    "speed": "33",
    "spin": null,
    "control": "98",
    "class": null,
    "ittf_larc": "130-011"
   }
  },
  {
   "id": "sauer-troeger-zhero-offensive",
   "type": "blade",
   "brand": "sauer-troeger",
   "name": "ZHERO Offensive",
   "source": "https://www.sauer-troeger.com/en/products/zhero-offensiv-holz",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "5 wood + 2 carbon",
    "carbon": "Carbon",
    "weight_g": "approx. 88",
    "thickness_mm": "5.2",
    "speed": "92",
    "control": "90",
    "class": null,
    "handles": [
     "ST",
     "FL"
    ],
    "style": "offense",
    "layers": [
     "Koto",
     "Carbon",
     "Ayous",
     "Kiri",
     "Ayous",
     "Carbon",
     "Koto"
    ]
   }
  },
  {
   "id": "gewo-aruna-hinoki-carbon-off",
   "type": "blade",
   "brand": "gewo",
   "name": "Aruna Hinoki Carbon OFF",
   "source": "https://www.gewo-tt.com/GEWO-Holz-Aruna-Hinoki-Carbon-OFF-gerade/944800003",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "5 wood + 2 carbon (Hinoki outer plies)",
    "carbon": "Carbon",
    "weight_g": "approx. 90",
    "thickness_mm": null,
    "speed": "101",
    "control": "88",
    "class": null,
    "handles": [
     "FL",
     "AN",
     "ST"
    ],
    "style": "offense"
   }
  },
  {
   "id": "gewo-velox-alpha-def",
   "type": "blade",
   "brand": "gewo",
   "name": "Velox alpha Def",
   "source": "https://www.gewo-tt.com/GEWO-Holz-Velox-alpha-Def-gerade/441900003",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 5,
    "composition": null,
    "carbon": null,
    "weight_g": "approx. 85",
    "thickness_mm": null,
    "speed": "65",
    "control": "104",
    "class": null,
    "handles": [
     "FL",
     "AN",
     "ST"
    ],
    "style": "defense"
   }
  },
  {
   "id": "gewo-nexxus-el-pro-50-hard",
   "type": "rubber",
   "brand": "gewo",
   "name": "Nexxus EL Pro 50 Hard",
   "source": "https://www.gewo-tt.com/GEWO-Belag-Nexxus-EL-Pro-50-Hard-schwarz-2-1-mm/9166910021",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": true,
    "sponge_mm": [
     "2.1",
     "maXXimum"
    ],
    "hardness": "50",
    "hardness_scale": "GEWO",
    "speed": "130",
    "spin": "125",
    "control": "87",
    "class": null,
    "ittf_larc": null
   }
  },
  {
   "id": "gewo-hype-el-pro-47-5",
   "type": "rubber",
   "brand": "gewo",
   "name": "Hype EL Pro 47.5",
   "source": "https://www.gewo-tt.com/GEWO-Belag-Hype-EL-Pro-47.5-schwarz-2-1-mm/7493910021",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": true,
    "sponge_mm": [
     "1.9",
     "2.1"
    ],
    "hardness": "Hard +",
    "hardness_scale": "GEWO",
    "speed": "122",
    "spin": "120",
    "control": "92",
    "class": null,
    "ittf_larc": null
   }
  },
  {
   "id": "gewo-codexx-el-pro-52",
   "type": "rubber",
   "brand": "gewo",
   "name": "Codexx EL Pro 52",
   "source": "https://www.gewo-tt.com/GEWO-Belag-Codexx-EL-Pro-52-schwarz-2-0-mm/10300910020",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": true,
    "tension": null,
    "sponge_mm": [
     "2.0",
     "2.2"
    ],
    "hardness": null,
    "hardness_scale": null,
    "speed": "135",
    "spin": "128",
    "control": "81",
    "class": null,
    "ittf_larc": null
   }
  },
  {
   "id": "dr-neubauer-desperado-reloaded",
   "type": "rubber",
   "brand": "dr-neubauer",
   "name": "Desperado Reloaded",
   "source": "https://drneubauer.com/shop.php?cat=1&cat_s=4&lang=us&prod=168",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "long_pips",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "OX",
     "0.6",
     "1.0",
     "1.3"
    ],
    "hardness": "36",
    "hardness_scale": "Dr. Neubauer",
    "speed": "56",
    "spin": "88",
    "control": "90",
    "class": null,
    "ittf_larc": "26-058"
   }
  },
  {
   "id": "dr-neubauer-desperado-2",
   "type": "rubber",
   "brand": "dr-neubauer",
   "name": "Desperado 2",
   "source": "https://drneubauer.com/shop.php?cat=1&cat_s=4&lang=us&prod=118",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "long_pips",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "OX",
     "0.6",
     "1.0",
     "1.3"
    ],
    "hardness": null,
    "hardness_scale": null,
    "speed": "51",
    "spin": "83",
    "control": "87",
    "class": null,
    "ittf_larc": "26-027"
   }
  },
  {
   "id": "dr-neubauer-a-b-s-3",
   "type": "rubber",
   "brand": "dr-neubauer",
   "name": "A-B-S 3",
   "source": "https://drneubauer.com/shop.php?cat=1&cat_s=8&lang=us&prod=161",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "anti",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "1.5",
     "2.0"
    ],
    "hardness": "42",
    "hardness_scale": "Dr. Neubauer",
    "speed": "46",
    "spin": null,
    "control": "100",
    "class": null,
    "ittf_larc": "26-053"
   }
  },
  {
   "id": "dr-neubauer-barricade-def",
   "type": "blade",
   "brand": "dr-neubauer",
   "name": "Barricade DEF",
   "source": "https://drneubauer.com/shop.php?cat=2&cat_s=0&lang=us&prod=30",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": null,
    "carbon": null,
    "weight_g": "appr. 52",
    "thickness_mm": null,
    "speed": "68",
    "control": "95",
    "class": null,
    "handles": [
     "ST",
     "FL",
     "AN"
    ],
    "style": "defense"
   }
  },
  {
   "id": "nittaku-acoustic",
   "type": "blade",
   "brand": "nittaku",
   "name": "Acoustic",
   "name_ja": "アコースティック",
   "source": "https://www.nittaku.com/products/rackets/post-39",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 5,
    "composition": "5 wood",
    "carbon": "none",
    "weight_g": "88±",
    "thickness_mm": "5.7",
    "speed": "ミッド (mid)",
    "control": null,
    "class": null,
    "handles": [
     "FL"
    ],
    "style": "offense"
   }
  },
  {
   "id": "nittaku-violin",
   "type": "blade",
   "brand": "nittaku",
   "name": "Violin",
   "name_ja": "バイオリン",
   "source": "https://www.nittaku.com/products/rackets/post-37",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 5,
    "composition": "5 wood",
    "carbon": "none",
    "weight_g": "88±",
    "thickness_mm": "5.3",
    "speed": "ミッドスロー (mid-slow)",
    "control": null,
    "class": null,
    "handles": [
     "ST",
     "FL"
    ],
    "style": "offense"
   }
  },
  {
   "id": "nittaku-septear",
   "type": "blade",
   "brand": "nittaku",
   "name": "Septear",
   "name_ja": "セプティアー",
   "source": "https://www.nittaku.com/products/rackets/post-52",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "7 wood (all natural Kiso hinoki)",
    "carbon": "none",
    "weight_g": "85±",
    "thickness_mm": "6.7",
    "speed": "ミッド (mid)",
    "control": null,
    "class": null,
    "handles": [
     "ST",
     "FL"
    ],
    "style": "offense"
   }
  },
  {
   "id": "nittaku-acoustic-carbon",
   "type": "blade",
   "brand": "nittaku",
   "name": "Acoustic Carbon",
   "name_ja": "アコースティックカーボン",
   "source": "https://www.nittaku.com/products/rackets/post-34",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "5 wood + 2 FE Carbon (outer)",
    "carbon": "FE Carbon",
    "weight_g": "90±",
    "thickness_mm": "5.5",
    "speed": "ミッドファースト (mid-fast)",
    "control": null,
    "class": null,
    "handles": [
     "FL"
    ],
    "style": "offense"
   }
  },
  {
   "id": "nittaku-violoncello",
   "type": "blade",
   "brand": "nittaku",
   "name": "Violoncello",
   "name_ja": "ビオンセロ",
   "source": "https://www.nittaku.com/products/rackets/post-64",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 5,
    "composition": "5 wood",
    "carbon": "none",
    "weight_g": "92±",
    "thickness_mm": "5.3",
    "speed": "ミッドスロー (mid-slow)",
    "control": null,
    "class": null,
    "handles": [
     "ST",
     "FL"
    ],
    "style": "defense"
   }
  },
  {
   "id": "nittaku-rutis-revo-j",
   "type": "blade",
   "brand": "nittaku",
   "name": "Rutis Revo J",
   "name_ja": "ルーティスレボJ",
   "source": "https://www.nittaku.com/products/rackets/post-78",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 5,
    "composition": "3 wood + 2 FE Carbon",
    "carbon": "FE Carbon",
    "weight_g": "75±",
    "thickness_mm": "5.7",
    "speed": "ミッドファースト (mid-fast)",
    "control": null,
    "class": null,
    "handles": [
     "JS"
    ],
    "style": "offense"
   }
  },
  {
   "id": "nittaku-fastarc-g-1",
   "type": "rubber",
   "brand": "nittaku",
   "name": "Fastarc G-1",
   "name_ja": "ファスターク G-1",
   "source": "https://www.nittaku.com/products/rubbers/post-3",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": true,
    "sponge_mm": [
     "中",
     "厚",
     "特厚",
     "MAX"
    ],
    "hardness": "37.5",
    "hardness_scale": "Nittaku",
    "speed": "15.00",
    "spin": "12.50",
    "control": null,
    "class": null,
    "ittf_larc": "54-015"
   }
  },
  {
   "id": "nittaku-fastarc-c-1",
   "type": "rubber",
   "brand": "nittaku",
   "name": "Fastarc C-1",
   "name_ja": "ファスターク C-1",
   "source": "https://www.nittaku.com/products/rubbers/post-4",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": true,
    "sponge_mm": [
     "中",
     "厚",
     "特厚"
    ],
    "hardness": "35.0",
    "hardness_scale": "Nittaku",
    "speed": "15.25",
    "spin": "12.25",
    "control": null,
    "class": null,
    "ittf_larc": "54-025"
   }
  },
  {
   "id": "nittaku-hurricane-pro-iii",
   "type": "rubber",
   "brand": "nittaku",
   "name": "Hurricane Pro III",
   "name_ja": "キョウヒョウ プロ3",
   "source": "https://www.nittaku.com/products/rubbers/post-22",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": true,
    "tension": null,
    "sponge_mm": [
     "中厚",
     "厚",
     "特厚"
    ],
    "hardness": "42.5",
    "hardness_scale": "Nittaku",
    "speed": "10.25",
    "spin": "15.00",
    "control": null,
    "class": null,
    "ittf_larc": null
   }
  },
  {
   "id": "nittaku-moristo-sp",
   "type": "rubber",
   "brand": "nittaku",
   "name": "Moristo SP",
   "name_ja": "モリストSP",
   "source": "https://www.nittaku.com/products/rubbers/post-30",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "short_pips",
    "tacky": null,
    "tension": true,
    "sponge_mm": [
     "中",
     "厚",
     "特厚",
     "MAX"
    ],
    "hardness": "30.0",
    "hardness_scale": "Nittaku",
    "speed": "12.50",
    "spin": "7.50",
    "control": null,
    "class": null,
    "ittf_larc": null
   }
  },
  {
   "id": "nittaku-do-knuckle-long-1",
   "type": "rubber",
   "brand": "nittaku",
   "name": "Do Knuckle Long-1",
   "name_ja": "ドナックル粒高-1",
   "source": "https://www.nittaku.com/products/rubbers/post-67",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "long_pips",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "極薄",
     "薄"
    ],
    "hardness": "45.0",
    "hardness_scale": "Nittaku",
    "speed": "5.50",
    "spin": "5.50",
    "control": null,
    "class": null,
    "ittf_larc": "54-058"
   }
  },
  {
   "id": "nittaku-moristo-lp",
   "type": "rubber",
   "brand": "nittaku",
   "name": "Moristo LP",
   "name_ja": "モリスト LP",
   "source": "https://www.nittaku.com/products/rubbers/post-43",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "long_pips",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "極薄",
     "薄"
    ],
    "hardness": "40.0",
    "hardness_scale": "Nittaku",
    "speed": "6.50",
    "spin": "5.00",
    "control": null,
    "class": null,
    "ittf_larc": null
   }
  },
  {
   "id": "nittaku-pls-3-star-premium",
   "type": "ball",
   "brand": "nittaku",
   "name": "PLS 3-Star Premium",
   "name_ja": "プラ 3スター プレミアム",
   "source": "https://www.nittaku.com/products/balls/post-20",
   "checked_at": "2026-10-11",
   "spec": {
    "ittf_approved": true,
    "material": "plastic",
    "seam": "seamed",
    "grade": "3-star",
    "ittf_code": "ITTF-116-B-03/14"
   }
  },
  {
   "id": "nittaku-dhs-dj-3-star",
   "type": "ball",
   "brand": "nittaku",
   "name": "DHS-DJ 3-Star",
   "name_ja": "DHS-DJ 3スター",
   "source": "https://www.nittaku.com/products/balls/post-40",
   "checked_at": "2026-10-11",
   "spec": {
    "ittf_approved": true,
    "material": "plastic",
    "seam": "seamed",
    "grade": "3-star",
    "ittf_code": "ITTF-236-B-12/19-2"
   }
  },
  {
   "id": "nittaku-pls-2-star",
   "type": "ball",
   "brand": "nittaku",
   "name": "PLS 2-Star",
   "name_ja": "プラ 2スター",
   "source": "https://www.nittaku.com/products/balls/post-4",
   "checked_at": "2026-10-11",
   "spec": {
    "ittf_approved": null,
    "material": "plastic",
    "seam": null,
    "grade": "2-star (training)"
   }
  },
  {
   "id": "nittaku-hannover-25",
   "type": "table",
   "brand": "nittaku",
   "name": "Hannover-25",
   "name_ja": "ハノーバー25",
   "source": "https://www.nittaku.com/products/tables-equipments/post-118",
   "checked_at": "2026-10-11",
   "spec": {
    "category": "table",
    "ittf_approved": null,
    "note": "MDF 25mm top, separate inward-folding"
   }
  },
  {
   "id": "yasaka-sweden-extra",
   "type": "blade",
   "brand": "yasaka",
   "name": "Sweden Extra",
   "source": "https://yasakatabletennis.com/product/sweden-extra",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 5,
    "composition": "5 wood",
    "carbon": "none",
    "weight_g": "~85",
    "thickness_mm": "~5.7",
    "speed": "70",
    "control": "77",
    "class": null,
    "handles": [
     "AN",
     "FL",
     "ST",
     "PEN"
    ],
    "style": "allround"
   }
  },
  {
   "id": "yasaka-sweden-defensive",
   "type": "blade",
   "brand": "yasaka",
   "name": "Sweden Defensive",
   "source": "https://yasakatabletennis.com/product/sweden-defensive",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 5,
    "composition": "5 wood",
    "carbon": "none",
    "weight_g": "~84",
    "thickness_mm": "~5.2",
    "speed": "60",
    "control": "82",
    "class": null,
    "handles": [
     "FL",
     "ST"
    ],
    "style": "defense"
   }
  },
  {
   "id": "yasaka-myth-extra-offensive",
   "type": "blade",
   "brand": "yasaka",
   "name": "Myth Extra Offensive",
   "source": "https://yasakatabletennis.com/product/myth-extra-offensive",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 5,
    "composition": "5 wood",
    "carbon": "none",
    "weight_g": "~85",
    "thickness_mm": "~5.8",
    "speed": "81",
    "control": "75",
    "class": null,
    "handles": [
     "AN",
     "FL",
     "ST",
     "PEN"
    ],
    "style": "offense"
   }
  },
  {
   "id": "yasaka-extra-offensive-7-power",
   "type": "blade",
   "brand": "yasaka",
   "name": "Extra Offensive 7 Power",
   "source": "https://yasakatabletennis.com/product/extra-offensive-7-power",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "5 wood + 2 Carbon (inner)",
    "carbon": "Carbon",
    "weight_g": "~86",
    "thickness_mm": "~5.6",
    "speed": "88",
    "control": "70",
    "class": null,
    "handles": [
     "AN",
     "FL",
     "ST",
     "PEN"
    ],
    "style": "offense"
   }
  },
  {
   "id": "yasaka-max-carbon-3d",
   "type": "blade",
   "brand": "yasaka",
   "name": "Max Carbon 3D",
   "source": "https://yasakatabletennis.com/product/max-carbon-3d",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 9,
    "composition": "7 wood + 2 Carbon",
    "carbon": "Carbon",
    "weight_g": "~91",
    "thickness_mm": "~6.3",
    "speed": "93",
    "control": "67",
    "class": null,
    "handles": [
     "AN",
     "FL",
     "ST",
     "PEN"
    ],
    "style": "offense"
   }
  },
  {
   "id": "yasaka-rakza-7",
   "type": "rubber",
   "brand": "yasaka",
   "name": "Rakza 7",
   "source": "https://yasakatabletennis.com/product/rakza-7",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": true,
    "sponge_mm": [
     "1.8",
     "2.0",
     "MAX"
    ],
    "hardness": "~45",
    "hardness_scale": "Yasaka",
    "speed": "87",
    "spin": "88",
    "control": "63",
    "class": null,
    "ittf_larc": "83-007"
   }
  },
  {
   "id": "yasaka-rakza-z",
   "type": "rubber",
   "brand": "yasaka",
   "name": "Rakza Z",
   "source": "https://yasakatabletennis.com/product/rakza-z",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": true,
    "tension": null,
    "sponge_mm": [
     "2.0",
     "MAX"
    ],
    "hardness": "50",
    "hardness_scale": "Yasaka",
    "speed": "84",
    "spin": "92",
    "control": "63",
    "class": null,
    "ittf_larc": "83-033"
   }
  },
  {
   "id": "yasaka-mark-v",
   "type": "rubber",
   "brand": "yasaka",
   "name": "Mark V",
   "source": "https://yasakatabletennis.com/product/mark-v-3",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "1.0",
     "1.5",
     "1.8",
     "2.0",
     "MAX"
    ],
    "hardness": "~42.5",
    "hardness_scale": "Yasaka",
    "speed": "80",
    "spin": "60",
    "control": "70",
    "class": null,
    "ittf_larc": null
   }
  },
  {
   "id": "yasaka-phantom-0012",
   "type": "rubber",
   "brand": "yasaka",
   "name": "Phantom 0012",
   "source": "https://yasakatabletennis.com/product/phantom-13",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "long_pips",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "OX"
    ],
    "hardness": null,
    "hardness_scale": null,
    "speed": "45",
    "spin": "15",
    "control": "81",
    "class": null,
    "ittf_larc": null
   }
  },
  {
   "id": "yasaka-competition-plastic-ball-abs-3-star",
   "type": "ball",
   "brand": "yasaka",
   "name": "Competition plastic ball ABS, 3-star",
   "source": "https://yasakatabletennis.com/product/competition-plastic-ball-abs-3-star-2",
   "checked_at": "2026-10-11",
   "spec": {
    "ittf_approved": null,
    "material": "ABS plastic",
    "seam": null,
    "grade": "3-star"
   }
  },
  {
   "id": "yasaka-super-x-40-plus-ball",
   "type": "ball",
   "brand": "yasaka",
   "name": "Super X 40+ ball",
   "source": "https://yasakatabletennis.com/product/super-x-40-ball-2",
   "checked_at": "2026-10-11",
   "spec": {
    "ittf_approved": null,
    "material": "plastic (non-celluloid)",
    "seam": null,
    "grade": "training"
   }
  },
  {
   "id": "yasaka-table-progress-roller-competition",
   "type": "table",
   "brand": "yasaka",
   "name": "Table - Progress Roller Competition",
   "source": "https://yasakatabletennis.com/product/table-progress-roller-competition",
   "checked_at": "2026-10-11",
   "spec": {
    "category": "table",
    "ittf_approved": true,
    "note": "25mm chipboard top"
   }
  },
  {
   "id": "yasaka-shoe-jet-impact-neo",
   "type": "shoes",
   "brand": "yasaka",
   "name": "Shoe Jet Impact Neo",
   "source": "https://yasakatabletennis.com/product/shoe-jet-impact-neo-2",
   "checked_at": "2026-10-11",
   "spec": {
    "note": "Phylon/rubber outsole, sizes 36–46"
   }
  },
  {
   "id": "yasaka-edge-tape-10-12mm",
   "type": "accessory",
   "brand": "yasaka",
   "name": "Edge tape 10/12mm",
   "source": "https://yasakatabletennis.com/product/edge-tape-10-12mm",
   "checked_at": "2026-10-11",
   "spec": {
    "category": "edge_tape",
    "note": "10mm or 12mm, 5m/50m"
   }
  },
  {
   "id": "yasaka-rubber-cleaner-125ml",
   "type": "accessory",
   "brand": "yasaka",
   "name": "Rubber cleaner - 125ml",
   "source": "https://yasakatabletennis.com/product/rubber-cleaner-125ml-126",
   "checked_at": "2026-10-11",
   "spec": {
    "category": "cleaner",
    "note": "125ml pump spray, VOC free"
   }
  },
  {
   "id": "victas-koki-niwa-wood",
   "type": "blade",
   "brand": "victas",
   "name": "Koki Niwa Wood",
   "name_ja": "丹羽孝希ウッド",
   "source": "https://www.victas.com/products/detail.html?id=11",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "7 wood",
    "carbon": "none",
    "weight_g": "90±",
    "thickness_mm": "6.5",
    "speed": null,
    "control": null,
    "class": "OFF+",
    "handles": [
     "FL",
     "ST"
    ],
    "style": "offense"
   }
  },
  {
   "id": "victas-koki-niwa-zc",
   "type": "blade",
   "brand": "victas",
   "name": "Koki Niwa ZC",
   "name_ja": "丹羽孝希 ZC",
   "source": "https://www.victas.com/products/detail.html?id=9",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "5 wood + 2 Z Carbon",
    "carbon": "Z Carbon",
    "weight_g": "89±",
    "thickness_mm": "6.0",
    "speed": null,
    "control": null,
    "class": "OFF+",
    "handles": [
     "FL",
     "ST"
    ],
    "style": "offense"
   }
  },
  {
   "id": "victas-koji-matsushita",
   "type": "blade",
   "brand": "victas",
   "name": "Koji Matsushita",
   "name_ja": "松下浩二",
   "source": "https://www.victas.com/products/detail.html?id=75",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 5,
    "composition": "5 wood",
    "carbon": "none",
    "weight_g": "87±",
    "thickness_mm": "5.4",
    "speed": null,
    "control": null,
    "class": "DEF",
    "handles": [
     "FL",
     "ST"
    ],
    "style": "defense"
   }
  },
  {
   "id": "victas-swat",
   "type": "blade",
   "brand": "victas",
   "name": "Swat",
   "name_ja": "スワット",
   "source": "https://www.victas.com/products/detail.html?id=15",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "7 wood",
    "carbon": "none",
    "weight_g": "85±",
    "thickness_mm": "6.0",
    "speed": null,
    "control": null,
    "class": "OFF",
    "handles": [
     "FL",
     "ST",
     "SLIM"
    ],
    "style": "offense"
   }
  },
  {
   "id": "victas-fire-fall-ac",
   "type": "blade",
   "brand": "victas",
   "name": "Fire Fall AC",
   "name_ja": "ファイヤーフォール AC",
   "source": "https://www.victas.com/products/detail.html?id=6",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "5 wood + 2 Aramid Carbon",
    "carbon": "Aramid Carbon",
    "weight_g": "88±",
    "thickness_mm": "6.6",
    "speed": null,
    "control": null,
    "class": "OFF+",
    "handles": [
     "FL",
     "ST"
    ],
    "style": "offense"
   }
  },
  {
   "id": "victas-v-15-extra",
   "type": "rubber",
   "brand": "victas",
   "name": "V > 15 Extra",
   "name_ja": "V>15 エキストラ",
   "source": "https://www.victas.com/products/detail.html?id=781",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": true,
    "sponge_mm": [
     "MAX",
     "2.0"
    ],
    "hardness": "47.5±3",
    "hardness_scale": "VICTAS",
    "speed": null,
    "spin": null,
    "control": null,
    "class": null,
    "ittf_larc": "117-011"
   }
  },
  {
   "id": "victas-v-22-double-extra",
   "type": "rubber",
   "brand": "victas",
   "name": "V > 22 Double Extra",
   "name_ja": "V>22 ダブルエキストラ",
   "source": "https://www.victas.com/products/detail.html?id=795",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": true,
    "sponge_mm": [
     "MAX",
     "2.0"
    ],
    "hardness": "50.0±3",
    "hardness_scale": "VICTAS",
    "speed": null,
    "spin": null,
    "control": null,
    "class": null,
    "ittf_larc": "117-050"
   }
  },
  {
   "id": "victas-v-15-sticky",
   "type": "rubber",
   "brand": "victas",
   "name": "V > 15 Sticky",
   "name_ja": "V>15 スティッキー",
   "source": "https://www.victas.com/products/detail.html?id=764",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": true,
    "tension": true,
    "sponge_mm": [
     "2.0",
     "MAX"
    ],
    "hardness": "52.5±3",
    "hardness_scale": "VICTAS",
    "speed": null,
    "spin": null,
    "control": null,
    "class": null,
    "ittf_larc": "117-048"
   }
  },
  {
   "id": "victas-spectol-s1",
   "type": "rubber",
   "brand": "victas",
   "name": "Spectol S1",
   "name_ja": "スペクトル S1",
   "source": "https://www.victas.com/products/detail.html?id=68",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "short_pips",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "MAX",
     "2.0",
     "1.6",
     "1.3"
    ],
    "hardness": "35.0±3",
    "hardness_scale": "VICTAS",
    "speed": null,
    "spin": null,
    "control": null,
    "class": null,
    "ittf_larc": "117-032"
   }
  },
  {
   "id": "victas-curl-p1v",
   "type": "rubber",
   "brand": "victas",
   "name": "Curl P1V",
   "name_ja": "カール P1V",
   "source": "https://www.victas.com/products/detail.html?id=789",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "long_pips",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "1.5",
     "1.0",
     "0.5",
     "OX"
    ],
    "hardness": "55.0±3",
    "hardness_scale": "VICTAS",
    "speed": null,
    "spin": null,
    "control": null,
    "class": null,
    "ittf_larc": "117-038"
   }
  },
  {
   "id": "victas-curl-p3-alpha-v",
   "type": "rubber",
   "brand": "victas",
   "name": "Curl P3αV",
   "name_ja": "カール P3αV",
   "source": "https://www.victas.com/products/detail.html?id=792",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "long_pips",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "1.5",
     "1.0",
     "0.5",
     "OX"
    ],
    "hardness": "55.0±3",
    "hardness_scale": "VICTAS",
    "speed": null,
    "spin": null,
    "control": null,
    "class": null,
    "ittf_larc": "117-041"
   }
  },
  {
   "id": "victas-vp40-plus-3-star",
   "type": "ball",
   "brand": "victas",
   "name": "VP40+ 3-Star",
   "name_ja": "VP40+ 3スター 3個入",
   "source": "https://www.victas.com/products/detail.html?id=131",
   "checked_at": "2026-10-11",
   "spec": {
    "ittf_approved": true,
    "material": null,
    "seam": "seamed",
    "grade": "3-star",
    "ittf_code": "ITTF-241-B-05/20"
   }
  },
  {
   "id": "victas-triunforce-v",
   "type": "shoes",
   "brand": "victas",
   "name": "Triunforce V",
   "name_ja": "トライアンフォースV",
   "source": "https://www.victas.com/products/detail.html?id=817",
   "checked_at": "2026-10-11",
   "spec": {
    "note": "sizes 22.5–28.5cm, removable insole"
   }
  },
  {
   "id": "victas-vu-25n",
   "type": "table",
   "brand": "victas",
   "name": "VU-25N",
   "source": "https://www.victas.com/products/detail.html?id=758",
   "checked_at": "2026-10-11",
   "spec": {
    "category": "table",
    "ittf_approved": true,
    "note": "MDF 25mm top, one-piece inward-folding"
   }
  },
  {
   "id": "victas-v-rc513",
   "type": "accessory",
   "brand": "victas",
   "name": "V-RC513",
   "source": "https://www.victas.com/products/detail.html?id=816",
   "checked_at": "2026-10-11",
   "spec": {
    "category": "case",
    "note": "EVA hard case, W17.5×H28×D5cm"
   }
  },
  {
   "id": "victas-rubber-clean-v",
   "type": "accessory",
   "brand": "victas",
   "name": "Rubber Clean V",
   "name_ja": "ラバークリーンV",
   "source": "https://www.victas.com/products/detail.html?id=169",
   "checked_at": "2026-10-11",
   "spec": {
    "category": "cleaner",
    "note": "round cleaning sponge for inverted rubber"
   }
  },
  {
   "id": "victas-tough-guard-tape",
   "type": "accessory",
   "brand": "victas",
   "name": "Tough Guard Tape",
   "name_ja": "タフガードテープ",
   "source": "https://www.victas.com/products/detail.html?id=161",
   "checked_at": "2026-10-11",
   "spec": {
    "category": "edge_tape",
    "note": "10mm wide, 48cm, synthetic leather"
   }
  },
  {
   "id": "stiga-clipper-wood",
   "type": "blade",
   "brand": "stiga",
   "name": "Clipper Wood",
   "source": "https://www.stigasports.com/en/product/clipper-wood",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": null,
    "carbon": null,
    "weight_g": "90 +/-5",
    "thickness_mm": null,
    "speed": "8.2",
    "control": "4.9",
    "class": null,
    "handles": [
     "ST",
     "FL"
    ],
    "style": "offense"
   }
  },
  {
   "id": "stiga-clipper-cr",
   "type": "blade",
   "brand": "stiga",
   "name": "Clipper CR",
   "source": "https://www.stigasports.com/en/product/clipper-cr",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": null,
    "carbon": null,
    "weight_g": "80 - 95",
    "thickness_mm": null,
    "speed": "8.3",
    "control": "4.8",
    "class": null,
    "handles": [
     "ST",
     "FL",
     "PEN"
    ],
    "style": "offense"
   }
  },
  {
   "id": "stiga-allround-classic",
   "type": "blade",
   "brand": "stiga",
   "name": "Allround Classic",
   "source": "https://www.stigasports.com/en/product/allround-classic",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 5,
    "composition": null,
    "carbon": null,
    "weight_g": "80 +/-5",
    "thickness_mm": null,
    "speed": "4.1",
    "control": "8.8",
    "class": null,
    "handles": [
     "ST",
     "FL",
     "PEN"
    ],
    "style": "allround"
   }
  },
  {
   "id": "stiga-carbonado-45",
   "type": "blade",
   "brand": "stiga",
   "name": "Carbonado 45",
   "source": "https://www.stigasports.com/en/product/carbonado-45",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "5+2 (Outer fiber)",
    "carbon": "TeXtreme Carbon",
    "weight_g": "90 +/-5",
    "thickness_mm": null,
    "speed": "8.1",
    "control": "4.6",
    "class": null,
    "handles": [
     "ST",
     "FL",
     "PEN"
    ],
    "style": "offense"
   }
  },
  {
   "id": "stiga-dynasty-carbon",
   "type": "blade",
   "brand": "stiga",
   "name": "Dynasty Carbon",
   "source": "https://www.stigasports.com/en/product/dynasty-carbon",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "5+2 (Outer fiber)",
    "carbon": "TeXtreme+ Carbon",
    "weight_g": "90 +/-5",
    "thickness_mm": null,
    "speed": "9.3",
    "control": "3.5",
    "class": null,
    "handles": [
     "ST",
     "FL",
     "PEN"
    ],
    "style": "offense"
   }
  },
  {
   "id": "stiga-cybershape-carbon",
   "type": "blade",
   "brand": "stiga",
   "name": "CYBERSHAPE Carbon",
   "source": "https://www.stigasports.com/en/product/cybershape-carbon",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "5+2 (Close core fiber)",
    "carbon": "Carbon (CCF)",
    "weight_g": "85 +/-5",
    "thickness_mm": null,
    "speed": "9.0",
    "control": "4.4",
    "class": null,
    "handles": [
     "ST",
     "FL",
     "PEN"
    ],
    "style": "offense"
   }
  },
  {
   "id": "stiga-defensive-classic-ii",
   "type": "blade",
   "brand": "stiga",
   "name": "Defensive Classic II",
   "source": "https://www.stigasports.com/en/product/defensive-classic-ii",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 5,
    "composition": null,
    "carbon": null,
    "weight_g": "90 +-5",
    "thickness_mm": null,
    "speed": "5.7",
    "control": "9.7",
    "class": null,
    "handles": [
     "ST",
     "FL"
    ],
    "style": "defense"
   }
  },
  {
   "id": "stiga-dna-dragon-grip-55",
   "type": "rubber",
   "brand": "stiga",
   "name": "DNA Dragon Grip 55",
   "source": "https://www.stigasports.com/en/product/dna-dragon-grip-55",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": true,
    "tension": true,
    "sponge_mm": [
     "2.3"
    ],
    "hardness": "55",
    "hardness_scale": "STIGA",
    "speed": "132",
    "spin": "146",
    "control": "80",
    "class": null,
    "ittf_larc": "68-056"
   }
  },
  {
   "id": "stiga-dna-platinum-h",
   "type": "rubber",
   "brand": "stiga",
   "name": "DNA Platinum H",
   "source": "https://www.stigasports.com/en/product/dna-platinum-h",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "2.1",
     "2.2",
     "2.3"
    ],
    "hardness": "50",
    "hardness_scale": "STIGA",
    "speed": "164",
    "spin": "140",
    "control": "74",
    "class": null,
    "ittf_larc": "68-054"
   }
  },
  {
   "id": "stiga-dna-platinum-m",
   "type": "rubber",
   "brand": "stiga",
   "name": "DNA Platinum M",
   "source": "https://www.stigasports.com/en/product/dna-platinum-m",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "2.1",
     "2.2",
     "2.3"
    ],
    "hardness": "47.5",
    "hardness_scale": "STIGA",
    "speed": "160",
    "spin": "140",
    "control": "76",
    "class": null,
    "ittf_larc": "68-053"
   }
  },
  {
   "id": "stiga-mantra-pro-m",
   "type": "rubber",
   "brand": "stiga",
   "name": "Mantra Pro M",
   "source": "https://www.stigasports.com/en/product/mantra-pro-m",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "2.1"
    ],
    "hardness": "47.5",
    "hardness_scale": "STIGA",
    "speed": "148",
    "spin": "135",
    "control": "82",
    "class": null,
    "ittf_larc": "68-057"
   }
  },
  {
   "id": "stiga-perform-premium",
   "type": "ball",
   "brand": "stiga",
   "name": "Perform Premium",
   "source": "https://www.stigasports.com/en/product/ball-perform-premium-3-star-white-6-pack",
   "checked_at": "2026-10-11",
   "spec": {
    "ittf_approved": true,
    "material": "ABS plastic",
    "seam": "seamed",
    "grade": null,
    "ittf_code": "ITTF-279-B-04/25"
   }
  },
  {
   "id": "stiga-net-and-post-premium-clip-ittf-approved",
   "type": "table",
   "brand": "stiga",
   "name": "Net And Post Premium Clip ITTF Approved",
   "source": "https://www.stigasports.com/en/product/net-and-post-premium-clip-ittf-approved",
   "checked_at": "2026-10-11",
   "spec": {
    "category": "net",
    "ittf_approved": true,
    "note": "176 x 15.25cm, cotton net"
   }
  },
  {
   "id": "joola-chen-weixing",
   "type": "blade",
   "brand": "joola",
   "name": "Chen Weixing",
   "source": "https://joola.de/products/joola-holz-chen-weixing",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "5 wood + 2 Black Cloth",
    "carbon": "Black Cloth",
    "weight_g": "90",
    "thickness_mm": null,
    "speed": "4",
    "control": "9",
    "class": null,
    "handles": [
     "ST",
     "FL"
    ],
    "style": "defense"
   }
  },
  {
   "id": "joola-hugo-calderano-kl-c-inner",
   "type": "blade",
   "brand": "joola",
   "name": "Hugo Calderano KL-c Inner",
   "source": "https://joola.de/products/joola-holz-hugo-calderano-kl-c-inner",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "5 wood + 2 KL-c (inner)",
    "carbon": "KL-c (Aramid-Carbon)",
    "weight_g": "85",
    "thickness_mm": null,
    "speed": "8",
    "control": "7",
    "class": null,
    "handles": [
     "FL",
     "ST"
    ],
    "style": "offense"
   }
  },
  {
   "id": "joola-vyzaryz-freeze-hrd",
   "type": "blade",
   "brand": "joola",
   "name": "Vyzaryz Freeze HRD",
   "source": "https://joola.de/products/joola-holz-vyzaryz-freeze-hrd",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": null,
    "composition": null,
    "carbon": "ARY-c (Aramid-Carbon)",
    "weight_g": "85",
    "thickness_mm": null,
    "speed": "9",
    "control": "7",
    "class": null,
    "handles": [
     "FL",
     "ST",
     "PEN"
    ],
    "style": "offense"
   }
  },
  {
   "id": "joola-proline-aw5",
   "type": "blade",
   "brand": "joola",
   "name": "PROline AW5",
   "source": "https://joola.de/products/joola-holz-proline-aw5",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 5,
    "composition": "5 wood",
    "carbon": "none",
    "weight_g": "85",
    "thickness_mm": "6.8",
    "speed": "7",
    "control": "8",
    "class": null,
    "handles": [
     "FL",
     "ST"
    ],
    "style": "allround"
   }
  },
  {
   "id": "joola-dynaryz-agr",
   "type": "rubber",
   "brand": "joola",
   "name": "Dynaryz AGR",
   "source": "https://joola.de/products/joola-belag-dynaryz-agr",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "2.0",
     "max+"
    ],
    "hardness": "50",
    "hardness_scale": "JOOLA",
    "speed": "11",
    "spin": "10",
    "control": null,
    "class": null,
    "ittf_larc": "40-037"
   }
  },
  {
   "id": "joola-dynaryz-acc",
   "type": "rubber",
   "brand": "joola",
   "name": "Dynaryz ACC",
   "source": "https://joola.de/products/joola-belag-dynaryz-acc",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "2.0",
     "max+"
    ],
    "hardness": "47.5",
    "hardness_scale": "JOOLA",
    "speed": "10",
    "spin": "10",
    "control": null,
    "class": null,
    "ittf_larc": "40-036"
   }
  },
  {
   "id": "joola-dynaryz-cmd",
   "type": "rubber",
   "brand": "joola",
   "name": "Dynaryz CMD",
   "source": "https://joola.de/products/joola-belag-dynaryz-cmd",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "2.0",
     "max+"
    ],
    "hardness": "43",
    "hardness_scale": "JOOLA",
    "speed": "8",
    "spin": "10",
    "control": null,
    "class": null,
    "ittf_larc": "40-038"
   }
  },
  {
   "id": "joola-rhyzen-cmd",
   "type": "rubber",
   "brand": "joola",
   "name": "Rhyzen CMD",
   "source": "https://joola.de/products/joola-belag-rhyzen-cmd",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "2.0",
     "max"
    ],
    "hardness": "45",
    "hardness_scale": "JOOLA",
    "speed": "6",
    "spin": "9",
    "control": null,
    "class": null,
    "ittf_larc": "40-039"
   }
  },
  {
   "id": "joola-tango-ultra",
   "type": "rubber",
   "brand": "joola",
   "name": "Tango Ultra",
   "source": "https://joola.de/products/joola-belag-tango-ultra",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "short_pips",
    "tacky": null,
    "tension": true,
    "sponge_mm": [
     "2.0",
     "max"
    ],
    "hardness": "37.5",
    "hardness_scale": "JOOLA",
    "speed": null,
    "spin": null,
    "control": null,
    "class": null,
    "ittf_larc": null
   }
  },
  {
   "id": "joola-prime-40-plus",
   "type": "ball",
   "brand": "joola",
   "name": "Prime 40+",
   "source": "https://joola.de/products/joola-tischtennisball-prime-40",
   "checked_at": "2026-10-11",
   "spec": {
    "ittf_approved": true,
    "material": "ABS plastic",
    "seam": "seamed",
    "grade": "3-star",
    "ittf_code": "ITTF-187-B-09/17"
   }
  },
  {
   "id": "joola-flash-40-plus",
   "type": "ball",
   "brand": "joola",
   "name": "Flash 40+",
   "source": "https://joola.de/products/3er-pack-joola-tischtennisball-flash-40",
   "checked_at": "2026-10-11",
   "spec": {
    "ittf_approved": true,
    "material": null,
    "seam": "seamless",
    "grade": "3-star",
    "ittf_code": "ITTF-146-B-06/15"
   }
  },
  {
   "id": "joola-world-cup-25-s-ittf",
   "type": "table",
   "brand": "joola",
   "name": "World Cup 25-S ITTF",
   "source": "https://joola.de/products/joola-tischtennisplatte-world-cup-25-s-ittf",
   "checked_at": "2026-10-11",
   "spec": {
    "category": "table",
    "ittf_approved": true,
    "note": "25 mm MDF top, indoor"
   }
  },
  {
   "id": "joola-net-pro-tour",
   "type": "table",
   "brand": "joola",
   "name": "Net Pro Tour",
   "source": "https://joola.de/products/joola-netz-pro-tour",
   "checked_at": "2026-10-11",
   "spec": {
    "category": "net",
    "ittf_approved": true,
    "note": null
   }
  },
  {
   "id": "joola-pro-blast",
   "type": "shoes",
   "brand": "joola",
   "name": "Pro Blast",
   "source": "https://joola.de/products/joola-wettkampfschuh-pro-blast",
   "checked_at": "2026-10-11",
   "spec": {
    "note": null
   }
  },
  {
   "id": "xiom-stradivarius",
   "type": "blade",
   "brand": "xiom",
   "name": "Stradivarius",
   "source": "https://www.xiom.eu/stradivarius",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "5+2 (Tour Carbon)",
    "carbon": "Tour Carbon (Aramid Carbon)",
    "weight_g": "87",
    "thickness_mm": "5.7",
    "speed": null,
    "control": null,
    "class": "OFF",
    "handles": [
     "FL",
     "ST",
     "CS"
    ],
    "style": "offense"
   }
  },
  {
   "id": "xiom-aigis",
   "type": "blade",
   "brand": "xiom",
   "name": "Aigis",
   "source": "https://www.xiom.eu/aigis",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 5,
    "composition": "5 wood",
    "carbon": "none",
    "weight_g": "83",
    "thickness_mm": "5.5",
    "speed": null,
    "control": null,
    "class": "DEF+",
    "handles": [
     "FL",
     "ST"
    ],
    "style": "defense"
   }
  },
  {
   "id": "xiom-hugo-supreme-alx-pro",
   "type": "blade",
   "brand": "xiom",
   "name": "Hugo Supreme ALX Pro",
   "source": "https://www.xiom.eu/hugo-supreme-alx-pro",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "5+2 (outer Axylium Carbon)",
    "carbon": "Axylium Carbon",
    "weight_g": null,
    "thickness_mm": "5.8",
    "speed": null,
    "control": null,
    "class": null,
    "handles": [
     "FL",
     "ST"
    ],
    "style": null
   }
  },
  {
   "id": "xiom-artemis-alx",
   "type": "blade",
   "brand": "xiom",
   "name": "Artemis ALX",
   "source": "https://www.xiom.eu/artemis-alx",
   "checked_at": "2026-10-11",
   "spec": {
    "plies": 7,
    "composition": "5+2 (outer Axylium Carbon)",
    "carbon": "Axylium Carbon",
    "weight_g": null,
    "thickness_mm": "5.8",
    "speed": null,
    "control": null,
    "class": null,
    "handles": [
     "FL",
     "ST"
    ],
    "style": null
   }
  },
  {
   "id": "xiom-vega-pro",
   "type": "rubber",
   "brand": "xiom",
   "name": "Vega Pro",
   "source": "https://www.xiom.eu/vega-pro",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": true,
    "sponge_mm": [
     "1.8",
     "2.0",
     "MAX"
    ],
    "hardness": "47.5",
    "hardness_scale": "XIOM",
    "speed": null,
    "spin": null,
    "control": null,
    "class": null,
    "ittf_larc": "79-012"
   }
  },
  {
   "id": "xiom-vega-europe",
   "type": "rubber",
   "brand": "xiom",
   "name": "Vega Europe",
   "source": "https://www.xiom.eu/vega-euro",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": true,
    "sponge_mm": [
     "1.8",
     "2.0",
     "MAX"
    ],
    "hardness": "42.5",
    "hardness_scale": "XIOM",
    "speed": null,
    "spin": null,
    "control": null,
    "class": null,
    "ittf_larc": "79-008"
   }
  },
  {
   "id": "xiom-omega-vii-pro",
   "type": "rubber",
   "brand": "xiom",
   "name": "Omega VII Pro",
   "source": "https://www.xiom.eu/omega7-pro",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "2.0",
     "MAX"
    ],
    "hardness": "47.5",
    "hardness_scale": "XIOM",
    "speed": null,
    "spin": null,
    "control": null,
    "class": null,
    "ittf_larc": "79-056"
   }
  },
  {
   "id": "xiom-omega-vii-tour",
   "type": "rubber",
   "brand": "xiom",
   "name": "Omega VII Tour",
   "source": "https://www.xiom.eu/omega7-tour",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "2.0",
     "MAX"
    ],
    "hardness": "55",
    "hardness_scale": "XIOM",
    "speed": null,
    "spin": null,
    "control": null,
    "class": null,
    "ittf_larc": "79-059"
   }
  },
  {
   "id": "xiom-omega-vii-china-guang",
   "type": "rubber",
   "brand": "xiom",
   "name": "Omega VII China Guang",
   "source": "https://www.xiom.eu/omega7-china-guang",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": true,
    "tension": true,
    "sponge_mm": [
     "2.1"
    ],
    "hardness": "55",
    "hardness_scale": "XIOM",
    "speed": null,
    "spin": null,
    "control": null,
    "class": null,
    "ittf_larc": "79-064"
   }
  },
  {
   "id": "xiom-jekyll-and-hyde-c55-0",
   "type": "rubber",
   "brand": "xiom",
   "name": "Jekyll & Hyde C55.0",
   "source": "https://www.xiom.eu/jekyll-hyde-c55-0",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": true,
    "tension": true,
    "sponge_mm": [
     "2.1"
    ],
    "hardness": "55.0",
    "hardness_scale": "XIOM",
    "speed": null,
    "spin": null,
    "control": null,
    "class": null,
    "ittf_larc": "79-077"
   }
  },
  {
   "id": "xiom-omega-viii-pro",
   "type": "rubber",
   "brand": "xiom",
   "name": "Omega VIII Pro",
   "source": "https://www.xiom.eu/omega8-pro",
   "checked_at": "2026-10-11",
   "spec": {
    "kind": "inverted",
    "tacky": null,
    "tension": null,
    "sponge_mm": [
     "Max"
    ],
    "hardness": "47.5",
    "hardness_scale": "XIOM",
    "speed": null,
    "spin": null,
    "control": null,
    "class": null,
    "ittf_larc": "79-087"
   }
  },
  {
   "id": "xiom-powertec-ittf-seam-3",
   "type": "ball",
   "brand": "xiom",
   "name": "Powertec ITTF Seam 3*",
   "source": "https://www.xiom.eu/powertec-ittf-seam-3",
   "checked_at": "2026-10-11",
   "spec": {
    "ittf_approved": true,
    "material": "ABS plastic",
    "seam": "seamed",
    "grade": "3-star",
    "ittf_code": "ITTF-270-B-06/24"
   }
  },
  {
   "id": "cornilleau-540-ittf",
   "type": "table",
   "brand": "cornilleau",
   "name": "540 ITTF",
   "source": "https://uk.cornilleau.com/competition-tables/84-540-ittf-table.html",
   "checked_at": "2026-10-11",
   "spec": {
    "category": "table",
    "ittf_approved": true,
    "note": "22mm chipboard top, SKILTOP"
   }
  },
  {
   "id": "cornilleau-640-ittf",
   "type": "table",
   "brand": "cornilleau",
   "name": "640 ITTF",
   "source": "https://uk.cornilleau.com/competition-tables/87-640-ittf-table.html",
   "checked_at": "2026-10-11",
   "spec": {
    "category": "table",
    "ittf_approved": true,
    "note": "22mm chipboard top, EN 14468 Class A"
   }
  },
  {
   "id": "cornilleau-ittf-competition-net-and-post-set",
   "type": "table",
   "brand": "cornilleau",
   "name": "ITTF Competition Net & Post Set",
   "source": "https://uk.cornilleau.com/nets-and-posts/166-ittf-competition-net-post-set.html",
   "checked_at": "2026-10-11",
   "spec": {
    "category": "net",
    "ittf_approved": true,
    "note": "steel posts, cotton net"
   }
  },
  {
   "id": "cornilleau-table-tennis-table-cleaner",
   "type": "accessory",
   "brand": "cornilleau",
   "name": "Table Tennis Table Cleaner",
   "source": "https://uk.cornilleau.com/accessories/1995-table-tennis-table-cleaner.html",
   "checked_at": "2026-10-11",
   "spec": {
    "category": "cleaner",
    "note": "750 ML"
   }
  },
  {
   "id": "cornilleau-bat-cover",
   "type": "accessory",
   "brand": "cornilleau",
   "name": "Bat Cover",
   "source": "https://uk.cornilleau.com/bat-covers/43-bat-cover.html",
   "checked_at": "2026-10-11",
   "spec": {
    "category": "case",
    "note": "1 bat + 3 balls"
   }
  }
 ]
}
