# Engine.load

Compiles every implementation this entrypoint provides and installs it.

WASM must be compiled asynchronously, so this is where the `await` lives. Everything afterwards, including the hashing itself, is synchronous.

Call it once, during startup, before any crypto call. ox resolves the engine at call time, so values computed beforehand used whatever was installed then.

## Imports

:::code-group
```ts [Named]
import { Engine } from 'ox/wasm'
```

```ts [Entrypoint]
import * as Engine from 'ox/wasm/Engine'
```
:::

## Examples

```ts twoslash
// @noErrors
import { Hash } from 'ox'
import { Engine } from 'ox/wasm'

await Engine.load()

Hash.keccak256('0xdeadbeef')
```

## Definition

```ts
function load(): Promise<load.ReturnType>
```

**Source:** [src/wasm/Engine.ts](https://github.com/wevm/ox/blob/main/src/wasm/Engine.ts#L76)

## Return Type

The engine that was installed.

`Promise<load.ReturnType>`
