# Unity Input System (NEW)

{% hint style="warning" %}
**From AC 1.4.7 and up. Unity New Input System is the Default system. You don't need to install the external version**
{% endhint %}

***

## Integration Package:  [**Integration Drive Folder**](https://drive.google.com/drive/folders/1pYhTUsptyF46UPbNolhVUVp52BdXMMJc?usp=drive_link)

## **Latest Version: 2.0.2a**

* **Added**: OnMoveAxis Method from IInputSouce Interface.

{% file src="<https://963537199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Lzhr1XSMzMqNXjRnNlb%2Fuploads%2F2w3gQCdWL5J9xJjXYSTo%2FInput%20System%20Link%202.0.2a.unitypackage?alt=media&token=e06ab732-936e-4240-a93a-d158923a2f50>" %}

## **Latest Version: 2.0.2**

* **Added**: Ignore Horizontal, Vertical, UpDown Axis
* **Improved**: Reading the axis from Move Context.
* **Added**: OnInput Enabled and Disabled send the Player Index
* Minor Editor fixes&#x20;

{% file src="<https://963537199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Lzhr1XSMzMqNXjRnNlb%2Fuploads%2FrbXADWcz2e2HoSDZEDNZ%2FUnity%20Input%20System%20Link%20v2.0.2.unitypackage?alt=media&token=ef3862aa-f9c9-4053-a403-bb2d3f31b4bd>" %}

{% content-ref url="unity-input-system-new/new-input-link-old-versions" %}
[new-input-link-old-versions](https://malbersanimations.gitbook.io/animal-controller/annex/integrations/unity-input-system-new/new-input-link-old-versions)
{% endcontent-ref %}

## Input Action Types for Animal Controller

These are the types of input values that the controller will recognize.

### Axis values

Use this Input type for Axis movement (Player Movement and Camera Movement)

<figure><img src="https://963537199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Lzhr1XSMzMqNXjRnNlb%2Fuploads%2FitTFUzkA137q59VdJJrN%2Fimage.png?alt=media&#x26;token=b6f58325-f747-4334-a4a0-8f2994a7f1b1" alt="" width="563"><figcaption></figcaption></figure>

If you are going to use Axis type in other logic besides Player Movement or Camera Locomotion&#x20;

Use the Vector2 value on the interaction type:

<figure><img src="https://963537199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Lzhr1XSMzMqNXjRnNlb%2Fuploads%2FPHNegixyaXEpTeh3B0H9%2Fimage.png?alt=media&#x26;token=3a9cd07a-8f83-449e-9faf-d4136f22d4fe" alt="" width="534"><figcaption></figcaption></figure>

### Buttons

Use this Input type for all button interactions (Jumps, Actions, Sprint, etc)

<figure><img src="https://963537199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Lzhr1XSMzMqNXjRnNlb%2Fuploads%2FnTqeI3htlGvzbGPPu81j%2Fimage.png?alt=media&#x26;token=0eeaf05c-45f7-42b0-b047-0102a4db3f18" alt="" width="563"><figcaption></figcaption></figure>

### Triggers

Triggers on your Gamepad need to be set as Value.

<figure><img src="https://963537199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Lzhr1XSMzMqNXjRnNlb%2Fuploads%2F8d4asCZy8RGIMASj2YBG%2Fimage.png?alt=media&#x26;token=c95498ca-5fbb-40a2-b579-6e280cc0afb1" alt="" width="563"><figcaption></figcaption></figure>

The Interaction type for Triggers needs to be set to Float

<figure><img src="https://963537199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Lzhr1XSMzMqNXjRnNlb%2Fuploads%2FtokupQYGc3KyzEQrHuT6%2Fimage.png?alt=media&#x26;token=b1087ff1-383b-4c00-9d76-f2a0ea857322" alt="" width="530"><figcaption></figcaption></figure>

##

## Integration Steps

### 1. Install the new Input System from the Package Manager Window

Go to Window -> Package Manager

![](https://963537199-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lzhr1XSMzMqNXjRnNlb%2F-MRuYa5wl41a9jdZAdPo%2F-MRuZZCTaJOzol0xv6OU%2Fimage.png?alt=media\&token=aec21bac-2f77-4ec0-a64d-3eb86d5e8818)

Install the latest version of the Input System package.

![](https://963537199-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lzhr1XSMzMqNXjRnNlb%2F-MRuYa5wl41a9jdZAdPo%2F-MRuZlcpJhtuAmZWRkeX%2Fimage.png?alt=media\&token=2aba274e-8463-4a03-8c74-67a62bc68f2e)

Unity will ask you to restart the Editor to install correctly the Input System.

### 2. Import the integration Package from the Integration Drive Folder

{% hint style="info" %}

### [**INTEGRATION \<DRIVE> FOLDER**](https://drive.google.com/drive/folders/1pYhTUsptyF46UPbNolhVUVp52BdXMMJc?usp=sharing)

{% endhint %}

Download and Install the Integration package on your project.

### 3. Select any Prefab/animal the Malbers Input/MInput component.

Those Malbers Input/MInput Components, need to be replaced with the new **MInput** Link. But first, we need to check all the connections the old inputs can have.

![Old Malbers Input component that uses the Old Input Manager](https://963537199-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lzhr1XSMzMqNXjRnNlb%2F-MRuYa5wl41a9jdZAdPo%2F-MRup5f7Fqy9jRFPC-Jg%2Fimage.png?alt=media\&token=ca7c15ad-b40f-4843-ac04-bb3e32056f14)

The Animal Controller makes automatic connections with States and Modes using the Name of the Input.

For example for the State **Jump** the Input Name is "Jump"&#x20;

### 4. Add the MInput Link Component to your character

<figure><img src="https://963537199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Lzhr1XSMzMqNXjRnNlb%2Fuploads%2FkD0qSI1adA4obdlI10Ur%2Fimage.png?alt=media&#x26;token=2db7a435-9802-4917-b70b-a614e5546af6" alt=""><figcaption></figcaption></figure>

Add the component to the same gameobject the Animal Controller is.

### 5. Add a Player Input.

Add Unity Player Input Component and set it as reference for the Input Link

<figure><img src="https://963537199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Lzhr1XSMzMqNXjRnNlb%2Fuploads%2FPHtCpER4NUqtruv5UZoi%2FUnity_GctVX5XvWU.gif?alt=media&#x26;token=647f03ee-cf4c-43e6-b266-a2633934910b" alt=""><figcaption></figcaption></figure>

### 6. Add an Action Input Map

By default for Malbers Animals and creatures you can use the \<Malbers Input> Action asset, but you can use your own Input Action Asset.

Add your Input Map to the Player Input Component

![](https://963537199-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lzhr1XSMzMqNXjRnNlb%2F-MRusH3VEQCkjFQrRdni%2F-MRuss8l24-pYrVkYqvT%2Fimage.png?alt=media\&token=6f7f5ced-bb35-4fa4-9ff8-1b36bb64b626)

<figure><img src="https://963537199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Lzhr1XSMzMqNXjRnNlb%2Fuploads%2FhOV93pjkDoybS2Jzohkl%2FUnity_xZxOtPGfn1.gif?alt=media&#x26;token=fdcb623b-89f9-4e0d-bceb-ea82aad3c4d7" alt=""><figcaption></figcaption></figure>

### 7. Select the Active Action Map to Find the Buttons

Add your Default Action Map so you can connect those inputs to the Animal Controller

After selecting the Active Action Map Click Find Buttons.

![](https://963537199-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lzhr1XSMzMqNXjRnNlb%2F-MRusH3VEQCkjFQrRdni%2F-MRuto6Y-4Vsq2HfXq4H%2FTNpdeIaJo0.gif?alt=media\&token=93608ddd-a6d4-48ef-89b5-5767d6f5e6f3)

All the parameters will be filled automatically. with all the Inputs that are set as \<Button> Type.

**Move** and **UpDown** Inputs will be set on their respective parameters.

![](https://963537199-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lzhr1XSMzMqNXjRnNlb%2F-MTbT9O7P1o0NuTqh84H%2F-MTbVRqSU7g_1nHTXGd5%2Fimage.png?alt=media\&token=0df920c7-91c5-4d94-b1b2-04ed74814442)

&#x20;You can add other inputs manually by simply creating a new element:

![](https://963537199-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lzhr1XSMzMqNXjRnNlb%2F-MTbT9O7P1o0NuTqh84H%2F-MTbVqueu19O2nMbS7_X%2FX010zrDtNr.gif?alt=media\&token=2fc5e5cf-7348-4851-b381-03733a185102)

### 8. Connect the Inputs to the Animal Controller

{% hint style="info" %}
By default, all the Inputs with a Name that matches the **States** and **Modes** are connected automatically with the Animal Controller.
{% endhint %}

For example: the Jump State has an Input\<string> value to find its Input so it will be connected automatically with the Jump Input:

![](https://963537199-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lzhr1XSMzMqNXjRnNlb%2F-MTbW1CXUOxYItJu9Ud2%2F-MTbY0nWrfMj2Rytbsfv%2Fimage.png?alt=media\&token=96e47ef6-f662-4aa3-bacb-0c69d28cbba3)

Just like States, Modes has their Input\<string> Value to connect automatically to the input source:

![](https://963537199-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lzhr1XSMzMqNXjRnNlb%2F-MTbW1CXUOxYItJu9Ud2%2F-MTbYlO9EoACB5v4RSvy%2Fimage.png?alt=media\&token=3003544c-b4ad-473f-948e-ec56c7a5f867)

But other features like Sprint, Speed Up, Speed Down, they need to be connected manually.

As stated in [**Step 3**](#3-select-any-prefab-animal-the-malbers-input-minput-component)**.** Do not remove yet just yet the MalbersInput/MInput component.

Check the connections all the Inputs have and do them on the New MInputLink component.

E.g. **Sprint** is connected on the **Input Changed Event** with `Animal.Sprint` Interaction \[Press]

E.g. **SpeedUp** is connected on the **Input Down Event** with `Animal.SpeedUp`Interaction \[Down]

![](https://963537199-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lzhr1XSMzMqNXjRnNlb%2F-MTbYtJw-BqJ73zWGmoh%2F-MTbbewCoeacUhcmVYXK%2Fimage.png?alt=media\&token=f4ce7d5f-cdd3-46c2-b499-6c13f984342b)

E.g.: In case of the Rider in HAP the Default Action Map should be Gameplay:

![](https://963537199-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lzhr1XSMzMqNXjRnNlb%2F-MWCc56HJAjZ_4z2guNl%2F-MWCdNnmTOVe_K9jUQKy%2Fimage.png?alt=media\&token=3539d601-55f8-4fd1-a6d0-36eff4c7ed75)

E.g.: In case of the Horse in HAP the Default Action Map should be "Riding". So the horse will be only moving when that Action map is activated by the rider when he finish mounting

![](https://963537199-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lzhr1XSMzMqNXjRnNlb%2F-MWCc56HJAjZ_4z2guNl%2F-MWCdcWTDu5OlQlmy_lh%2Fimage.png?alt=media\&token=0984d6dd-c28b-4b5a-923a-5fe31735a456)

{% hint style="danger" %}

### IMPORTANT: After all connections are made you will need to remove the Old MalbersInput/MInput component.

{% endhint %}

## Camera

Instead of using the Default Virtual cameras&#x20;

Use instead the new Prefab located here:

<br>

<figure><img src="https://963537199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Lzhr1XSMzMqNXjRnNlb%2Fuploads%2FctS8ZC1A9GigSlCUz3Oz%2Fimage.png?alt=media&#x26;token=11d0a86d-2ec5-4ec7-980c-c055914c5b8d" alt=""><figcaption></figcaption></figure>

This prefab has already all the connections done for the new Input system. The MInput Look Component is using the correct Input Action References for moving the camera

<figure><img src="https://963537199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Lzhr1XSMzMqNXjRnNlb%2Fuploads%2FEpObJVLRA46T3JnHO2Nk%2Fimage.png?alt=media&#x26;token=7c26399a-93c6-4c1b-8efe-012e173ddb0c" alt=""><figcaption></figcaption></figure>

## Input Link UI

### Overview

This component will Invoke a String Event with the Display value of an Input Action, when the Control Scheme changes.

![](https://963537199-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lzhr1XSMzMqNXjRnNlb%2F-MWFqL-K4Z2Kh2kwckpX%2F-MWFtFCuBlx9tSBR6VMp%2Fimage.png?alt=media\&token=d1a9ab2c-2c3d-4fe0-bfd8-1d92f11714f2)

That Sprint Value can be connected to any UI Text to display the right UI  Value for the Input.

![The Mount UI Changes to \[ F \] key or \[ Y \] button on the gamepad](https://963537199-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lzhr1XSMzMqNXjRnNlb%2F-MWFqL-K4Z2Kh2kwckpX%2F-MWFtyXWPL1XjRAi_VAG%2Fo984WYAMxp.gif?alt=media\&token=ded33bfb-4975-4aab-bdc6-1ebfedc7bb4e)

![](https://963537199-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lzhr1XSMzMqNXjRnNlb%2F-MWFqL-K4Z2Kh2kwckpX%2F-MWFuIZOe44jygexJkXd%2Fimage.png?alt=media\&token=7a42fc38-bc60-4576-8c74-170eea5082d3)

Do that for all the UI Buttons.

## Rider

For Horse Animset Pro the Rider and the Horse have Different Action maps

Use instead Malbers Input HAP. You can always modify it to your needs.

![](https://963537199-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lzhr1XSMzMqNXjRnNlb%2F-MWCVhWpcicX0UXlPWGM%2F-MWCYGEsENXVbSBQ_mSp%2Fimage.png?alt=media\&token=dc87f0ae-8060-4b0a-88c9-23b5c6e7cfa3)

In the case of the Rider, you will need to change the Active Action Maps while Riding.

<figure><img src="https://963537199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Lzhr1XSMzMqNXjRnNlb%2Fuploads%2FCweiDyvXEN0CgoBIKRWj%2Fimage.png?alt=media&#x26;token=2cce3da5-7110-4cdc-86d9-1a5c177e07d4" alt=""><figcaption></figcaption></figure>

When the Rider Finish Mounting the Action Map is changed to "**Riding**" will be changed to Riding (Using the event MRider.OnMountEnd()

When the Rider Finish Dismounting the Action Map is changed back to "**Gameplay**" will be changed to Riding (Using the event MRider.OnDismountEnd()

### Gameplay Connections

{% hint style="info" %}
Always check the old Malbers Input connections to apply it to the new MInput Link inputs
{% endhint %}

Here are the **Malbers Input HAP** "**Gameplay"** Input Action connections. Remember to check the **Interaction** on each Input Action.

#### Move

Leave the Connection to Gameplay/Move Input Action

![](https://963537199-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lzhr1XSMzMqNXjRnNlb%2F-MWCNvzX5ebcGuhof5D4%2F-MWCODzVhGexe92Jmgz3%2Fimage.png?alt=media\&token=939a0e37-039b-4238-841c-be0cb58fa0d3)

**Jump**&#x20;

Is Connected automatically with the Animal Controller with the Jump State.

#### Sprint

![](https://963537199-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lzhr1XSMzMqNXjRnNlb%2F-MWCNvzX5ebcGuhof5D4%2F-MWCOWiWEKmFeqAzdrFR%2Fimage.png?alt=media\&token=148b4b48-e12e-4cca-98d5-9a025dbfeba4)

#### Interact

![](https://963537199-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lzhr1XSMzMqNXjRnNlb%2F-MWCNvzX5ebcGuhof5D4%2F-MWCOuV-HM5A22Z6eHi5%2Fimage.png?alt=media\&token=db93f4b9-45fe-455f-842f-e26a223057a1)

#### Mount

![](https://963537199-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lzhr1XSMzMqNXjRnNlb%2F-MWCNvzX5ebcGuhof5D4%2F-MWCPJzeAIG4W0dKExue%2Fimage.png?alt=media\&token=79220818-a738-4a15-90c1-14266deeec07)

### Riding Connections

Here are the **Malbers Input HAP**, "**Riding" Map,** Input Action connections. Remember to check the **Interaction** on each Input Action. This will be the Inputs&#x20;

![](https://963537199-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lzhr1XSMzMqNXjRnNlb%2F-MWCVhWpcicX0UXlPWGM%2F-MWCXQ18eV0RJ_HY722S%2Fimage.png?alt=media\&token=e8e4b5ed-4a92-4d3b-abcf-a896ea60bb18)

#### Move and UpDown

Clear the Connections with Move and UpDown since they will be used on the Animal Mount Instead.

#### Aim

<figure><img src="https://963537199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Lzhr1XSMzMqNXjRnNlb%2Fuploads%2FLuw7JUdKEZWQx67ZXxxN%2Fimage.png?alt=media&#x26;token=8a031497-9944-44db-93b3-9fd2fcd45caf" alt="" width="563"><figcaption></figcaption></figure>

#### Attack1

<figure><img src="https://963537199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Lzhr1XSMzMqNXjRnNlb%2Fuploads%2Fl1idDoCkxo3gM2OyGIFT%2Fimage.png?alt=media&#x26;token=afa273b8-b700-40ae-8979-846d24346489" alt="" width="563"><figcaption></figcaption></figure>

#### Dismount

<figure><img src="https://963537199-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Lzhr1XSMzMqNXjRnNlb%2Fuploads%2FWxvdpODvKoiBoRzika5Y%2Fimage.png?alt=media&#x26;token=bf898f99-29c4-4e0b-8b3e-52365ab3474b" alt="" width="563"><figcaption></figcaption></figure>

#### Inventory 1

![](https://963537199-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lzhr1XSMzMqNXjRnNlb%2F-MWCVhWpcicX0UXlPWGM%2F-MWCXs7I418p3NimaVyG%2Fimage.png?alt=media\&token=6f0b23c9-dcdd-44fb-84fe-c0dfbfa4d8fc)

#### Inventory 2

![](https://963537199-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lzhr1XSMzMqNXjRnNlb%2F-MWCVhWpcicX0UXlPWGM%2F-MWCXuJwSoLUJ76-xteI%2Fimage.png?alt=media\&token=cc59c9f7-4214-4430-b3de-ee582532d2b0)

#### Inventory 3

![](https://963537199-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lzhr1XSMzMqNXjRnNlb%2F-MWCVhWpcicX0UXlPWGM%2F-MWCXwGHeT8lFwQiLJ2q%2Fimage.png?alt=media\&token=b4caa227-45f8-4e60-8272-b5cbd19ae7cc)

#### Inventory 4

![](https://963537199-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lzhr1XSMzMqNXjRnNlb%2F-MWCVhWpcicX0UXlPWGM%2F-MWCXyJsJzkMd0ox-5IK%2Fimage.png?alt=media\&token=16ff7cbf-dd56-4701-ac31-28ca5d38710b)

#### Reload

![](https://963537199-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lzhr1XSMzMqNXjRnNlb%2F-MWCVhWpcicX0UXlPWGM%2F-MWCY-bOSeQB55SoNe0i%2Fimage.png?alt=media\&token=e81c61f8-3d96-4d65-a42a-7516da3463ec)

## Horse

In case of the Horse instead of using the "**Gameplay**" Action Map as the Default and connection, will be using the "**Riding**" Action Map. That way all Horse Movement will be active only when the Rider finish mounting.

You can use all of the inputs or some of them. Is up to you. :)

![](https://963537199-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lzhr1XSMzMqNXjRnNlb%2F-MWCVhWpcicX0UXlPWGM%2F-MWCaBncQ8lBuDEnjZmI%2Fimage.png?alt=media\&token=35695bd1-2241-4c8a-9209-cf016215af62)

#### &#x20;Jump

Jump is connected Automatically with the Animal Controller

#### &#x20;Sprint

![](https://963537199-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lzhr1XSMzMqNXjRnNlb%2F-MWCVhWpcicX0UXlPWGM%2F-MWCbcm5-kHF7BOGMDeF%2Fimage.png?alt=media\&token=f613ad42-cf6e-4bbf-a5b0-b443f41bf256)

#### Attack1

Attack1 is connected automatically with the Attack1 Mode. Is recommended to be disabled if the rider is using weapons

#### &#x20;Interact

No connection here.. you can add the Action Mode Input name here if you like

#### &#x20;Strafe&#x20;

![](https://963537199-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lzhr1XSMzMqNXjRnNlb%2F-MWCVhWpcicX0UXlPWGM%2F-MWCbgKqy_vOr0FAsB5H%2Fimage.png?alt=media\&token=86501588-da8a-4178-93d3-1cc31d4aae81)

#### Speed Up&#x20;

![](https://963537199-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lzhr1XSMzMqNXjRnNlb%2F-MWCVhWpcicX0UXlPWGM%2F-MWCbvg2xk-nIYixWUrt%2Fimage.png?alt=media\&token=981fc537-1c60-4ce7-804a-d02f73944537)

#### Speed Down

![](https://963537199-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Lzhr1XSMzMqNXjRnNlb%2F-MWCVhWpcicX0UXlPWGM%2F-MWCbxiFIrtnORIaezAU%2Fimage.png?alt=media\&token=287a3d01-8d32-48ce-b0ab-7f3e8d181710)
