From f4f74da1dc43833e803c735ecb9941926959ad17 Mon Sep 17 00:00:00 2001 From: Waleed Date: Wed, 17 Dec 2025 10:21:15 -0800 Subject: [PATCH] feat(i18n): update translations (#2421) Co-authored-by: icecrasher321 --- .../docs/content/docs/de/tools/servicenow.mdx | 108 ++++++++++++++++++ .../docs/content/docs/es/tools/servicenow.mdx | 107 +++++++++++++++++ .../docs/content/docs/fr/tools/servicenow.mdx | 108 ++++++++++++++++++ .../docs/content/docs/ja/tools/servicenow.mdx | 107 +++++++++++++++++ .../docs/content/docs/zh/tools/servicenow.mdx | 107 +++++++++++++++++ apps/docs/i18n.lock | 34 ++++++ 6 files changed, 571 insertions(+) create mode 100644 apps/docs/content/docs/de/tools/servicenow.mdx create mode 100644 apps/docs/content/docs/es/tools/servicenow.mdx create mode 100644 apps/docs/content/docs/fr/tools/servicenow.mdx create mode 100644 apps/docs/content/docs/ja/tools/servicenow.mdx create mode 100644 apps/docs/content/docs/zh/tools/servicenow.mdx diff --git a/apps/docs/content/docs/de/tools/servicenow.mdx b/apps/docs/content/docs/de/tools/servicenow.mdx new file mode 100644 index 000000000..b977bc4f3 --- /dev/null +++ b/apps/docs/content/docs/de/tools/servicenow.mdx @@ -0,0 +1,108 @@ +--- +title: ServiceNow +description: Erstellen, lesen, aktualisieren, löschen und Massenimport von + ServiceNow-Datensätzen +--- + +import { BlockInfoCard } from "@/components/ui/block-info-card" + + + +## Nutzungsanleitung + +Integrieren Sie ServiceNow in Ihren Workflow. Kann Datensätze in jeder ServiceNow-Tabelle erstellen, lesen, aktualisieren und löschen (Vorfälle, Aufgaben, Benutzer usw.). Unterstützt Massenimport-Operationen für Datenmigration und ETL. + +## Tools + +### `servicenow_create_record` + +Erstellen eines neuen Datensatzes in einer ServiceNow-Tabelle + +#### Eingabe + +| Parameter | Typ | Erforderlich | Beschreibung | +| --------- | ---- | -------- | ----------- | +| `instanceUrl` | string | Ja | ServiceNow-Instanz-URL \(z. B. https://instance.service-now.com\) | +| `credential` | string | Nein | ServiceNow OAuth-Anmeldeinformations-ID | +| `tableName` | string | Ja | Tabellenname \(z. B. incident, task, sys_user\) | +| `fields` | json | Ja | Felder, die für den Datensatz festgelegt werden sollen \(JSON-Objekt\) | + +#### Ausgabe + +| Parameter | Typ | Beschreibung | +| --------- | ---- | ----------- | +| `record` | json | Erstellter ServiceNow-Datensatz mit sys_id und anderen Feldern | +| `metadata` | json | Metadaten der Operation | + +### `servicenow_read_record` + +Lesen von Datensätzen aus einer ServiceNow-Tabelle + +#### Eingabe + +| Parameter | Typ | Erforderlich | Beschreibung | +| --------- | ---- | -------- | ----------- | +| `instanceUrl` | string | Nein | ServiceNow-Instanz-URL \(automatisch aus OAuth erkannt, falls nicht angegeben\) | +| `credential` | string | Nein | ServiceNow OAuth-Anmeldeinformations-ID | +| `tableName` | string | Ja | Tabellenname | +| `sysId` | string | Nein | Spezifische Datensatz-sys_id | +| `number` | string | Nein | Datensatznummer \(z. B. INC0010001\) | +| `query` | string | Nein | Kodierte Abfragezeichenfolge \(z. B. "active=true^priority=1"\) | +| `limit` | number | Nein | Maximale Anzahl der zurückzugebenden Datensätze | +| `fields` | string | Nein | Durch Kommas getrennte Liste der zurückzugebenden Felder | + +#### Ausgabe + +| Parameter | Typ | Beschreibung | +| --------- | ---- | ----------- | +| `records` | array | Array von ServiceNow-Datensätzen | +| `metadata` | json | Metadaten der Operation | + +### `servicenow_update_record` + +Einen bestehenden Datensatz in einer ServiceNow-Tabelle aktualisieren + +#### Eingabe + +| Parameter | Typ | Erforderlich | Beschreibung | +| --------- | ---- | -------- | ----------- | +| `instanceUrl` | string | Nein | ServiceNow-Instanz-URL \(wird automatisch aus OAuth erkannt, falls nicht angegeben\) | +| `credential` | string | Nein | ServiceNow-OAuth-Credential-ID | +| `tableName` | string | Ja | Tabellenname | +| `sysId` | string | Ja | Sys_id des zu aktualisierenden Datensatzes | +| `fields` | json | Ja | Zu aktualisierende Felder \(JSON-Objekt\) | + +#### Ausgabe + +| Parameter | Typ | Beschreibung | +| --------- | ---- | ----------- | +| `record` | json | Aktualisierter ServiceNow-Datensatz | +| `metadata` | json | Metadaten der Operation | + +### `servicenow_delete_record` + +Einen Datensatz aus einer ServiceNow-Tabelle löschen + +#### Eingabe + +| Parameter | Typ | Erforderlich | Beschreibung | +| --------- | ---- | -------- | ----------- | +| `instanceUrl` | string | Nein | ServiceNow-Instanz-URL \(wird automatisch aus OAuth erkannt, falls nicht angegeben\) | +| `credential` | string | Nein | ServiceNow-OAuth-Credential-ID | +| `tableName` | string | Ja | Tabellenname | +| `sysId` | string | Ja | Sys_id des zu löschenden Datensatzes | + +#### Ausgabe + +| Parameter | Typ | Beschreibung | +| --------- | ---- | ----------- | +| `success` | boolean | Ob das Löschen erfolgreich war | +| `metadata` | json | Metadaten der Operation | + +## Hinweise + +- Kategorie: `tools` +- Typ: `servicenow` diff --git a/apps/docs/content/docs/es/tools/servicenow.mdx b/apps/docs/content/docs/es/tools/servicenow.mdx new file mode 100644 index 000000000..8897344c6 --- /dev/null +++ b/apps/docs/content/docs/es/tools/servicenow.mdx @@ -0,0 +1,107 @@ +--- +title: ServiceNow +description: Crea, lee, actualiza, elimina e importa masivamente registros de ServiceNow +--- + +import { BlockInfoCard } from "@/components/ui/block-info-card" + + + +## Instrucciones de uso + +Integra ServiceNow en tu flujo de trabajo. Puede crear, leer, actualizar y eliminar registros en cualquier tabla de ServiceNow (incidentes, tareas, usuarios, etc.). Admite operaciones de importación masiva para migración de datos y ETL. + +## Herramientas + +### `servicenow_create_record` + +Crea un nuevo registro en una tabla de ServiceNow + +#### Entrada + +| Parámetro | Tipo | Requerido | Descripción | +| --------- | ---- | -------- | ----------- | +| `instanceUrl` | string | Sí | URL de la instancia de ServiceNow \(ej., https://instance.service-now.com\) | +| `credential` | string | No | ID de credencial OAuth de ServiceNow | +| `tableName` | string | Sí | Nombre de la tabla \(ej., incident, task, sys_user\) | +| `fields` | json | Sí | Campos a establecer en el registro \(objeto JSON\) | + +#### Salida + +| Parámetro | Tipo | Descripción | +| --------- | ---- | ----------- | +| `record` | json | Registro de ServiceNow creado con sys_id y otros campos | +| `metadata` | json | Metadatos de la operación | + +### `servicenow_read_record` + +Lee registros de una tabla de ServiceNow + +#### Entrada + +| Parámetro | Tipo | Requerido | Descripción | +| --------- | ---- | -------- | ----------- | +| `instanceUrl` | string | No | URL de la instancia de ServiceNow \(detectada automáticamente desde OAuth si no se proporciona\) | +| `credential` | string | No | ID de credencial OAuth de ServiceNow | +| `tableName` | string | Sí | Nombre de la tabla | +| `sysId` | string | No | sys_id específico del registro | +| `number` | string | No | Número de registro \(ej., INC0010001\) | +| `query` | string | No | Cadena de consulta codificada \(ej., "active=true^priority=1"\) | +| `limit` | number | No | Número máximo de registros a devolver | +| `fields` | string | No | Lista de campos separados por comas a devolver | + +#### Salida + +| Parámetro | Tipo | Descripción | +| --------- | ---- | ----------- | +| `records` | array | Array de registros de ServiceNow | +| `metadata` | json | Metadatos de la operación | + +### `servicenow_update_record` + +Actualizar un registro existente en una tabla de ServiceNow + +#### Entrada + +| Parámetro | Tipo | Requerido | Descripción | +| --------- | ---- | -------- | ----------- | +| `instanceUrl` | string | No | URL de la instancia de ServiceNow \(detectada automáticamente desde OAuth si no se proporciona\) | +| `credential` | string | No | ID de credencial OAuth de ServiceNow | +| `tableName` | string | Sí | Nombre de la tabla | +| `sysId` | string | Sí | sys_id del registro a actualizar | +| `fields` | json | Sí | Campos a actualizar \(objeto JSON\) | + +#### Salida + +| Parámetro | Tipo | Descripción | +| --------- | ---- | ----------- | +| `record` | json | Registro de ServiceNow actualizado | +| `metadata` | json | Metadatos de la operación | + +### `servicenow_delete_record` + +Eliminar un registro de una tabla de ServiceNow + +#### Entrada + +| Parámetro | Tipo | Requerido | Descripción | +| --------- | ---- | -------- | ----------- | +| `instanceUrl` | string | No | URL de la instancia de ServiceNow \(detectada automáticamente desde OAuth si no se proporciona\) | +| `credential` | string | No | ID de credencial OAuth de ServiceNow | +| `tableName` | string | Sí | Nombre de la tabla | +| `sysId` | string | Sí | sys_id del registro a eliminar | + +#### Salida + +| Parámetro | Tipo | Descripción | +| --------- | ---- | ----------- | +| `success` | boolean | Si la eliminación fue exitosa | +| `metadata` | json | Metadatos de la operación | + +## Notas + +- Categoría: `tools` +- Tipo: `servicenow` diff --git a/apps/docs/content/docs/fr/tools/servicenow.mdx b/apps/docs/content/docs/fr/tools/servicenow.mdx new file mode 100644 index 000000000..c32c66423 --- /dev/null +++ b/apps/docs/content/docs/fr/tools/servicenow.mdx @@ -0,0 +1,108 @@ +--- +title: ServiceNow +description: Créer, lire, mettre à jour, supprimer et importer en masse des + enregistrements ServiceNow +--- + +import { BlockInfoCard } from "@/components/ui/block-info-card" + + + +## Instructions d'utilisation + +Intégrez ServiceNow dans votre flux de travail. Permet de créer, lire, mettre à jour et supprimer des enregistrements dans n'importe quelle table ServiceNow (incidents, tâches, utilisateurs, etc.). Prend en charge les opérations d'importation en masse pour la migration de données et l'ETL. + +## Outils + +### `servicenow_create_record` + +Créer un nouvel enregistrement dans une table ServiceNow + +#### Entrée + +| Paramètre | Type | Requis | Description | +| --------- | ---- | -------- | ----------- | +| `instanceUrl` | string | Oui | URL de l'instance ServiceNow \(par exemple, https://instance.service-now.com\) | +| `credential` | string | Non | ID d'identification OAuth ServiceNow | +| `tableName` | string | Oui | Nom de la table \(par exemple, incident, task, sys_user\) | +| `fields` | json | Oui | Champs à définir sur l'enregistrement \(objet JSON\) | + +#### Sortie + +| Paramètre | Type | Description | +| --------- | ---- | ----------- | +| `record` | json | Enregistrement ServiceNow créé avec sys_id et autres champs | +| `metadata` | json | Métadonnées de l'opération | + +### `servicenow_read_record` + +Lire des enregistrements d'une table ServiceNow + +#### Entrée + +| Paramètre | Type | Requis | Description | +| --------- | ---- | -------- | ----------- | +| `instanceUrl` | string | Non | URL de l'instance ServiceNow \(détectée automatiquement depuis OAuth si non fournie\) | +| `credential` | string | Non | ID d'identification OAuth ServiceNow | +| `tableName` | string | Oui | Nom de la table | +| `sysId` | string | Non | sys_id spécifique de l'enregistrement | +| `number` | string | Non | Numéro d'enregistrement \(par exemple, INC0010001\) | +| `query` | string | Non | Chaîne de requête encodée \(par exemple, "active=true^priority=1"\) | +| `limit` | number | Non | Nombre maximum d'enregistrements à retourner | +| `fields` | string | Non | Liste de champs séparés par des virgules à retourner | + +#### Sortie + +| Paramètre | Type | Description | +| --------- | ---- | ----------- | +| `records` | array | Tableau des enregistrements ServiceNow | +| `metadata` | json | Métadonnées de l'opération | + +### `servicenow_update_record` + +Mettre à jour un enregistrement existant dans une table ServiceNow + +#### Entrée + +| Paramètre | Type | Requis | Description | +| --------- | ---- | -------- | ----------- | +| `instanceUrl` | string | Non | URL de l'instance ServiceNow (détectée automatiquement depuis OAuth si non fournie) | +| `credential` | string | Non | ID des identifiants OAuth ServiceNow | +| `tableName` | string | Oui | Nom de la table | +| `sysId` | string | Oui | sys_id de l'enregistrement à mettre à jour | +| `fields` | json | Oui | Champs à mettre à jour (objet JSON) | + +#### Sortie + +| Paramètre | Type | Description | +| --------- | ---- | ----------- | +| `record` | json | Enregistrement ServiceNow mis à jour | +| `metadata` | json | Métadonnées de l'opération | + +### `servicenow_delete_record` + +Supprimer un enregistrement d'une table ServiceNow + +#### Entrée + +| Paramètre | Type | Requis | Description | +| --------- | ---- | -------- | ----------- | +| `instanceUrl` | string | Non | URL de l'instance ServiceNow (détectée automatiquement depuis OAuth si non fournie) | +| `credential` | string | Non | ID des identifiants OAuth ServiceNow | +| `tableName` | string | Oui | Nom de la table | +| `sysId` | string | Oui | sys_id de l'enregistrement à supprimer | + +#### Sortie + +| Paramètre | Type | Description | +| --------- | ---- | ----------- | +| `success` | boolean | Indique si la suppression a réussi | +| `metadata` | json | Métadonnées de l'opération | + +## Notes + +- Catégorie : `tools` +- Type : `servicenow` diff --git a/apps/docs/content/docs/ja/tools/servicenow.mdx b/apps/docs/content/docs/ja/tools/servicenow.mdx new file mode 100644 index 000000000..49266ef90 --- /dev/null +++ b/apps/docs/content/docs/ja/tools/servicenow.mdx @@ -0,0 +1,107 @@ +--- +title: ServiceNow +description: ServiceNowレコードの作成、読み取り、更新、削除、一括インポート +--- + +import { BlockInfoCard } from "@/components/ui/block-info-card" + + + +## 使用方法 + +ServiceNowをワークフローに統合します。任意のServiceNowテーブル(インシデント、タスク、ユーザーなど)のレコードを作成、読み取り、更新、削除できます。データ移行とETLのための一括インポート操作をサポートします。 + +## ツール + +### `servicenow_create_record` + +ServiceNowテーブルに新しいレコードを作成 + +#### 入力 + +| パラメータ | 型 | 必須 | 説明 | +| --------- | ---- | -------- | ----------- | +| `instanceUrl` | string | はい | ServiceNowインスタンスURL(例:https://instance.service-now.com) | +| `credential` | string | いいえ | ServiceNow OAuth認証情報ID | +| `tableName` | string | はい | テーブル名(例:incident、task、sys_user) | +| `fields` | json | はい | レコードに設定するフィールド(JSONオブジェクト) | + +#### 出力 + +| パラメータ | 型 | 説明 | +| --------- | ---- | ----------- | +| `record` | json | sys_idおよびその他のフィールドを含む作成されたServiceNowレコード | +| `metadata` | json | 操作メタデータ | + +### `servicenow_read_record` + +ServiceNowテーブルからレコードを読み取り + +#### 入力 + +| パラメータ | 型 | 必須 | 説明 | +| --------- | ---- | -------- | ----------- | +| `instanceUrl` | string | いいえ | ServiceNowインスタンスURL(指定されていない場合はOAuthから自動検出) | +| `credential` | string | いいえ | ServiceNow OAuth認証情報ID | +| `tableName` | string | はい | テーブル名 | +| `sysId` | string | いいえ | 特定のレコードsys_id | +| `number` | string | いいえ | レコード番号(例:INC0010001) | +| `query` | string | いいえ | エンコードされたクエリ文字列(例:"active=true^priority=1") | +| `limit` | number | いいえ | 返す最大レコード数 | +| `fields` | string | いいえ | 返すフィールドのカンマ区切りリスト | + +#### 出力 + +| パラメータ | 型 | 説明 | +| --------- | ---- | ----------- | +| `records` | array | ServiceNowレコードの配列 | +| `metadata` | json | 操作メタデータ | + +### `servicenow_update_record` + +ServiceNowテーブル内の既存のレコードを更新します + +#### 入力 + +| パラメータ | 型 | 必須 | 説明 | +| --------- | ---- | -------- | ----------- | +| `instanceUrl` | string | いいえ | ServiceNowインスタンスURL(指定されていない場合はOAuthから自動検出) | +| `credential` | string | いいえ | ServiceNow OAuth認証情報ID | +| `tableName` | string | はい | テーブル名 | +| `sysId` | string | はい | 更新するレコードのsys_id | +| `fields` | json | はい | 更新するフィールド(JSONオブジェクト) | + +#### 出力 + +| パラメータ | 型 | 説明 | +| --------- | ---- | ----------- | +| `record` | json | 更新されたServiceNowレコード | +| `metadata` | json | 操作メタデータ | + +### `servicenow_delete_record` + +ServiceNowテーブルからレコードを削除します + +#### 入力 + +| パラメータ | 型 | 必須 | 説明 | +| --------- | ---- | -------- | ----------- | +| `instanceUrl` | string | いいえ | ServiceNowインスタンスURL(指定されていない場合はOAuthから自動検出) | +| `credential` | string | いいえ | ServiceNow OAuth認証情報ID | +| `tableName` | string | はい | テーブル名 | +| `sysId` | string | はい | 削除するレコードのsys_id | + +#### 出力 + +| パラメータ | 型 | 説明 | +| --------- | ---- | ----------- | +| `success` | boolean | 削除が成功したかどうか | +| `metadata` | json | 操作メタデータ | + +## 注記 + +- カテゴリー: `tools` +- タイプ: `servicenow` diff --git a/apps/docs/content/docs/zh/tools/servicenow.mdx b/apps/docs/content/docs/zh/tools/servicenow.mdx new file mode 100644 index 000000000..274470b0a --- /dev/null +++ b/apps/docs/content/docs/zh/tools/servicenow.mdx @@ -0,0 +1,107 @@ +--- +title: ServiceNow +description: 创建、读取、更新、删除及批量导入 ServiceNow 记录 +--- + +import { BlockInfoCard } from "@/components/ui/block-info-card" + + + +## 使用说明 + +将 ServiceNow 集成到您的工作流程中。可在任意 ServiceNow 表(如事件、任务、用户等)中创建、读取、更新和删除记录。支持批量导入操作,便于数据迁移和 ETL。 + +## 工具 + +### `servicenow_create_record` + +在 ServiceNow 表中创建新记录 + +#### 输入 + +| 参数 | 类型 | 必填 | 说明 | +| --------- | ---- | -------- | ----------- | +| `instanceUrl` | string | 是 | ServiceNow 实例 URL(例如:https://instance.service-now.com) | +| `credential` | string | 否 | ServiceNow OAuth 凭证 ID | +| `tableName` | string | 是 | 表名(例如:incident、task、sys_user) | +| `fields` | json | 是 | 要设置在记录上的字段(JSON 对象) | + +#### 输出 + +| 参数 | 类型 | 说明 | +| --------- | ---- | ----------- | +| `record` | json | 创建的 ServiceNow 记录,包含 sys_id 及其他字段 | +| `metadata` | json | 操作元数据 | + +### `servicenow_read_record` + +从 ServiceNow 表中读取记录 + +#### 输入 + +| 参数 | 类型 | 必填 | 说明 | +| --------- | ---- | -------- | ----------- | +| `instanceUrl` | string | 否 | ServiceNow 实例 URL(如未提供,将通过 OAuth 自动检测) | +| `credential` | string | 否 | ServiceNow OAuth 凭证 ID | +| `tableName` | string | 是 | 表名 | +| `sysId` | string | 否 | 指定记录 sys_id | +| `number` | string | 否 | 记录编号(例如:INC0010001) | +| `query` | string | 否 | 编码查询字符串(例如:"active=true^priority=1") | +| `limit` | number | 否 | 返回的最大记录数 | +| `fields` | string | 否 | 要返回的字段列表(以逗号分隔) | + +#### 输出 + +| 参数 | 类型 | 描述 | +| --------- | ---- | ----------- | +| `records` | array | ServiceNow 记录数组 | +| `metadata` | json | 操作元数据 | + +### `servicenow_update_record` + +更新 ServiceNow 表中的现有记录 + +#### 输入 + +| 参数 | 类型 | 是否必填 | 描述 | +| --------- | ---- | -------- | ----------- | +| `instanceUrl` | string | 否 | ServiceNow 实例 URL(如果未提供,将通过 OAuth 自动检测) | +| `credential` | string | 否 | ServiceNow OAuth 凭证 ID | +| `tableName` | string | 是 | 表名 | +| `sysId` | string | 是 | 要更新的记录 sys_id | +| `fields` | json | 是 | 要更新的字段(JSON 对象) | + +#### 输出 + +| 参数 | 类型 | 描述 | +| --------- | ---- | ----------- | +| `record` | json | 已更新的 ServiceNow 记录 | +| `metadata` | json | 操作元数据 | + +### `servicenow_delete_record` + +从 ServiceNow 表中删除记录 + +#### 输入 + +| 参数 | 类型 | 是否必填 | 描述 | +| --------- | ---- | -------- | ----------- | +| `instanceUrl` | string | 否 | ServiceNow 实例 URL(如果未提供,将通过 OAuth 自动检测) | +| `credential` | string | 否 | ServiceNow OAuth 凭证 ID | +| `tableName` | string | 是 | 表名 | +| `sysId` | string | 是 | 要删除的记录 sys_id | + +#### 输出 + +| 参数 | 类型 | 描述 | +| --------- | ---- | ----------- | +| `success` | boolean | 删除是否成功 | +| `metadata` | json | 操作元数据 | + +## 注意事项 + +- 分类:`tools` +- 类型:`servicenow` diff --git a/apps/docs/i18n.lock b/apps/docs/i18n.lock index bd3c2e424..df6782584 100644 --- a/apps/docs/i18n.lock +++ b/apps/docs/i18n.lock @@ -49822,3 +49822,37 @@ checksums: content/472: dbc5fceeefb3ab5fa505394becafef4e content/473: b3f310d5ef115bea5a8b75bf25d7ea9a content/474: 27c398e669b297cea076e4ce4cc0c5eb + 9a28da736b42bf8de55126d4c06b6150: + meta/title: 418d5c8a18ad73520b38765741601f32 + meta/description: 2b5a9723c7a45d2be5001d5d056b7c7b + content/0: 1b031fb0c62c46b177aeed5c3d3f8f80 + content/1: e72670f88454b5b1c955b029de5fa8b5 + content/2: 821e6394b0a953e2b0842b04ae8f3105 + content/3: 7fa671d05a60d4f25b4980405c2c7278 + content/4: 9c8aa3f09c9b2bd50ea4cdff3598ea4e + content/5: 263633aee6db9332de806ae50d87de05 + content/6: 5a7e2171e5f73fec5eae21a50e5de661 + content/7: 371d0e46b4bd2c23f559b8bc112f6955 + content/8: 10d2d4eccb4b8923f048980dc16e43e1 + content/9: bcadfc362b69078beee0088e5936c98b + content/10: d81ef802f80143282cf4e534561a9570 + content/11: 02233e6212003c1d121424cfd8b86b62 + content/12: efe2c6dd368708de68a1addbfdb11b0c + content/13: 371d0e46b4bd2c23f559b8bc112f6955 + content/14: 0f3295854b7de5dbfab1ebd2a130b498 + content/15: bcadfc362b69078beee0088e5936c98b + content/16: 953f353184dc27db1f20156db2a9ad90 + content/17: 2011e87d0555cd0ab133ef2d35e7a37b + content/18: dbf08acb413d845ec419e45b1f986bdb + content/19: 371d0e46b4bd2c23f559b8bc112f6955 + content/20: 3a8417b390ec7d3d55b1920c721e9006 + content/21: bcadfc362b69078beee0088e5936c98b + content/22: c06a5bb458242baa23d34957034c2fe7 + content/23: ff043e912417bc29ac7c64520160c07d + content/24: 9c2175ab469cb6ff9e62bc8bdcf7621d + content/25: 371d0e46b4bd2c23f559b8bc112f6955 + content/26: 67e6ba04cf67f92e714ed94e7483dec5 + content/27: bcadfc362b69078beee0088e5936c98b + content/28: fd0f38eb3fe5cf95be366a4ff6b4fb90 + content/29: b3f310d5ef115bea5a8b75bf25d7ea9a + content/30: 4a7b2c644e487f3d12b6a6b54f8c6773