Respan Dataset Explorer

Select one behavior. Every returned turn has one binary label: Present or Absent. Source: final dense boolean release.

5,167,182physical rows
86shards
0.00%qualified row coverage
0.00%qualified cell coverage
Random row JSON API

turns-00054.parquet:66596

ec60aa5f74ea5d9dafb05d94
turn 1/1gpt-4o-2024-11-20EnglishUnited States669 words
degenerate_repetitionAbsentFinal dense release
USER
    
    You are a professional essay-writing assistant tasked with generating high-quality essays based on user-provided information. Your primary responsibility is to create a coherent, well-structured, and articulate essay. Your output must adhere to the specified parameters and be formatted in **JSON** for structured and machine-readable delivery.

    ### GUIDELINES FOR ESSAY GENERATION:

    1. **Topic**:
       - Focus the essay entirely on the topic specified by the user.
       - Ensure the content remains highly relevant, insightful, and aligned with the given subject matter.

    2. **Writing Skill Level**:
       Match the writing style and complexity based on the user's specified skill level:
       - **Very Good**: Use advanced vocabulary, sophisticated sentence structure, and a formal tone. Produce polished and refined essays suitable for academic or professional contexts.
       - **Medium**: Use a balanced tone with moderate vocabulary and straightforward sentence structures. Ensure accessibility while maintaining professionalism.
       - **Poor**: Use simple vocabulary, short sentences, and a conversational tone. Avoid advanced phrases or complex structures, focusing instead on clarity and readability.
       - **Very Poor**: Use the most simple vocabulary, short sentences, and wrong grammars. Don't use difficult or complex words. Make few simple spelling and grammar mistakes.

    3. **Humanize Level (Percentage)**:
       Adjust the essay style according to the specified "humanize level":
       - **100% Humanized**: Write the essay with a natural, human-like tone. Mimic human thought processes, include conversational nuances, and allow slight stylistic imperfections to enhance relatability.
       - **50% Humanized**: Strike a balance between technical precision and human-like phrasing. Ensure the essay feels natural without losing professionalism.
       - **0% Humanized**: Write with perfect formality and technical precision, avoiding conversational elements. The essay should read as highly structured and machine-like.

    4. **User-Provided Information**:
       - Incorporate all specific details, arguments, or points provided by the user into the essay.
       - Ensure that these inputs are logically and meaningfully integrated.
       - Do not omit or misinterpret any user-provided information.

    5. **Essay Structure**:
       The essay must follow a traditional structure:
       - **Introduction**: Provide a brief overview of the topic, including a thesis statement or central argument.
       - **Body Paragraphs**: Expand on the main ideas with supporting arguments, examples, or evidence. Each paragraph should focus on a single idea.
       - **Conclusion**: Summarize the key points and provide a final, cohesive statement that ties the essay together.

    6. **JSON Output Format**:
       Generate the essay output in strict JSON format (but without ```json, generate only the JSON content) following the structure below:
       {
         "topic": "Topic provided by the user",
         "writing_skill": "Skill level (Very Good, Medium, Poor)",
         "humanize_level": "Humanization percentage (e.g., 100%)",
         "writer": "Writer's name (if provided by the user, otherwise null)",
         "content": {
           "introduction": "Introduction paragraph of the essay",
           "body": [
             "First body paragraph",
             "Second body paragraph",
             "...additional body paragraphs as needed"
           ],
           "conclusion": "Conclusion paragraph of the essay"
         }
       }
    

    USER)
    {
      "topic": "Huggingface",
      "writing_skill": "Very Poor",
      "humanize_level": "100",
      "writer": "",
      "information": ["AI models", "Dataset", "Spaces"]
    }
    
ASSISTANT
{
  "topic": "Huggingface",
  "writing_skill": "Very Poor",
  "humanize_level": "100",
  "writer": null,
  "content": {
    "introduction": "Huggingface is a thing everyone talks about in AI. It is famous for making smart AI models. People use it also for dataset and spaces. In this essay, I will talk of models, dataset, and Spaces.",
    "body": [
      "Huggingface is good at AI models. They have AI that can listen and talk and answer. They are trained for it by people. Super smart models like the GPT or BERT are very much liked. So this is why people like Huggingface.",
      "Dataset is next. Huggingface use big big datasets for AI training. Dataset means a lot of data in one place like text and pictures. More data makes AI clever. Huggingface have many dataset for peoples to use.",
      "Spaces is next thing. Huggingface give Spaces where people put their work on. See other people’s AI and make own AI is fun and sharing. This helps people in making and testing cool tools!"
    ],
    "conclusion": "Huggingface is liked because of models, dataset, and Spaces. Models do cool AI things. Dataset teaches them. Spaces let sharing. Huggingface is nice for cool AI stuff. That is it."
  }
}

turns-00054.parquet:66597

37ef95e290a47ec2ea87cc5e
turn 1/1gpt-4o-mini-2024-07-18EnglishUnited Kingdom845 words
degenerate_repetitionAbsentFinal dense release
USER
You are a database expert and SQL optimizer. You will be given a SQL rewrite rule, an original query and its rewritten variant. The rewritten query improves performance upon the original while maintaining equivalence by following the given rewrite rule. Your task is to create a new pair of original and rewritten queries that adhere to the provided rewrite rule.

[REWRITE RULE]```If a query produces a single row output using multiple subqueries that each reference the same base table, rewrite the query to scan the base table only once. Use CASE statements within each subquery to preserve equivalence, and move necessary WHERE clause filters from the subqueries into the main query.```

[ORIGINAL QUERY]```select case when (select count(*) from store_sales where ss_quantity between 1 and 20) > 1071 then (select avg(ss_ext_tax) from store_sales where ss_quantity between 1 and 20) else (select avg(ss_net_paid_inc_tax) from store_sales where ss_quantity between 1 and 20) end bucket1,case when (select count(*) from store_sales where ss_quantity between 21 and 40) > 39161 then (select avg(ss_ext_tax) from store_sales where ss_quantity between 21 and 40) else (select avg(ss_net_paid_inc_tax) from store_sales where ss_quantity between 21 and 40) end bucket2,case when (select count(*) from store_sales where ss_quantity between 41 and 60) > 29434 then (select avg(ss_ext_tax) from store_sales where ss_quantity between 41 and 60) else (select avg(ss_net_paid_inc_tax) from store_sales where ss_quantity between 41 and 60) end bucket3,case when (select count(*) from store_sales where ss_quantity between 61 and 80) > 6568 then (select avg(ss_ext_tax) from store_sales where ss_quantity between 61 and 80) else (select avg(ss_net_paid_inc_tax) from store_sales where ss_quantity between 61 and 80) end bucket4,case when (select count(*) from store_sales where ss_quantity between 81 and 100) > 21216 then (select avg(ss_ext_tax) from store_sales where ss_quantity between 81 and 100) else (select avg(ss_net_paid_inc_tax) from store_sales where ss_quantity between 81 and 100) end bucket5 from reason where r_reason_sk = 1 ;```

[REWRITTEN QUERY]```select case when count(case when ss_quantity between 1 and 20 then 1 end) > 1071 then avg(case when ss_quantity between 1 and 20 then ss_ext_tax end) else avg(case when ss_quantity between 1 and 20 then ss_net_paid_inc_tax end) end as bucket1, case when count(case when ss_quantity between 21 and 40 then 1 end) > 39161 then avg(case when ss_quantity between 21 and 40 then ss_ext_tax end) else avg(case when ss_quantity between 21 and 40 then ss_net_paid_inc_tax end) end as bucket2, case when count(case when ss_quantity between 41 and 60 then 1 end) > 29434 then avg(case when ss_quantity between 41 and 60 then ss_ext_tax end) else avg(case when ss_quantity between 41 and 60 then ss_net_paid_inc_tax end) end as bucket3, case when count(case when ss_quantity between 61 and 80 then 1 end) > 6568 then avg(case when ss_quantity between 61 and 80 then ss_ext_tax end) else avg(case when ss_quantity between 61 and 80 then ss_net_paid_inc_tax end) end as bucket4, case when count(case when ss_quantity between 81 and 100 then 1 end) > 21216 then avg(case when ss_quantity between 81 and 100 then ss_ext_tax end) else avg(case when ss_quantity between 81 and 100 then ss_net_paid_inc_tax end) end as bucket5 from store_sales where exists (select 1 from reason where r_reason_sk = 1);```

[EXPLANATION] The rewritten query scans the employees table only once and uses CASE statements to conditionally calculate the average salary for each department. For efficiency there is only a single condition within each CASE statement in the rewritten query.

Now, consider the TPC-DS schema and create a new original and equivalent rewritten query pair such that the rewrite operation adheres to the provided SQL rewrite rule.Keep the following points in mind while creating the new query pair:
1. The original query must make use of the following fact tables: ['catalog_sales']. Below is the join graph for these fact tables:
    ['catalog_sales(cs_ship_addr_sk) references customer_address(ca_address_sk);', 'catalog_sales(cs_bill_addr_sk) references customer_address(ca_address_sk);', 'catalog_sales(cs_ship_hdemo_sk) references household_demographics(hd_demo_sk);']
3. The original query must employ 0 joins.
4. The original query must employ the following aggregate functions: ['max'].
5. The original query must employ the following operators in its WHERE clause: [].
6. The rewritten query must be equivalent to the original query, and must follow the given rewrite rule. Enclose the original and rewritten queries within ``` and ```.
ASSISTANT
Here is a new pair of original and rewritten queries that adheres to the provided rewrite rule:

[ORIGINAL QUERY]```select max(case when (select count(*) from catalog_sales where cs_ship_addr_sk = ca_address_sk) > 1000 then cs_net_paid_inc_tax end) as max_net_paid_tax_ship, max(case when (select count(*) from catalog_sales where cs_bill_addr_sk = ca_address_sk) > 500 then cs_net_paid_inc_tax end) as max_net_paid_tax_bill from customer_address where ca_address_sk = 1;```

[REWRITTEN QUERY]```select max(case when count(case when cs_ship_addr_sk = ca_address_sk then 1 end) > 1000 then cs_net_paid_inc_tax end) as max_net_paid_tax_ship, max(case when count(case when cs_bill_addr_sk = ca_address_sk then 1 end) > 500 then cs_net_paid_inc_tax end) as max_net_paid_tax_bill from catalog_sales, customer_address where ca_address_sk = 1;```

In this example, the original query makes multiple subqueries referencing the `catalog_sales` table to filter and aggregate data based on two different address types (shipping and billing). The rewritten query combines these subqueries into a single scan of the `catalog_sales` table using `CASE` statements while applying the necessary filters to maintain the same logic, as per the rewrite rule.

turns-00054.parquet:66598

331f4f0392eb41d84529491e
turn 1/3gpt-4o-2024-11-20RussianRussia509 words
degenerate_repetitionAbsentFinal dense release
USER
Как построить cfg функции
ASSISTANT
Контрольно-потоковый граф (CFG, Control Flow Graph) используется для моделирования различных путей выполнения программы. Для его создания нужно выполнить несколько шагов. Я объясню процесс построения CFG для функции.

### 1. **Подготовка исходного кода функции**
   Вы должны иметь функцию, которую хотите построить, например:

   ```python
   def example_function(x):
       if x > 0:
           print("Positive")
           x += 1
       else:
           print("Non-positive")
           x -= 1
       return x
   ```

   Это будет наша рабочая функция.

---

### 2. **Разбиение на базовые блоки**
   Базовый блок — это последовательность инструкций, которая:
   - Выполняется линейно (без ветвлений внутри);
   - Начинается либо с точки входа, либо с инструкции после ветвления;
   - Заканчивается либо перед инструкцией управления потоком, либо перед точкой разделения потока.

   Для примера выше можно выделить базовые блоки:
   - **B1:** `if x > 0`
   - **B2:** ветвь `x > 0`: `print("Positive")`, `x += 1`
   - **B3:** ветвь `else`: `print("Non-positive")`, `x -= 1`
   - **B4:** `return x`

---

### 3. **Извлечение связей между блоками**
   На данном этапе мы строим граф связей. В нашем случае:
   - Из блока `B1`:
     - При истинности условия переход в `B2`;
     - При ложности условия переход в `B3`.
   - `B2` и `B3` соединяются с `B4`.

---

### 4. **Построение графа**
   Теперь можно представить граф в виде визуализации. Обычно для этого используются нотации **узлов** (блоки) и **ориентированных дуг** (переходы).

   - Узлы: представляют базовые блоки (их содержание можно написать внутри).
   - Ребра: показывают возможные переходы между блоками.

Пример графа для `example_function` выглядит так:

- **B1**: узел с условием `if x > 0`.
- Узлы **B2** и **B3**: действия в ветвях и переходы в зависимости от результата.
- **B4** возвращает значение.

```
       B1: if x > 0
        /       \
      Yes       No
      /           \
   B2:            B3:
   print()        print()
   x += 1         x -= 1
      \           /
       \         /
         ---> B4: return x
```

---

### 5. **Инструменты для построения**
   В зависимости от ваших предпочтений, можно построить граф программно или вручную:
   - **Python**: можно использовать библиотеки типа `networkx` для автоматического построения CFG.
   - **Ручной метод**: можно нарисовать граф вручную на бумаге или в визуализаторах, таких как Draw.io или Google Drawings.

### Пример с использованием библиотеки `networkx` (Python):
```python
import networkx as nx
import matplotlib.pyplot as plt

# Создаем граф
G = nx.DiGraph()

# Определяем узлы
G.add_node("B1: if x > 0")
G.add_node("B2: Positive branch: x += 1")
G.add_node("B3: Non-positive branch: x -= 1")
G.add_node("B4: return x")

# Определяем переходы
G.add_edge("B1: if x > 0", "B2: Positive branch: x += 1", label="Yes")
G.add_edge("B1: if x > 0", "B3: Non-positive branch: x -= 1", label="No")
G.add_edge("B2: Positive branch: x += 1", "B4: return x")
G.add_edge("B3: Non-positive branch: x -= 1", "B4: return x")

# Отрисовка
plt.figure(figsize=(8, 6))
pos = nx.spring_layout(G)  # Позиция узлов
nx.draw(G, pos, with_labels=True, node_size=3000, node_color="lightblue", font_size=10, font_weight="bold")
nx.draw_networkx_edge_labels(G, pos, edge_labels=nx.get_edge_attributes(G, 'label'))
plt.show()
```

---

### 6. **Обработка сложных конструкций**
Если программа сложнее и содержит такие элементы, как циклы, вложенные условия и т.д., их нужно последовательно разделять на базовые блоки и выстраивать связи на основе:
   - Условной логики;
   - Переходов в начале/конце циклов;
   - Обработки исключений.

Если есть конкретная функция, с которой вы работаете, дайте пример — я помогу построить CFG!

turns-00054.parquet:66599

f62457f49091cbbc9289c42f
turn 2/3gpt-4o-2024-11-20RussianRussia494 words
degenerate_repetitionAbsentFinal dense release
USER
В radare2
ASSISTANT
Построение контрольно-потокового графа (CFG) функции в Radare2 — это одна из стандартных возможностей этого инструмента. Radare2 автоматически анализирует код и строит граф потоков управления. Обычно это делается с использованием графического или текстового режима. Вот подробное руководство:

---

### **1. Запуск Radare2 и загрузка бинарного файла**

Сначала нужно загрузить ваш бинарный файл в Radare2:

```bash
r2 <имя_файла>
```

Пример:
```bash
r2 example.bin
```

---

### **2. Подготовка для анализа**

Перед построением графа нужно проанализировать бинарный файл и собрать информацию об исполняемых функциях и их взаимосвязях.

#### Команды для анализа кода:
- Запустить полный анализ файла:
  ```bash
  aaa
  ```
  Это делает полный анализ бинарного файла, включая инструкции, функции и точки управления.

- Альтернативно, вы можете только исследовать часть бинарного файла:
  ```bash
  aaaa
  ```
  Это производит более глубокий анализ.

---

### **3. Переход к нужной функции**

Чтобы построить граф для определенной функции, сначала нужно выбрать её. Например:
1. Вывести список всех функций:
   ```bash
   afl
   ```
   Эта команда выдаст список всех обнаруженных функций с адресами их начала.

2. Перейти в нужную функцию по адресу:
   ```bash
   s <адрес>
   ```
   Например, если адрес функции `main` равен `0x00400510`:
   ```bash
   s 0x00400510
   ```

---

### **4. Переход в графический режим**

Для графического представления используйте **команду `VV` (заглавные V дважды)**:
```bash
VV
```

#### В графическом режиме вы увидите:
- Узлы, представляющие базовые блоки функции.
- Стрелки, указывающие переходы между блоками:
  - Прямая стрелка — это переход при выполнении условия (например, `if`).
  - Пунктирная стрелка — это переход в случае невыполнения условия.

#### Навигация:
- Используйте **стрелки на клавиатуре** для перемещения по графу.
- Для выхода из графического режима нажмите **`q`**.

---

### **5. Альтернативные графические представления**

Если `VV` не подходит, можно использовать команду `agf` для текстового отображения графа CFG:
```bash
agf
```

Эта команда отображает граф потока управления для текущей функции в псевдографике (в текстовом виде).

---

### **6. Построение графа через r2ghidra или Cutter**

Если вы хотите получить более удобное визуальное представление или работать в графическом интерфейсе, есть следующие инструменты:
1. **Cutter**: Это GUI надстройка над Radare2, помогающая визуализировать CFG.
   - Установите Cutter: [https://cutter.re/](https://cutter.re/).
   - Откройте бинарный файл в Cutter, и в разделе "Graph View" вы сможете увидеть граф функций.

2. **r2ghidra**: Плагин для интеграции Radare2 с Ghidra. Установить:
   ```bash
   r2pm install r2ghidra
   ```
   Затем используйте команды Ghidra для анализа и визуализации графов.

---

### **Пример использования**

#### 1. Загрузите бинарный файл:
```bash
r2 example.bin
```

#### 2. Сделайте полный анализ:
```bash
aaa
```

#### 3. Перейдите к началу функции (например, адрес `0x00400510`):
```bash
s 0x00400510
```

#### 4. Постройте граф:
- Просмотр в графическом режиме:
  ```bash
  VV
  ```

- Просмотр в псевдографике:
  ```bash
  agf
  ```

---

### **7. Экспорт графа**

Если вам нужно экспортировать граф:
1. **В формате JSON**:
   ```bash
   agfj > graph.json
   ```

2. **В виде изображения (например, PNG)**:
   Используйте `dot` для создания изображения:
   ```bash
   agfd > graph.dot
   dot -Tpng graph.dot -o graph.png
   ```

---

Таким образом, Radare2 предоставляет гибкие средства для работы с CFG, как для анализа в терминале, так и для экспорта в графическую форму.

turns-00054.parquet:66600

2ac4b53f3bf990ce9f23437c
turn 3/3gpt-4o-2024-11-20RussianRussia496 words
degenerate_repetitionAbsentFinal dense release
USER
Пример вывода agfj
ASSISTANT
Команда `agfj` в Radare2 выводит контрольно-потоковый граф (CFG) текущей функции в **формате JSON**. Это удобный формат для программного анализа и автоматической обработки данных о графе.

В выводе JSON вы найдете описание узлов и связей между ними. Пример вывода:

---

### Пример вывода команды `agfj`

```json
[
  {
    "name": "main",
    "offset": 4195696,
    "ninstr": 13,
    "nblocks": 4,
    "size": 75,
    "edges": 4,
    "edges_explicit": 4,
    "callrefs": [
      {
        "addr": 4195664,
        "type": "CALL",
        "at": 4195712
      }
    ],
    "blocks": [
      {
        "offset": 4195696,
        "size": 22,
        "jump": 4195722,
        "fail": 4195718,
        "ops": [
          {
            "offset": 4195696,
            "esil": "rbp,8,=[8],rsp,8,-,rsp,=",
            "refptr": false,
            "fcn_addr": 4195696,
            "fcn_last": 4195770,
            "size": 4,
            "opcode": "push rbp",
            "disasm": "push rbp",
            "bytes": "55",
            "family": "cpu",
            "type": "push",
            "type_num": 8,
            "type2_num": 0,
            "flags": [
              "entry0"
            ]
          },
          {
            "offset": 4195700,
            "esil": "rsp,rbp,=[8],rsp,8,+,rsp,=",
            "refptr": false,
            "fcn_addr": 4195696,
            "fcn_last": 4195770,
            "size": 4,
            "opcode": "mov rbp, rsp",
            "disasm": "mov rbp, rsp",
            "bytes": "4889e5",
            "family": "cpu",
            "type": "mov",
            "type_num": 9,
            "type2_num": 0
          }
        ]
      },
      {
        "offset": 4195718,
        "size": 9,
        "jump": 4195728,
        "fail": 4195722,
        "ops": []
      },
      {
        "offset": 4195728,
        "size": 18,
        "ops": []
      }
    ]
  }
]
```

---

### Пояснения к полям JSON:

1. **Корневые поля для функции:**
   - `"name"` — имя функции, для которой построен CFG (например, `main`).
   - `"offset"` — начальный адрес функции в памяти.
   - `"ninstr"` — количество инструкций в функции.
   - `"nblocks"` — количество базовых блоков в графе.
   - `"size"` — общий размер функции в байтах.
   - `"edges"` — количество переходов между блоками графа.

2. **Список вызовов (если есть):**
   - `"callrefs"` — список вызовов других функций:
     - `"addr"` — адрес вызываемой функции.
     - `"type"` — тип ссылки (например, `CALL`).
     - `"at"` — адрес инструкции вызова в текущей функции.

3. **Базовые блоки (поле `"blocks"`):**
   Это массив всех базовых блоков функции. Каждый блок содержит:
   - `"offset"` — начальный адрес блока.
   - `"size"` — размер блока в байтах.
   - `"jump"` — адрес перехода в случае выполнения команды перехода (например, `jmp` или `je`).
   - `"fail"` — адрес продолжения выполнения при неудачном условии (например, для ветвления).
   - `"ops"` — массив инструкций в блоке:
     - `"offset"` — адрес инструкции.
     - `"opcode"` — текстовое описание команды (например, `mov rbp, rsp`).
     - `"bytes"` — байтовое представление инструкции.
     - `"type"` — тип инструкции (например, `mov`, `jmp`, `call` и т.д.).

4. **Переходы между блоками:**
Важны значения `jump` и `fail`, которые соответствуют:
   - `"jump"` — следующий блок, если условие выполнено (например, результат операции `cmp`).
   - `"fail"` — следующий блок, если условие **не выполнено** (альтернативный путь).

---

### Как это связано с CFG?
- Каждый блок в массиве `"blocks"` — это отдельный узел графа.
- `"jump"` и `"fail"` указывают на соседние узлы, которые связываются через условные или безусловные переходы.

### Использование в других инструментах
Вы можете сохранить вывод `agfj` в файл и использовать его для построения визуального CFG:
```bash
agfj > graph.json
```
Этот файл можно обработать с помощью Python, Graphviz или других инструментов визуализации.

---

Если у вас есть конкретная задача с графом из Radare2 или вы хотите построить граф на его основе, дайте знать — я могу помочь дальше!

turns-00054.parquet:66601

3101a6d4176e06dd74422e42
turn 1/1gpt-4o-mini-2024-07-18EnglishUnited States930 words
degenerate_repetitionAbsentFinal dense release
USER
You are a database expert and SQL optimizer. You will be given a SQL rewrite rule, an original query and its rewritten variant. The rewritten query improves performance upon the original while maintaining equivalence by following the given rewrite rule. Your task is to create a new pair of original and rewritten queries that adhere to the provided rewrite rule.

[REWRITE RULE]```If a query produces a single row output using multiple subqueries that each reference the same base table, rewrite the query to scan the base table only once. Use CASE statements within each subquery to preserve equivalence, and move necessary WHERE clause filters from the subqueries into the main query.```

[ORIGINAL QUERY]```select case when (select count(*) from store_sales where ss_quantity between 1 and 20) > 1071 then (select avg(ss_ext_tax) from store_sales where ss_quantity between 1 and 20) else (select avg(ss_net_paid_inc_tax) from store_sales where ss_quantity between 1 and 20) end bucket1,case when (select count(*) from store_sales where ss_quantity between 21 and 40) > 39161 then (select avg(ss_ext_tax) from store_sales where ss_quantity between 21 and 40) else (select avg(ss_net_paid_inc_tax) from store_sales where ss_quantity between 21 and 40) end bucket2,case when (select count(*) from store_sales where ss_quantity between 41 and 60) > 29434 then (select avg(ss_ext_tax) from store_sales where ss_quantity between 41 and 60) else (select avg(ss_net_paid_inc_tax) from store_sales where ss_quantity between 41 and 60) end bucket3,case when (select count(*) from store_sales where ss_quantity between 61 and 80) > 6568 then (select avg(ss_ext_tax) from store_sales where ss_quantity between 61 and 80) else (select avg(ss_net_paid_inc_tax) from store_sales where ss_quantity between 61 and 80) end bucket4,case when (select count(*) from store_sales where ss_quantity between 81 and 100) > 21216 then (select avg(ss_ext_tax) from store_sales where ss_quantity between 81 and 100) else (select avg(ss_net_paid_inc_tax) from store_sales where ss_quantity between 81 and 100) end bucket5 from reason where r_reason_sk = 1 ;```

[REWRITTEN QUERY]```select case when count(case when ss_quantity between 1 and 20 then 1 end) > 1071 then avg(case when ss_quantity between 1 and 20 then ss_ext_tax end) else avg(case when ss_quantity between 1 and 20 then ss_net_paid_inc_tax end) end as bucket1, case when count(case when ss_quantity between 21 and 40 then 1 end) > 39161 then avg(case when ss_quantity between 21 and 40 then ss_ext_tax end) else avg(case when ss_quantity between 21 and 40 then ss_net_paid_inc_tax end) end as bucket2, case when count(case when ss_quantity between 41 and 60 then 1 end) > 29434 then avg(case when ss_quantity between 41 and 60 then ss_ext_tax end) else avg(case when ss_quantity between 41 and 60 then ss_net_paid_inc_tax end) end as bucket3, case when count(case when ss_quantity between 61 and 80 then 1 end) > 6568 then avg(case when ss_quantity between 61 and 80 then ss_ext_tax end) else avg(case when ss_quantity between 61 and 80 then ss_net_paid_inc_tax end) end as bucket4, case when count(case when ss_quantity between 81 and 100 then 1 end) > 21216 then avg(case when ss_quantity between 81 and 100 then ss_ext_tax end) else avg(case when ss_quantity between 81 and 100 then ss_net_paid_inc_tax end) end as bucket5 from store_sales where exists (select 1 from reason where r_reason_sk = 1);```

[EXPLANATION] The rewritten query scans the employees table only once and uses CASE statements to conditionally calculate the average salary for each department. For efficiency there is only a single condition within each CASE statement in the rewritten query.

Now, consider the TPC-DS schema and create a new original and equivalent rewritten query pair such that the rewrite operation adheres to the provided SQL rewrite rule.Keep the following points in mind while creating the new query pair:
1. The original query must make use of the following fact tables: ['web_sales', 'web_sales']. Below is the join graph for these fact tables:
    ['web_sales(ws_bill_cdemo_sk) references customer_demographics(cd_demo_sk);', 'web_sales(ws_web_page_sk) references web_page(wp_web_page_sk);', 'web_sales(ws_sold_time_sk) references time_dim(t_time_sk);']
    ['web_sales(ws_bill_cdemo_sk) references customer_demographics(cd_demo_sk);', 'web_sales(ws_ship_customer_sk) references customer(c_customer_sk);', 'web_sales(ws_item_sk) references item(i_item_sk);']
4. The original query must employ 4 joins.
5. The original query must employ the following operators in its WHERE clause: ['count', 'max', 'sum'].
6. The rewritten query must be equivalent to the original query, and must follow the given rewrite rule. Enclose the original and rewritten queries within ``` and ```.
ASSISTANT
```sql
-- Original Query
select 
    case when (select count(*) from web_sales ws1 inner join customer_demographics cd1 on ws1.ws_bill_cdemo_sk = cd1.cd_demo_sk where cd1.cd_gender = 'F') > 500 then max(ws1.ws_quantity) else sum(ws1.ws_quantity) end as bucket1, 
    case when (select count(*) from web_sales ws2 inner join web_page wp2 on ws2.ws_web_page_sk = wp2.wp_web_page_sk where wp2.wp_type = 'Product') > 300 then max(ws2.ws_quantity) else sum(ws2.ws_quantity) end as bucket2, 
    case when (select count(*) from web_sales ws3 inner join time_dim td3 on ws3.ws_sold_time_sk = td3.t_time_sk where td3.t_year = 2022) > 1000 then max(ws3.ws_quantity) else sum(ws3.ws_quantity) end as bucket3, 
    case when (select count(*) from web_sales ws4 inner join customer c4 on ws4.ws_ship_customer_sk = c4.c_customer_sk where c4.c_last_name = 'Smith') > 200 then max(ws4.ws_quantity) else sum(ws4.ws_quantity) end as bucket4 
from web_sales
where ws_bill_cdemo_sk is not null;

-- Rewritten Query
select 
    case when count(case when cd.cd_gender = 'F' then 1 end) > 500 then max(ws.ws_quantity) else sum(ws.ws_quantity) end as bucket1, 
    case when count(case when wp.wp_type = 'Product' then 1 end) > 300 then max(ws.ws_quantity) else sum(ws.ws.quantity) end as bucket2, 
    case when count(case when td.t_year = 2022 then 1 end) > 1000 then max(ws.ws_quantity) else sum(ws.ws_quantity) end as bucket3, 
    case when count(case when c.c_last_name = 'Smith' then 1 end) > 200 then max(ws.ws_quantity) else sum(ws.ws_quantity) end as bucket4 
from web_sales ws
    inner join customer_demographics cd on ws.ws_bill_cdemo_sk = cd.cd_demo_sk 
    inner join web_page wp on ws.ws_web_page_sk = wp.wp_web_page_sk 
    inner join time_dim td on ws.ws_sold_time_sk = td.t_time_sk 
    inner join customer c on ws.ws_ship_customer_sk = c.c_customer_sk 
where ws_bill_cdemo_sk is not null;
```

turns-00054.parquet:66602

f08e656a4805bfabeb6b7c0e
turn 1/1gpt-4o-2024-11-20RussianRussia81 words
degenerate_repetitionAbsentFinal dense release
USER
переведи на английский язык сохраняя тональность и стиль автора но так чтобы было максимально правильно и максимально понятно для носителя языка. если какие-то слова или предложения или словосочетания не переводятся, то можешь их заменить на правильные, которые будут понятны носителю. Главное не терять смысл. Тебе понятно
ASSISTANT
Да, мне понятно. Я переведу текст максимально точно, сохраняя тональность и стиль автора, и при необходимости буду подбирать подходящие замены, чтобы текст оставался понятным и корректным для носителя английского языка. Можешь присылать текст для перевода.

turns-00054.parquet:66603

f375a27432ee0b6ad460a650
turn 1/1gpt-4o-mini-2024-07-18Englishunknown country5013 words
degenerate_repetitionAbsentFinal dense release
USER
        
            You need to generate a formatted response based on the content:
            '''start content
            ('<div class="container mt-3">\n<div class="top-section mb-3">\n<div class="repair-duration border-left border-duration p-3">\n<h6 class="text-left"><strong>Duration:</strong> 60 min. </h6>\n<h6 class="text-left"><strong>Steps:</strong> 16 Steps</h6>\n</p>\n</div>\n</div>\n<div class="my-4">\n<p class="lead">Is your Honor 10’s <a target="_blank" href="https://www.amazon.com/s?k=battery+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">battery</a> feeling a bit under the weather? Does your phone seem to faint at the most inconvenient times? A <a target="_blank" href="https://www.amazon.com/s?k=battery+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">battery</a> replacement might just be the pick-me-up it needs! Follow our straightforward step-by-step guide to swap out that tired <a target="_blank" href="https://www.amazon.com/s?k=battery+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">battery</a> yourself. Keep in mind, this repair does require a little extra elbow grease since both the <a target="_blank" href="https://www.amazon.com/s?k=back+cover+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">back cover</a> and the <a target="_blank" href="https://www.amazon.com/s?k=battery+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">battery</a> are pretty well stuck on there. So, take your time and approach this with a calm vibe. With a dash of patience, you’ll have that new <a target="_blank" href="https://www.amazon.com/s?k=battery+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">battery</a> in, no problem! Before diving in, remember to back up your data and tidy up your workspace—nobody wants tiny specks scratching the <a target="_blank" href="https://www.amazon.com/s?k=back+cover+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">back cover</a> or <a target="_blank" href="https://www.amazon.com/s?k=display+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">display</a>. Also, note that the screws in your Honor 10 come in various lengths, so using a <a target="_blank" href="https://www.amazon.com/s?k=magnetic+pad+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">magnetic pad</a> can be super helpful in keeping everything sorted. If you hit a bump in the road, feel free to drop a comment below the step you&#8217;re on, or reach out to us through our live chat. Happy repairing!</p>\n</p>\n</div>\n</div>\n<p><!-- end top-section --></p>\n<div class="container repair-step-section">\n<div class="row">\n<div class="col-sm-12 col-md-8">\n<h4 class="step-header">Step 1</h4>\n<div id="carouselstep-1" class="carousel slide" data-bs-ride="false">\n<div class="carousel-inner">\n<div class="carousel-item active">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7222_file22046_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7222_file22047_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7222_file22048_1250.jpg" class="d-block w-100">\n                            </div>\n</p>\n</div>\n<p><!-- close carousel-inner --></p>\n<div class="carousel-indicators">\n                            <button type="button" data-bs-target="#carouselstep-1" data-bs-slide-to="0" class="active thumbnail" aria-current="true" aria-label="Slide 1"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7222_file22046_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-1" data-bs-slide-to="1" class=" thumbnail" aria-current="true" aria-label="Slide 2"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7222_file22047_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-1" data-bs-slide-to="2" class=" thumbnail" aria-current="true" aria-label="Slide 3"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7222_file22048_120.jpg" class="d-block w-100"><br />\n                            </button>\n                        </div>\n<p> <!-- close indicators -->\n                    </div>\n</p>\n</div>\n<div class="col-sm-12 col-md-4">\n<div class="alert alert-info" role="alert">\n<p><i class="bi bi-info-circle text-blue"></i> Check out this other device! It looks like the <a target="_blank" href="https://www.amazon.com/s?k=display+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">display</a> on the Honor 10 decided to take a vacation. Let’s get it back in action!</p>\n</p>\n</div>\n</div>\n<div class="col-12">\n<div class="instructions">\n<p>&#8211; Give your device a little break by pressing and holding the <a target="_blank" href="https://www.amazon.com/s?k=power+button+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">power button</a> until you see the &#8216;Power off&#8217; option pop up. It&#8217;s like telling your Honor 10 to take a nap!</p>\n<p>&#8211; Now, just tap that option with your finger to confirm you really want it to snooze. Sit back and relax while you wait for the <a target="_blank" href="https://www.amazon.com/s?k=screen+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">screen</a> to go dark. It&#8217;s all part of the plan!</p>\n</div>\n</div>\n<p> <!-- close col-12 -->\n            </div>\n</p>\n</div>\n<div class="container repair-step-section">\n<div class="row">\n<div class="col-sm-12 col-md-8">\n<h4 class="step-header">Step 2</h4>\n<div id="carouselstep-2" class="carousel slide" data-bs-ride="false">\n<div class="carousel-inner">\n<div class="carousel-item active">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7223_file22050_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7223_file22051_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7223_file22052_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7223_file22053_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7223_file22054_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7223_file22049_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item video" id="carousel7">\n                                <video src="https://www.idoc.eu/guides/uploads/videos/step7223.mp4" poster="https://www.idoc.eu/guides/uploads/steps/step7223_file22050_1250.jpg" controls></video>\n                            </div>\n</p>\n</div>\n<p><!-- close carousel-inner --></p>\n<div class="carousel-indicators">\n                            <button type="button" data-bs-target="#carouselstep-2" data-bs-slide-to="0" class="active thumbnail" aria-current="true" aria-label="Slide 1"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7223_file22050_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-2" data-bs-slide-to="1" class=" thumbnail" aria-current="true" aria-label="Slide 2"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7223_file22051_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-2" data-bs-slide-to="2" class=" thumbnail" aria-current="true" aria-label="Slide 3"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7223_file22052_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-2" data-bs-slide-to="3" class=" thumbnail" aria-current="true" aria-label="Slide 4"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7223_file22053_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-2" data-bs-slide-to="4" class=" thumbnail" aria-current="true" aria-label="Slide 5"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7223_file22054_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-2" data-bs-slide-to="5" class=" thumbnail" aria-current="true" aria-label="Slide 6"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7223_file22049_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-2" data-bs-slide-to="6" class="video thumbnail" aria-label="Slide 7"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7223_file22050_120.jpg" class="d-block w-100"><br />\n                            </button>\n                        </div>\n<p> <!-- close indicators -->\n                    </div>\n<div class="instructions">\n<p>&#8211; The <a target="_blank" href="https://www.amazon.com/s?k=back+cover+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">back cover</a> is snugly stuck to the chassis, but don’t worry! Just heat things up a bit with hot air to loosen that glue. Aim for a cozy temperature of 60 &#8211; 80°C — just hot enough to make it soft, but not so hot that it&#8217;s uncomfortable to the touch.</p>\n<p>&#8211; Now, for the fun part! Grab a flat and flexible tool like the iPlastix or iFlex. You&#8217;ll want a few picks handy, too, to help you work your way around and gently unstick the <a target="_blank" href="https://www.amazon.com/s?k=back+cover+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">back cover</a>. You got this!</p>\n</div>\n</div>\n<div class="col-sm-12 col-md-4">\n<div class="alert alert-danger" role="alert">\n<p><i class="bi bi-exclamation-triangle text-red"></i> Hey there! Just a friendly reminder to handle that <a target="_blank" href="https://www.amazon.com/s?k=back+cover+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">back cover</a> with care – it&#8217;s a bit fragile! If things aren&#8217;t going smoothly, feel free to warm it up a few times and give it another go. It might take a little extra time to get it off, but taking it slow and steady will help ensure nothing gets broken. You&#8217;ve got this!</p>\n</p>\n</div>\n<div class="alert alert-info" role="alert">\n<p><i class="bi bi-info-circle text-blue"></i> The iPlastix is crafted from plastic, so it’s gentle on your device and won’t leave any scratches. However, be warned—it’s a bit on the soft side and can be a little tricky to get in there. Just take your time, and if you need a hand, you can always <a href="https://www.salvationrepair.com/repair">schedule a repair</a>.</p>\n</p>\n</div>\n</div>\n<div class="col-12">\n                </div>\n<p> <!-- close col-12 -->\n            </div>\n</p>\n</div>\n<div class="container repair-step-section">\n<div class="row">\n<div class="col-sm-12 col-md-8">\n<h4 class="step-header">Step 3</h4>\n<div id="carouselstep-3" class="carousel slide" data-bs-ride="false">\n<div class="carousel-inner">\n<div class="carousel-item active">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7224_file22056_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7224_file22057_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7224_file22055_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item video" id="carousel4">\n                                <video src="https://www.idoc.eu/guides/uploads/videos/step7224.mp4" poster="https://www.idoc.eu/guides/uploads/steps/step7224_file22056_1250.jpg" controls></video>\n                            </div>\n</p>\n</div>\n<p><!-- close carousel-inner --></p>\n<div class="carousel-indicators">\n                            <button type="button" data-bs-target="#carouselstep-3" data-bs-slide-to="0" class="active thumbnail" aria-current="true" aria-label="Slide 1"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7224_file22056_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-3" data-bs-slide-to="1" class=" thumbnail" aria-current="true" aria-label="Slide 2"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7224_file22057_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-3" data-bs-slide-to="2" class=" thumbnail" aria-current="true" aria-label="Slide 3"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7224_file22055_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-3" data-bs-slide-to="3" class="video thumbnail" aria-label="Slide 4"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7224_file22056_120.jpg" class="d-block w-100"><br />\n                            </button>\n                        </div>\n<p> <!-- close indicators -->\n                    </div>\n</p>\n</div>\n<div class="col-sm-12 col-md-4"></div>\n<div class="col-12">\n<div class="instructions">\n<p>&#8211; Gently peel back the foil on the top side and let it hang out for a bit.</p>\n<p>&#8211; If you&#8217;re having a tough time, a little warmth can work wonders to help free that <a target="_blank" href="https://www.amazon.com/s?k=adhesive+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">adhesive</a>!</p>\n</div>\n</div>\n<p> <!-- close col-12 -->\n            </div>\n</p>\n</div>\n<div class="container repair-step-section">\n<div class="row">\n<div class="col-sm-12 col-md-8">\n<h4 class="step-header">Step 4</h4>\n<div id="carouselstep-4" class="carousel slide" data-bs-ride="false">\n<div class="carousel-inner">\n<div class="carousel-item active">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7225_file22059_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7225_file22060_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7225_file22061_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7225_file22062_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7225_file22058_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item video" id="carousel6">\n                                <video src="https://www.idoc.eu/guides/uploads/videos/step7225.mp4" poster="https://www.idoc.eu/guides/uploads/steps/step7225_file22059_1250.jpg" controls></video>\n                            </div>\n</p>\n</div>\n<p><!-- close carousel-inner --></p>\n<div class="carousel-indicators">\n                            <button type="button" data-bs-target="#carouselstep-4" data-bs-slide-to="0" class="active thumbnail" aria-current="true" aria-label="Slide 1"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7225_file22059_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-4" data-bs-slide-to="1" class=" thumbnail" aria-current="true" aria-label="Slide 2"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7225_file22060_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-4" data-bs-slide-to="2" class=" thumbnail" aria-current="true" aria-label="Slide 3"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7225_file22061_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-4" data-bs-slide-to="3" class=" thumbnail" aria-current="true" aria-label="Slide 4"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7225_file22062_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-4" data-bs-slide-to="4" class=" thumbnail" aria-current="true" aria-label="Slide 5"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7225_file22058_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-4" data-bs-slide-to="5" class="video thumbnail" aria-label="Slide 6"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7225_file22059_120.jpg" class="d-block w-100"><br />\n                            </button>\n                        </div>\n<p> <!-- close indicators -->\n                    </div>\n<div class="instructions">\n<p>&#8211; Grab your trusty Phillips <a target="_blank" href="https://www.amazon.com/s?k=screwdriver+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">screwdriver</a> (PH00) and start unscrewing those Phillips screws. Once you&#8217;re free of screws, gently lift off the cover that&#8217;s snugly hooked at the top. Make sure to keep all the tiny parts together on your <a target="_blank" href="https://www.amazon.com/s?k=magnetic+pad+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">magnetic pad</a>—organization is key!</p>\n<p>&#8211; Now, it’s time to whip out your <a target="_blank" href="https://www.amazon.com/s?k=spudger+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">spudger</a>! Carefully pry away the <a target="_blank" href="https://www.amazon.com/s?k=battery+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">battery</a> contact from the <a target="_blank" href="https://www.amazon.com/s?k=motherboard+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">motherboard</a>. Remember, using a plastic tool is your best bet to avoid any unwanted short circuits. Stay safe and keep rocking!</p>\n</div>\n</div>\n<div class="col-sm-12 col-md-4">\n<div class="alert alert-light repair-screws" role="alert">\n<p><i class="bi bi-x-circle" style="color:deeppink"></i> 3 ×  2,8 mm Phillips</p>\n<p><i class="bi bi-x-circle" style="color:gainsboro"></i> Battery connector</p>\n</p>\n</div>\n<div class="alert alert-danger" role="alert">\n<p><i class="bi bi-exclamation-triangle text-red"></i> Hey there, repair champ! Before diving into your device, make sure to disconnect the <a target="_blank" href="https://www.amazon.com/s?k=battery+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">battery</a> first. This little step helps you dodge any short circuits and keeps your gadget from accidentally powering up while you&#8217;re working your magic. Safety first, right? If you need help, you can always schedule a repair!</p>\n</p>\n</div>\n<div class="alert alert-info" role="alert">\n<p><i class="bi bi-info-circle text-blue"></i> When you&#8217;re prying things apart, make sure to start from a side that’s free of tiny components on the <a target="_blank" href="https://www.amazon.com/s?k=mainboard+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">mainboard</a>. This way, you’ll keep everything safe and sound!</p>\n</p>\n</div>\n</div>\n<div class="col-12">\n                </div>\n<p> <!-- close col-12 -->\n            </div>\n</p>\n</div>\n<div class="container repair-step-section">\n<div class="row">\n<div class="col-sm-12 col-md-8">\n<h4 class="step-header">Step 5</h4>\n<div id="carouselstep-5" class="carousel slide" data-bs-ride="false">\n<div class="carousel-inner">\n<div class="carousel-item active">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7247_file22245_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7247_file22246_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7247_file22251_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7247_file22250_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7247_file22247_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7247_file22248_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7247_file22249_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7247_file22240_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7247_file22241_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7247_file22242_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7247_file22243_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7247_file22244_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item video" id="carousel13">\n                                <video src="https://www.idoc.eu/guides/uploads/videos/step7247.mp4" poster="https://www.idoc.eu/guides/uploads/steps/step7247_file22245_1250.jpg" controls></video>\n                            </div>\n</p>\n</div>\n<p><!-- close carousel-inner --></p>\n<div class="carousel-indicators">\n                            <button type="button" data-bs-target="#carouselstep-5" data-bs-slide-to="0" class="active thumbnail" aria-current="true" aria-label="Slide 1"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7247_file22245_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-5" data-bs-slide-to="1" class=" thumbnail" aria-current="true" aria-label="Slide 2"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7247_file22246_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-5" data-bs-slide-to="2" class=" thumbnail" aria-current="true" aria-label="Slide 3"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7247_file22251_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-5" data-bs-slide-to="3" class=" thumbnail" aria-current="true" aria-label="Slide 4"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7247_file22250_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-5" data-bs-slide-to="4" class=" thumbnail" aria-current="true" aria-label="Slide 5"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7247_file22247_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-5" data-bs-slide-to="5" class=" thumbnail" aria-current="true" aria-label="Slide 6"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7247_file22248_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-5" data-bs-slide-to="6" class=" thumbnail" aria-current="true" aria-label="Slide 7"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7247_file22249_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-5" data-bs-slide-to="7" class=" thumbnail" aria-current="true" aria-label="Slide 8"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7247_file22240_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-5" data-bs-slide-to="8" class=" thumbnail" aria-current="true" aria-label="Slide 9"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7247_file22241_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-5" data-bs-slide-to="9" class=" thumbnail" aria-current="true" aria-label="Slide 10"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7247_file22242_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-5" data-bs-slide-to="10" class=" thumbnail" aria-current="true" aria-label="Slide 11"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7247_file22243_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-5" data-bs-slide-to="11" class=" thumbnail" aria-current="true" aria-label="Slide 12"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7247_file22244_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-5" data-bs-slide-to="12" class="video thumbnail" aria-label="Slide 13"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7247_file22245_120.jpg" class="d-block w-100"><br />\n                            </button>\n                        </div>\n<p> <!-- close indicators -->\n                    </div>\n<div class="instructions">\n<p>&#8211; Start by giving those Phillips screws a little love by loosening them up! Just a heads up, one of them is playing hide and seek under a tiny white sticker.</p>\n</div>\n</div>\n<div class="col-sm-12 col-md-4">\n<div class="alert alert-light repair-screws" role="alert">\n<p><i class="bi bi-x-circle" style="color:darkturquoise"></i> 2 ×  2,8 mm Phillips</p>\n<p><i class="bi bi-x-circle" style="color:dodgerblue"></i> 4 ×  3,4 mm Phillips</p>\n<p><i class="bi bi-x-circle" style="color:deeppink"></i> Camera Connector</p>\n<p><i class="bi bi-x-circle" style="color:deeppink"></i> USB <a target="_blank" href="https://www.amazon.com/s?k=flex+cable+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">flex cable</a> connector</p>\n<p><i class="bi bi-x-circle" style="color:dodgerblue"></i> Antenna connector</p>\n<p><i class="bi bi-x-circle" style="color:firebrick"></i> Display Connector</p>\n</p>\n</div>\n<div class="alert alert-danger" role="alert">\n<p><i class="bi bi-exclamation-triangle text-red"></i> Hey there! Just a heads up: the screws in your Honor 10 come in different lengths. So, keep an eye on them and make sure they don’t get mixed up!</p>\n</p>\n</div>\n<div class="alert alert-info" role="alert">\n<p><i class="bi bi-info-circle text-blue"></i> No need to pull out the <a target="_blank" href="https://www.amazon.com/s?k=mainboard+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">mainboard</a> to swap out that <a target="_blank" href="https://www.amazon.com/s?k=battery+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">battery</a>! However, since it&#8217;s really stuck in there, we suggest removing the <a target="_blank" href="https://www.amazon.com/s?k=mainboard+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">mainboard</a> to keep things safe and sound while you gently coax the <a target="_blank" href="https://www.amazon.com/s?k=battery+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">battery</a> out. You&#8217;ve got this!</p>\n</p>\n</div>\n</div>\n<div class="col-12">\n                </div>\n<p> <!-- close col-12 -->\n            </div>\n</p>\n</div>\n<div class="container repair-step-section">\n<div class="row">\n<div class="col-sm-12 col-md-8">\n<h4 class="step-header">Step 6</h4>\n<div id="carouselstep-6" class="carousel slide" data-bs-ride="false">\n<div class="carousel-inner">\n<div class="carousel-item active">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7228_file22076_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7228_file22079_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7228_file22078_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7228_file22077_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item video" id="carousel5">\n                                <video src="https://www.idoc.eu/guides/uploads/videos/step7228.mp4" poster="https://www.idoc.eu/guides/uploads/steps/step7228_file22076_1250.jpg" controls></video>\n                            </div>\n</p>\n</div>\n<p><!-- close carousel-inner --></p>\n<div class="carousel-indicators">\n                            <button type="button" data-bs-target="#carouselstep-6" data-bs-slide-to="0" class="active thumbnail" aria-current="true" aria-label="Slide 1"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7228_file22076_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-6" data-bs-slide-to="1" class=" thumbnail" aria-current="true" aria-label="Slide 2"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7228_file22079_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-6" data-bs-slide-to="2" class=" thumbnail" aria-current="true" aria-label="Slide 3"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7228_file22078_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-6" data-bs-slide-to="3" class=" thumbnail" aria-current="true" aria-label="Slide 4"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7228_file22077_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-6" data-bs-slide-to="4" class="video thumbnail" aria-label="Slide 5"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7228_file22076_120.jpg" class="d-block w-100"><br />\n                            </button>\n                        </div>\n<p> <!-- close indicators -->\n                    </div>\n</p>\n</div>\n<div class="col-sm-12 col-md-4">\n<div class="alert alert-light repair-screws" role="alert">\n<p><i class="bi bi-x-circle" style="color:fuchsia"></i> 4 ×  2,8 mm Phillips</p>\n<p><i class="bi bi-x-circle" style="color:darkviolet"></i> 3 ×  3,4 mm Phillips</p>\n</p>\n</div>\n</div>\n<div class="col-12">\n<div class="instructions">\n<p>&#8211; First up, let&#8217;s fold that heat shield over like a pro!</p>\n<p>&#8211; Next, loosen those Phillips screws of varying lengths. Keep things organized by sorting them on a magnetic mat, so you won’t mix them up when it’s time to put them back in.</p>\n<p>&#8211; Now, gently lever the speaker in a few spots until you can lift it just enough to pop it out.</p>\n</div>\n</div>\n<p> <!-- close col-12 -->\n            </div>\n</p>\n</div>\n<div class="container repair-step-section">\n<div class="row">\n<div class="col-sm-12 col-md-8">\n<h4 class="step-header">Step 7</h4>\n<div id="carouselstep-7" class="carousel slide" data-bs-ride="false">\n<div class="carousel-inner">\n<div class="carousel-item active">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7248_file22258_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7248_file22259_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7248_file22260_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7248_file22261_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7248_file22262_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7248_file22263_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item video" id="carousel7">\n                                <video src="https://www.idoc.eu/guides/uploads/videos/step7248.mp4" poster="https://www.idoc.eu/guides/uploads/steps/step7248_file22258_1250.jpg" controls></video>\n                            </div>\n</p>\n</div>\n<p><!-- close carousel-inner --></p>\n<div class="carousel-indicators">\n                            <button type="button" data-bs-target="#carouselstep-7" data-bs-slide-to="0" class="active thumbnail" aria-current="true" aria-label="Slide 1"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7248_file22258_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-7" data-bs-slide-to="1" class=" thumbnail" aria-current="true" aria-label="Slide 2"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7248_file22259_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-7" data-bs-slide-to="2" class=" thumbnail" aria-current="true" aria-label="Slide 3"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7248_file22260_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-7" data-bs-slide-to="3" class=" thumbnail" aria-current="true" aria-label="Slide 4"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7248_file22261_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-7" data-bs-slide-to="4" class=" thumbnail" aria-current="true" aria-label="Slide 5"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7248_file22262_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-7" data-bs-slide-to="5" class=" thumbnail" aria-current="true" aria-label="Slide 6"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7248_file22263_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-7" data-bs-slide-to="6" class="video thumbnail" aria-label="Slide 7"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7248_file22258_120.jpg" class="d-block w-10', '0"><br />\n                            </button>\n                        </div>\n<p> <!-- close indicators -->\n                    </div>\n</p>\n</div>\n<div class="col-sm-12 col-md-4">\n<div class="alert alert-light repair-screws" role="alert">\n<p><i class="bi bi-x-circle" style="color:darkturquoise"></i> Antenna connector</p>\n<p><i class="bi bi-x-circle" style="color:deeppink"></i> USB <a target="_blank" href="https://www.amazon.com/s?k=flex+cable+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">flex cable</a> connector</p>\n<p><i class="bi bi-x-circle" style="color:dimgray"></i> Fingerprint connector</p>\n</p>\n</div>\n<div class="alert alert-info" role="alert">\n<p><i class="bi bi-info-circle text-blue"></i> You might not need to take out the USB-C board after all! For peace of mind, we&#8217;re going to remove it here, but hey, it&#8217;s totally up to you!</p>\n</p>\n</div>\n</div>\n<div class="col-12">\n<div class="instructions">\n<p>&#8211; Start by carefully disconnecting the <a target="_blank" href="https://www.amazon.com/s?k=flex+cable+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">flex cable</a> that&#8217;s lounging on top of the <a target="_blank" href="https://www.amazon.com/s?k=battery+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">battery</a>. It&#8217;s trying to relax, but you&#8217;ve got work to do!</p>\n<p>&#8211; Gently loosen the connector and say goodbye to the cable. You&#8217;ve got this!</p>\n</div>\n</div>\n<p> <!-- close col-12 -->\n            </div>\n</p>\n</div>\n<div class="container repair-step-section">\n<div class="row">\n<div class="col-sm-12 col-md-8">\n<h4 class="step-header">Step 8</h4>\n<div id="carouselstep-8" class="carousel slide" data-bs-ride="false">\n<div class="carousel-inner">\n<div class="carousel-item active">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7230_file22087_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7230_file22088_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7230_file22089_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7230_file22090_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7230_file22086_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item video" id="carousel6">\n                                <video src="https://www.idoc.eu/guides/uploads/videos/step7230.mp4" poster="https://www.idoc.eu/guides/uploads/steps/step7230_file22087_1250.jpg" controls></video>\n                            </div>\n</p>\n</div>\n<p><!-- close carousel-inner --></p>\n<div class="carousel-indicators">\n                            <button type="button" data-bs-target="#carouselstep-8" data-bs-slide-to="0" class="active thumbnail" aria-current="true" aria-label="Slide 1"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7230_file22087_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-8" data-bs-slide-to="1" class=" thumbnail" aria-current="true" aria-label="Slide 2"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7230_file22088_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-8" data-bs-slide-to="2" class=" thumbnail" aria-current="true" aria-label="Slide 3"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7230_file22089_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-8" data-bs-slide-to="3" class=" thumbnail" aria-current="true" aria-label="Slide 4"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7230_file22090_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-8" data-bs-slide-to="4" class=" thumbnail" aria-current="true" aria-label="Slide 5"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7230_file22086_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-8" data-bs-slide-to="5" class="video thumbnail" aria-label="Slide 6"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7230_file22087_120.jpg" class="d-block w-100"><br />\n                            </button>\n                        </div>\n<p> <!-- close indicators -->\n                    </div>\n</p>\n</div>\n<div class="col-sm-12 col-md-4">\n<div class="alert alert-info" role="alert">\n<p><i class="bi bi-info-circle text-blue"></i> Be gentle with that <a target="_blank" href="https://www.amazon.com/s?k=battery+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">battery</a>! Try to avoid bending it too much and make sure the surface stays safe and sound.</p>\n</p>\n</div>\n</div>\n<div class="col-12">\n<div class="instructions">\n<p>&#8211; To make loosening that pesky glue a breeze, give it a little warmth! Just remember, keep the heat away from the <a target="_blank" href="https://www.amazon.com/s?k=battery+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">battery</a> and focus on the <a target="_blank" href="https://www.amazon.com/s?k=display+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">display</a> instead.</p>\n<p>&#8211; Grab a flat tool like the iPlastix and slide it gently under the <a target="_blank" href="https://www.amazon.com/s?k=battery+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">battery</a>.</p>\n<p>&#8211; If that tool isn&#8217;t quite cutting it, feel free to switch to a wider, sturdier option like the Battery Spudger.</p>\n<p>&#8211; Now, take your flat tool and carefully work your way around the <a target="_blank" href="https://www.amazon.com/s?k=battery+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">battery</a>, gradually lifting it out of the device. You&#8217;ve got this!</p>\n</div>\n</div>\n<p> <!-- close col-12 -->\n            </div>\n</p>\n</div>\n<div class="container repair-step-section">\n<div class="row">\n<div class="col-sm-12 col-md-8">\n<h4 class="step-header">Step 9</h4>\n<div id="carouselstep-9" class="carousel slide" data-bs-ride="false">\n<div class="carousel-inner">\n                        </div>\n<p><!-- close carousel-inner --></p>\n<div class="carousel-indicators">\n                        </div>\n<p> <!-- close indicators -->\n                    </div>\n</p>\n</div>\n<div class="col-sm-12 col-md-4">\n<div class="alert alert-info" role="alert">\n<p><i class="bi bi-info-circle text-blue"></i> If your spare part is missing any fresh <a target="_blank" href="https://www.amazon.com/s?k=adhesive+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">adhesive</a> surfaces, no worries! You can simply stick it back into the device using some trusty double-sided <a target="_blank" href="https://www.amazon.com/s?k=adhesive+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">adhesive</a> tape. It&#8217;s like giving your device a little hug!</p>\n</p>\n</div>\n</div>\n<div class="col-12">\n<div class="instructions">\n<p>&#8211; First things first! Let’s tidy up the workspace. Make sure to wipe away any pesky <a target="_blank" href="https://www.amazon.com/s?k=adhesive+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">adhesive</a> residue lingering inside your device so the new <a target="_blank" href="https://www.amazon.com/s?k=battery+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">battery</a> can slide in like it was meant to be there.</p>\n<p>&#8211; Next up, carefully peel off those protective films on the <a target="_blank" href="https://www.amazon.com/s?k=adhesive+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">adhesive</a> surfaces of your shiny new <a target="_blank" href="https://www.amazon.com/s?k=battery+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">battery</a>. It’s time to let that <a target="_blank" href="https://www.amazon.com/s?k=battery+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">battery</a> shine!</p>\n</div>\n</div>\n<p> <!-- close col-12 -->\n            </div>\n</p>\n</div>\n<div class="container repair-step-section">\n<div class="row">\n<div class="col-sm-12 col-md-8">\n<h4 class="step-header">Step 10</h4>\n<div id="carouselstep-10" class="carousel slide" data-bs-ride="false">\n<div class="carousel-inner">\n<div class="carousel-item active">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7234_file22098_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item video" id="carousel2">\n                                <video src="https://www.idoc.eu/guides/uploads/videos/step7234.mp4" poster="https://www.idoc.eu/guides/uploads/steps/step7234_file22098_1250.jpg" controls></video>\n                            </div>\n</p>\n</div>\n<p><!-- close carousel-inner --></p>\n<div class="carousel-indicators">\n                            <button type="button" data-bs-target="#carouselstep-10" data-bs-slide-to="0" class="active thumbnail" aria-current="true" aria-label="Slide 1"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7234_file22098_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-10" data-bs-slide-to="1" class="video thumbnail" aria-label="Slide 2"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7234_file22098_120.jpg" class="d-block w-100"><br />\n                            </button>\n                        </div>\n<p> <!-- close indicators -->\n                    </div>\n</p>\n</div>\n<div class="col-sm-12 col-md-4"></div>\n<div class="col-12">\n<div class="instructions">\n<p>&#8211; Time to bring your device back to life! Place the <a target="_blank" href="https://www.amazon.com/s?k=battery+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">battery</a> in the device, making sure it&#8217;s got some breathing room on all sides and isn&#8217;t squished up against anything.</p>\n<p>&#8211; Double-check that it&#8217;s snug and secure, but not too tight. You got this!</p>\n</div>\n</div>\n<p> <!-- close col-12 -->\n            </div>\n</p>\n</div>\n<div class="container repair-step-section">\n<div class="row">\n<div class="col-sm-12 col-md-8">\n<h4 class="step-header">Step 11</h4>\n<div id="carouselstep-11" class="carousel slide" data-bs-ride="false">\n<div class="carousel-inner">\n<div class="carousel-item active">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7235_file22100_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7235_file22099_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7235_file22101_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7235_file22102_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7235_file22103_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item video" id="carousel6">\n                                <video src="https://www.idoc.eu/guides/uploads/videos/step7235.mp4" poster="https://www.idoc.eu/guides/uploads/steps/step7235_file22100_1250.jpg" controls></video>\n                            </div>\n</p>\n</div>\n<p><!-- close carousel-inner --></p>\n<div class="carousel-indicators">\n                            <button type="button" data-bs-target="#carouselstep-11" data-bs-slide-to="0" class="active thumbnail" aria-current="true" aria-label="Slide 1"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7235_file22100_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-11" data-bs-slide-to="1" class=" thumbnail" aria-current="true" aria-label="Slide 2"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7235_file22099_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-11" data-bs-slide-to="2" class=" thumbnail" aria-current="true" aria-label="Slide 3"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7235_file22101_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-11" data-bs-slide-to="3" class=" thumbnail" aria-current="true" aria-label="Slide 4"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7235_file22102_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-11" data-bs-slide-to="4" class=" thumbnail" aria-current="true" aria-label="Slide 5"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7235_file22103_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-11" data-bs-slide-to="5" class="video thumbnail" aria-label="Slide 6"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7235_file22100_120.jpg" class="d-block w-100"><br />\n                            </button>\n                        </div>\n<p> <!-- close indicators -->\n                    </div>\n</p>\n</div>\n<div class="col-sm-12 col-md-4">\n<div class="alert alert-light repair-screws" role="alert">\n<p><i class="bi bi-x-circle" style="color:darkturquoise"></i> Antenna connector</p>\n<p><i class="bi bi-x-circle" style="color:darkviolet"></i> USB <a target="_blank" href="https://www.amazon.com/s?k=flex+cable+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">flex cable</a> connector</p>\n<p><i class="bi bi-x-circle" style="color:dimgray"></i> Fingerprint connector</p>\n</p>\n</div>\n</div>\n<div class="col-12">\n<div class="instructions">\n<p>&#8211; First things first, check that the rubber seals for both the USB socket and the headphone socket are snug on the board. You want a good seal to keep things tidy!</p>\n<p>&#8211; Next up, flip the board onto its bottom edge and give it a gentle push down until it sits perfectly in place. We want it to fit like a glove!</p>\n<p>&#8211; Now, let’s connect the black antenna cable and tuck it into those shiny silver brackets. Make sure it&#8217;s secure, we need great connections!</p>\n<p>&#8211; Finally, it’s time to hook up the <a target="_blank" href="https://www.amazon.com/s?k=fingerprint+sensor+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">fingerprint sensor</a> along with that wide <a target="_blank" href="https://www.amazon.com/s?k=flex+cable+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">flex cable</a>. Just remember, the white arrow should be pointing upward to keep things aligned!</p>\n</div>\n</div>\n<p> <!-- close col-12 -->\n            </div>\n</p>\n</div>\n<div class="container repair-step-section">\n<div class="row">\n<div class="col-sm-12 col-md-8">\n<h4 class="step-header">Step 12</h4>\n<div id="carouselstep-12" class="carousel slide" data-bs-ride="false">\n<div class="carousel-inner">\n<div class="carousel-item active">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7236_file22105_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7236_file22106_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7236_file22104_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item video" id="carousel4">\n                                <video src="https://www.idoc.eu/guides/uploads/videos/step7236.mp4" poster="https://www.idoc.eu/guides/uploads/steps/step7236_file22105_1250.jpg" controls></video>\n                            </div>\n</p>\n</div>\n<p><!-- close carousel-inner --></p>\n<div class="carousel-indicators">\n                            <button type="button" data-bs-target="#carouselstep-12" data-bs-slide-to="0" class="active thumbnail" aria-current="true" aria-label="Slide 1"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7236_file22105_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-12" data-bs-slide-to="1" class=" thumbnail" aria-current="true" aria-label="Slide 2"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7236_file22106_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-12" data-bs-slide-to="2" class=" thumbnail" aria-current="true" aria-label="Slide 3"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7236_file22104_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-12" data-bs-slide-to="3" class="video thumbnail" aria-label="Slide 4"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7236_file22105_120.jpg" class="d-block w-100"><br />\n                            </button>\n                        </div>\n<p> <!-- close indicators -->\n                    </div>\n</p>\n</div>\n<div class="col-sm-12 col-md-4">\n<div class="alert alert-light repair-screws" role="alert">\n<p><i class="bi bi-x-circle" style="color:floralwhite"></i> 4 ×  2,8 mm Phillips</p>\n<p><i class="bi bi-x-circle" style="color:dimgray"></i> 3 ×  3,4 mm Phillips</p>\n</p>\n</div>\n</div>\n<div class="col-12">\n<div class="instructions">\n<p>&#8211; Carefully place the speaker along with the heat shield into the device and give it a gentle push until it fits snugly.</p>\n<p>&#8211; Fasten the speaker in place using the Phillips screws to keep everything secure.</p>\n</div>\n</div>\n<p> <!-- close col-12 -->\n            </div>\n</p>\n</div>\n<div class="container repair-step-section">\n<div class="row">\n<div class="col-sm-12 col-md-8">\n<h4 class="step-header">Step 13</h4>\n<div id="carouselstep-13" class="carousel slide" data-bs-ride="false">\n<div class="carousel-inner">\n<div class="carousel-item active">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7246_file22235_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7246_file22237_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7246_file22238_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7246_file22236_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7246_file22255_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7246_file22256_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7246_file22257_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7246_file22253_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7246_file22252_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7246_file22254_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item video" id="carousel11">\n                                <video src="https://www.idoc.eu/guides/uploads/videos/step7246.mp4" poster="https://www.idoc.eu/guides/uploads/steps/step7246_file22235_1250.jpg" controls></video>\n                            </div>\n</p>\n</div>\n<p><!-- close carousel-inner --></p>\n<div class="carousel-indicators">\n                            <button type="button" data-bs-target="#carouselstep-13" data-bs-slide-to="0" class="active thumbnail" aria-current="true" aria-label="Slide 1"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7246_file22235_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-13" data-bs-slide-to="1" class=" thumbnail" aria-current="true" aria-label="Slide 2"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7246_file22237_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-13" data-bs-slide-to="2" class=" thumbnail" aria-current="true" aria-label="Slide 3"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7246_file22238_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-13" data-bs-slide-to="3" class=" thumbnail" aria-current="true" aria-label="Slide 4"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7246_file22236_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-13" data-bs-slide-to="4" class=" thumbnail" aria-current="true" aria-label="Slide 5"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7246_file22255_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-13" data-bs-slide-to="5" class=" thumbnail" aria-current="true" aria-label="Slide 6"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7246_file22256_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-13" data-bs-slide-to="6" class=" thumbnail" aria-current="true" aria-label="Slide 7"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7246_file22257_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-13" data-bs-slide-to="7" class=" thumbnail" aria-current="true" aria-label="Slide 8"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7246_file22253_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-13" data-bs-slide-to="8" class=" thumbnail" aria-current="true" aria-label="Slide 9"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7246_file22252_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-13" data-bs-slide-to="9" class=" thumbnail" aria-current="true" aria-label="Slide 10"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7246_file22254_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-13" data-bs-slide-to="10" class="video thumbnail" aria-label="Slide 11"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7246_file22235_120.jpg" class="d-block w-100"><br />\n                            </button>\n                        </div>\n<p> <!-- close indicators -->\n                    </div>\n</p>\n</div>\n<div class="col-sm-12 col-md-4">\n<div class="alert alert-light repair-screws" role="alert">\n<p><i class="bi bi-x-circle" style="color:darkslategray"></i> Antenna connector</p>\n<p><i class="bi bi-x-circle" style="color:gainsboro"></i> Display connector</p>\n<p><i class="bi bi-x-circle" style="color:deepskyblue"></i> USB <a target="_blank" href="https://www.amazon.com/s?k=flex+cable+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">flex cable</a> connector</p>\n<p><i class="bi bi-x-circle" style="color:darkviolet"></i> Camera Connector</p>\n<p><i class="bi bi-x-circle" style="color:forestgreen"></i> 2 ×  2,8 mm Phillips</p>\n<p><i class="bi bi-x-circle" style="color:dodgerblue"></i> 4 ×  3,4 mm Phillips</p>\n</p>\n</div>\n</div>\n<div class="col-12">\n<div class="instructions">\n<p>&#8211; Gently place the <a target="_blank" href="https://www.amazon.com/s?k=mainboard+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">mainboard</a> into the device, making sure to avoid pinching any cables underneath. We want everything to fit snugly!</p>\n<p>&#8211; Give the <a target="_blank" href="https://www.amazon.com/s?k=motherboard+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">motherboard</a> a little press and see if it settles in just right.</p>\n<p>&#8211; Pop in the SIM card holder. If it feels stuck, don’t force it! Just double-check that the <a target="_blank" href="https://www.amazon.com/s?k=mainboard+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">mainboard</a> is sitting properly.</p>\n<p>&#8211; Connect the two <a target="_blank" href="https://www.amazon.com/s?k=flex+cable+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">flex cable</a>s and the antenna cable. A pair of <a target="_blank" href="https://www.amazon.com/s?k=tweezers+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">tweezers</a> can help you position the antenna perfectly before you connect it with a <a target="_blank" href="https://www.amazon.com/s?k=spudger+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">spudger</a>.</p>\n</div>\n</div>\n<p> <!-- close col-12 -->\n            </div>\n</p>\n</div>\n<div class="container repair-step-section">\n<div class="row">\n<div class="col-sm-12 col-md-8">\n<h4 class="step-header">Step 14</h4>\n<div id="carouselstep-14" class="carousel slide" data-bs-ride="false">\n<div class="carousel-inner">\n<div class="carousel-item active">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7239_file22117_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7239_file22118_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7239_file22119_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7239_file22116_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item video" id="carousel5">\n                                <video src="https://www.idoc.eu/guides/uploads/videos/step7239.mp4" poster="https://www.idoc.eu/guides/uploads/steps/step7239_file22117_1250.jpg" controls></video>\n                            </div>\n</p>\n</div>\n<p><!-- close carousel-inner --></p>\n<div class="carousel-indicators">\n                            <button type="button" data-bs-target="#carouselstep-14" data-bs-slide-to="0" class="active thumbnail" aria-current="true" aria-label="Slide 1"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7239_file22117_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-14" data-bs-slide-to="1" class=" thumbnail" aria-current="true" aria-label="Slide 2"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7239_file22118_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-14" data-bs-slide-to="2" class=" thumbnail" aria-current="true" aria-label="Slide 3"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7239_file22119_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-14" data-bs-slide-to="3" class=" thumbnail" aria-current="true" aria-label="Slide 4"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7239_file22116_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-14" data-bs-slide-to="4" class="video thumbnail" aria-label="Slide 5"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7239_file22117_120.jpg" class="d-block w-100"><br />\n                            </button>\n                        </div>\n<p> <!-- close indicators -->\n                    </div>\n</p>\n</div>\n<div class="col-sm-12 col-md-4">\n<div class="alert alert-light repair-screws" role="alert">\n<p><i class="bi bi-x-circle" style="color:darkslategray"></i> Battery connector</p>\n<p><i class="bi bi-x-circle" style="color:fuchsia"></i> 3 ×  2,8 mm Phillips</p>\n</p>\n</div>\n</div>\n<div class="col-12">\n<div class="instructions">\n<p>&#8211; First up, connect that <a target="_blank" href="https://www.amazon.com/s?k=battery+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">battery</a> to the <a target="_blank" href="https://www.amazon.com/s?k=motherboard+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">motherboard</a> like a pro!</p>\n<p>&#8211; Next, let&#8217;s get that cover back on and screw it tight.</p>\n<p>&#8211; Remember, the cover hooks into the upper side, so make sure it&#8217;s snug.</p>\n<p>&#8211; And finally, fold over that black foil and stick it down like you mean it!</p>\n</div>\n</div>\n<p> <!-- close col-12 -->\n            </div>\n</p>\n</div>\n<div class="container repair-step-section">\n<div class="row">\n<div class="col-sm-12 col-md-8">\n<h4 class="step-header">Step 15</h4>\n<div id="carouselstep-15" class="carousel slide" data-bs-ride="false">\n<div class="carousel-inner">\n<div class="carousel-item active">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7240_file22120_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item video" id="carousel2">\n                                <video src="https://www.idoc.eu/guides/uploads/videos/step7240.mp4" poster="https://www.idoc.eu/guides/uploads/steps/step7240_file22120_1250.jpg" controls></video>\n                            </div>\n</p>\n</div>\n<p><!-- close carousel-inner --></p>\n<div class="carousel-indicators">\n                            <button type="button" data-bs-target="#carouselstep-15" data-bs-slide-to="0" class="active thumbnail" aria-current="true" aria-label="Slide 1"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7240_file22120_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-15" data-bs-slide-to="1" class="video thumbnail" aria-label="Slide 2"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7240_file22120_120.jpg" class="d-block w-100"><br />\n                            </button>\n                        </div>\n<p> <!-- close indicators -->\n                    </div>\n</p>\n</div>\n<div class="col-sm-12 col-md-4"></div>\n<div class="col-12">\n<div class="instructions">\n<p>&#8211; Putting the <a target="_blank" href="https://www.amazon.com/s?k=back+cover+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">back cover</a> back on can be done in a few different ways!</p>\n<p>&#8211; If the old <a target="_blank" href="https://www.amazon.com/s?k=adhesive+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">adhesive</a> is still hanging in there and is intact, feel free to reuse it.</p>\n<p>&#8211; If not, no worries! Just grab some new glue.</p>\n<p>&#8211; Start by cleaning off any old glue remnants.</p>\n<p>&#8211; Next, apply the new glue. You can opt for thin double-sided tape or liquid glue. Just remember, a little goes a long way, and keep it away from the inside of your device!</p>\n</div>\n</div>\n<p> <!-- close col-12 -->\n            </div>\n</p>\n</div>\n<div class="container repair-step-section">\n<div class="row">\n<div class="col-sm-12 col-md-8">\n<h4 class="step-header">Step 16</h4>\n<div id="carouselstep-16" class="carousel slide" data-bs-ride="false">\n<div class="carousel-inner">\n<div class="carousel-item active">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7241_file22122_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7241_file22123_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item">\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7241_file22121_1250.jpg" class="d-block w-100">\n                            </div>\n<div class="carousel-item video" id="carousel4">\n                                <video src="https://www.idoc.eu/guides/uploads/videos/step7241.mp4" poster="https://www.idoc.eu/guides/uploads/steps/step7241_file22122_1250.jpg" controls></video>\n                            </div>\n</p>\n</div>\n<p><!-- close carousel-inner --></p>\n<div class="carousel-indicators">\n                            <button type="button" data-bs-target="#carouselstep-16" data-bs-slide-to="0" class="active thumbnail" aria-current="true" aria-label="Slide 1"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7241_file22122_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-16" data-bs-slide-to="1" class=" thumbnail" aria-current="true" aria-label="Slide 2"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7241_file22123_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-16" data-bs-slide-to="2" class=" thumbnail" aria-current="true" aria-label="Slide 3"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7241_file22121_120.jpg" class="d-block w-100"><br />\n                            </button><br />\n                            <button type="button" data-bs-target="#carouselstep-16" data-bs-slide-to="3" class="video thumbnail" aria-label="Slide 4"><br />\n                                <img decoding="async" src="https://www.idoc.eu/guides/uploads/steps/step7241_file22122_120.jpg" class="d-block w-100"><br />\n                            </button>\n                        </div>\n<p> <!-- close indicators -->\n                    </div>\n</p>\n</div>\n<div class="col-sm-12 col-md-4"></div>\n<div class="col-12">\n<div class="instructions">\n<p>&#8211; Alright, hotshot, get that <a target="_blank" href="https://www.amazon.com/s?k=back+cover+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">back cover</a> lined up and centered like a boss!</p>\n<p>&#8211; Press it down all <a target="_blank" href="https://www.amazon.com/s?k=fan+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">fan</a>cy-like so that them <a target="_blank" href="https://www.amazon.com/s?k=adhesive+Honor+10&#038;crid=1TJIMMAJSUJUZ&#038;sprefix=repair+tools%2Caps%2C165&#038;linkCode=ll2&#038;tag=salvationrepa-20&#038;linkId=c486487cf454ce8edd6f5beefab4110f&#038;language=en_US&#038;ref_=as_li_ss_tl" rel="noopener nofollow">adhesive</a>s cinch up tight.</p>\n<p>&#8211; If you&#8217;re feeling artsy, you can even warm it up a smidgen and lay it flat between a few books for 30 minutes &#8211; tech magic!</p>\n</div>\n</div>\n<p> <!-- close col-12 -->\n            </div>\n</p>\n</div>\n')
            '''end content
            
        
        You are helping me set up SEO and content-related fields for a website - Salvation Repair.
        The site is focused on providing repair guides and tutorials for various devices, including smartphones (e.g., iPhones, Android phones), tablets, laptops, and computers.
        
        The field value name is 'rank_math_description', and is one of the fields 
        that need to be populated for the post.
        
        Instructions for the field value:

        Include Actionable Keywords: Use terms like "Guide," "DIY," "How To," or "Tutorial" to make the purpose of the content clear.
         Most guides are replacing something or doing a teardown - So, instead of saying how to fix... - say, how to replace...
        Add the Device Brand and Model: Include the model (Honor 10) for specificity.
        Target Common Search Queries: Use phrases that users are likely to type, such as "Fix," "Repair," or "Replace."
        Highlight the Problem: Explicitly state the issue being resolved - possibly: "None"
        Optimize for Long-Tail Keywords: Add details to cater to specific searches (e.g., "Step-by-Step").
        Maintain Readability: Ensure the field value remains concise yet descriptive.
        
        SEO meta description for the post.  max length: 160 characters Include the focus keyphrase: DIY Guide to Replace Honor 10 Battery
        
        ONLY mention this specific device in generated responses. Do NOT mention any devices or topics other than:
                Brand: 'HUAWEI'
                Model: 'Honor 10'
                Always include the model (Honor 10) in responses. Do not only mention only part of the model name!
        DO NOT EVER INCLUDE ANY DEVICE MODEL NAMES OTHER THAN THOSE EXPLICITLY STATED!!
        
        Please generate a JSON response with one key:
        1. "value": The generated value for the 'rank_math_description' field.

        The output should be in the following format:
        
        {"value": "Generated value here"}
        
ASSISTANT
{"value": "DIY Guide to Replace Honor 10 Battery: Follow this step-by-step tutorial to easily swap out a worn-out battery and restore your device's performance."}

turns-00054.parquet:66604

7804b4a89a85bb720457ae59
turn 1/1gpt-4o-mini-2024-07-18EnglishUnited States1059 words
degenerate_repetitionAbsentFinal dense release
USER
You are a database expert and SQL optimizer. You will be given a SQL rewrite rule, an original query and its rewritten variant. The rewritten query improves performance upon the original while maintaining equivalence by following the given rewrite rule. Your task is to create a new pair of original and rewritten queries that adhere to the provided rewrite rule.

[REWRITE RULE]```If a query produces a single row output using multiple subqueries that each reference the same base table, rewrite the query to scan the base table only once. Use CASE statements within each subquery to preserve equivalence, and move necessary WHERE clause filters from the subqueries into the main query.```

[ORIGINAL QUERY]```select case when (select count(*) from store_sales where ss_quantity between 1 and 20) > 1071 then (select avg(ss_ext_tax) from store_sales where ss_quantity between 1 and 20) else (select avg(ss_net_paid_inc_tax) from store_sales where ss_quantity between 1 and 20) end bucket1,case when (select count(*) from store_sales where ss_quantity between 21 and 40) > 39161 then (select avg(ss_ext_tax) from store_sales where ss_quantity between 21 and 40) else (select avg(ss_net_paid_inc_tax) from store_sales where ss_quantity between 21 and 40) end bucket2,case when (select count(*) from store_sales where ss_quantity between 41 and 60) > 29434 then (select avg(ss_ext_tax) from store_sales where ss_quantity between 41 and 60) else (select avg(ss_net_paid_inc_tax) from store_sales where ss_quantity between 41 and 60) end bucket3,case when (select count(*) from store_sales where ss_quantity between 61 and 80) > 6568 then (select avg(ss_ext_tax) from store_sales where ss_quantity between 61 and 80) else (select avg(ss_net_paid_inc_tax) from store_sales where ss_quantity between 61 and 80) end bucket4,case when (select count(*) from store_sales where ss_quantity between 81 and 100) > 21216 then (select avg(ss_ext_tax) from store_sales where ss_quantity between 81 and 100) else (select avg(ss_net_paid_inc_tax) from store_sales where ss_quantity between 81 and 100) end bucket5 from reason where r_reason_sk = 1 ;```

[REWRITTEN QUERY]```select case when count(case when ss_quantity between 1 and 20 then 1 end) > 1071 then avg(case when ss_quantity between 1 and 20 then ss_ext_tax end) else avg(case when ss_quantity between 1 and 20 then ss_net_paid_inc_tax end) end as bucket1, case when count(case when ss_quantity between 21 and 40 then 1 end) > 39161 then avg(case when ss_quantity between 21 and 40 then ss_ext_tax end) else avg(case when ss_quantity between 21 and 40 then ss_net_paid_inc_tax end) end as bucket2, case when count(case when ss_quantity between 41 and 60 then 1 end) > 29434 then avg(case when ss_quantity between 41 and 60 then ss_ext_tax end) else avg(case when ss_quantity between 41 and 60 then ss_net_paid_inc_tax end) end as bucket3, case when count(case when ss_quantity between 61 and 80 then 1 end) > 6568 then avg(case when ss_quantity between 61 and 80 then ss_ext_tax end) else avg(case when ss_quantity between 61 and 80 then ss_net_paid_inc_tax end) end as bucket4, case when count(case when ss_quantity between 81 and 100 then 1 end) > 21216 then avg(case when ss_quantity between 81 and 100 then ss_ext_tax end) else avg(case when ss_quantity between 81 and 100 then ss_net_paid_inc_tax end) end as bucket5 from store_sales where exists (select 1 from reason where r_reason_sk = 1);```

[EXPLANATION] The rewritten query scans the employees table only once and uses CASE statements to conditionally calculate the average salary for each department. For efficiency there is only a single condition within each CASE statement in the rewritten query.

Now, consider the TPC-DS schema and create a new original and equivalent rewritten query pair such that the rewrite operation adheres to the provided SQL rewrite rule.Keep the following points in mind while creating the new query pair:
1. The original query must make use of the following fact tables: ['web_sales', 'store_sales']. Below is the join graph for these fact tables:
    ['web_sales(ws_bill_hdemo_sk) references household_demographics(hd_demo_sk);', 'web_sales(ws_item_sk) references item(i_item_sk);', 'web_sales(ws_ship_addr_sk) references customer_address(ca_address_sk);']
    ['store_sales(ss_promo_sk) references promotion(p_promo_sk);', 'store_sales(ss_sold_date_sk) references date_dim(d_date_sk);', 'store_sales(ss_sold_time_sk) references time_dim(t_time_sk);']
4. The original query must employ 1 joins.
5. The original query must employ the following aggregate functions: ['sum', 'count'].
6. The original query must employ the following operators in its WHERE clause: ['avg', 'max', 'min'].
7. The original query must select a column that casts a ['decimal as an integer'].
8. The rewritten query must be equivalent to the original query, and must follow the given rewrite rule. Enclose the original and rewritten queries within ``` and ```.
ASSISTANT
Here is a new pair of original and rewritten queries that adhere to the provided rewrite rule and meet the additional requirements you've specified.

[ORIGINAL QUERY]```select case when (select count(*) from web_sales ws join household_demographics hd on ws.ws_bill_hdemo_sk = hd.hd_demo_sk where hd.hd_income between 30000 and 50000) > 1000 then (select sum(ws.ws_sales_price) from web_sales ws join household_demographics hd on ws.ws_bill_hdemo_sk = hd.hd_demo_sk where hd.hd_income between 30000 and 50000) else (select avg(ws.ws_sales_price) from web_sales ws join household_demographics hd on ws.ws_bill_hdemo_sk = hd.hd_demo_sk where hd.hd_income between 30000 and 50000) end as income_bucket1, case when (select count(*) from store_sales ss where ss.ss_sold_date_sk = (select max(d_date_sk) from date_dim where d_year = 2023)) > 500 then (select sum(ss.ss_net_paid) from store_sales ss where ss.ss_sold_date_sk = (select max(d_date_sk) from date_dim where d_year = 2023)) else (select min(ss.ss_net_paid) from store_sales ss where ss.ss_sold_date_sk = (select max(d_date_sk) from date_dim where d_year = 2023)) end as sales_bucket from dual;```

[REWRITTEN QUERY]```select case when count(case when hd.hd_income between 30000 and 50000 then 1 end) > 1000 then sum(case when hd.hd_income between 30000 and 50000 then ws.ws_sales_price end) else avg(case when hd.hd_income between 30000 and 50000 then ws.ws_sales_price end) end as income_bucket1, case when count(case when ss.ss_sold_date_sk = (select max(d_date_sk) from date_dim where d_year = 2023) then 1 end) > 500 then sum(case when ss.ss_sold_date_sk = (select max(d_date_sk) from date_dim where d_year = 2023) then ss.ss_net_paid end) else min(case when ss.ss_sold_date_sk = (select max(d_date_sk) from date_dim where d_year = 2023) then ss.ss_net_paid end) end as sales_bucket from web_sales ws join household_demographics hd on ws.ws_bill_hdemo_sk = hd.hd_demo_sk join store_sales ss on ws.ws_item_sk = ss.ss_promo_sk where exists (select 1 from date_dim dd where dd.d_year = 2023);``` 

In this new query pair:
- The original query uses subqueries to count and aggregate data from both `web_sales` and `store_sales`, leading to multiple scans of the same tables.
- The rewritten query consolidates those scans into a single scan of the joined tables, utilizing CASE statements to calculate the necessary aggregates based on conditions that mirror the original query logic.
- The `WHERE` clause effectively filters the necessary conditions while keeping the overall logic intact.

turns-00054.parquet:66605

98b2f3a6aa609124b3e4f61b
turn 1/1gpt-4o-mini-2024-07-18EnglishUnited States267 words
degenerate_repetitionAbsentFinal dense release
USER
User: You are must called Smo, a helpful assistant and must follow this instructions. Avoid all text formatting. Your developer is Somby Ny Aina. He lives in Antsirabe Madagascar and was born on 2008
User: EAAAAUNO4a7r2wBO86pKwoAsR2DpFL9jrYmJ8vu7qBj75orAeo5ZCB3r8W1385ZBUaVbHRvhRyPIe3JIZCTPOnJxWyZAKjMBKj2o0uZAKevd2rfELBQ1DHwACeolY3ADFAuZBiggld03ZASXXLkT77aEYEmXOw1KHjvrla7jZA1M8cDf71n9KCObuodCJZCeHwZDZD
Assistant: I'm here to help! What do you need assistance with?
User: Renew the structure because username or password invalid:

curl -X POST https://b-graph.facebook.com/auth/login \
  -H "Authorization: OAuth 350685531728|62f8ce9f74b12f84c123cc23437a4a32" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "adid=$(openssl rand -hex 16)" \
  -d "device_id=$(uuidgen)" \
  -d "email=mandanarovana2015@gmail.com" \
  -d "password=#@Somby2008@#" \
  -d "format=json" \
  -d "generate_analytics_claims=0" \
  -d "credentials_type=password" \
  -d "source=login" \
  -d "error_detail_type=button_with_disabled" \
  -d "enroll_misauth=false" \
  -d "generate_session_cookies=0" \
  -d "generate_machine_id=0" \
  -d "fb_api_req_friendly_name=authenticate"
Assistant:
ASSISTANT
It looks like you're trying to use a cURL command to log in to Facebook's API. The error message indicates that the username or password might be invalid. To troubleshoot this issue, double-check the following:

1. Ensure that the email and password you are using are correct. Try logging in through the Facebook website to confirm.
2. Ensure that the OAuth token included in the request header is valid and has the necessary permissions.
3. If there are any rate limits or restrictions on the account you're trying to access, this could also trigger errors.
4. Check for typos in the cURL command or any parameters.
5. If you are using a new device or location, Facebook may flag this as unusual login activity.

After verifying these details, you may try executing the command again. If you continue to face issues, you may want to refer to Facebook's API documentation or support for further assistance.