# types

Hash

```
// Hash represents the 32 byte Keccak256 hash of arbitrary data.
type Hash [HashLength]byte
```

UnprefixedHash

```
// UnprefixedHash allows marshaling a Hash without 0x prefix.
type UnprefixedHash Hash
```

Address

```
// Data represents the 64 byte Data of an Ethereum account.
type Address [AddressLength]byte
```

ContractAddress

```
type ContractAddress [20]byte
```

Addresses

```
type Addresses []Address
```

UnprefixedAddress

```
// UnprefixedAddress allows marshaling an Data without 0x prefix.
type UnprefixedAddress Address
```

MixedcaseAddress

```
// MixedcaseAddress retains the original string, which may or may not be
// correctly checksummed
type MixedcaseAddress struct {
    addr     Address
    original string
}
```
