# WithdrawalSenderTag.from

Derives the sender tag that identifies the indexed parent-chain `WithdrawalProcessed` event for a Zone withdrawal.

The `transactionHash` is the Zone transaction containing the `ZoneOutbox.requestWithdrawal` call. The protocol defines the sender tag as `keccak256(abi.encodePacked(sender, transactionHash))`.

[Authenticated Withdrawals Specification](https://github.com/tempoxyz/zones/blob/main/specs/spec.md#authenticated-withdrawals)

## Imports

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

```ts [Entrypoint]
import * as WithdrawalSenderTag from 'ox/tempo/WithdrawalSenderTag'
```
:::

## Examples

```ts twoslash
import { WithdrawalSenderTag } from 'ox/tempo'

const senderTag = WithdrawalSenderTag.from({
  sender: '0x1234567890abcdef1234567890abcdef12345678',
  transactionHash:
    '0xabababababababababababababababababababababababababababababababab'
})
```

## Definition

```ts
function from(
  value: from.Value,
): Hex.Hex
```

**Source:** [src/tempo/WithdrawalSenderTag.ts](https://github.com/wevm/ox/blob/main/src/tempo/WithdrawalSenderTag.ts#L30)

## Parameters

### value

* **Type:** `from.Value`

Withdrawal sender and Zone transaction hash.

#### value.sender

* **Type:** `abitype_Address`

Address that requested the withdrawal.

#### value.transactionHash

* **Type:** `0x${string}`

Hash of the Zone transaction containing `ZoneOutbox.requestWithdrawal`.

## Return Type

The sender tag.

`Hex.Hex`
