> Aztec.nr API reference, v6.0.0 (mainnet and testnet). Index: https://docs.aztec.network/aztec-nr-api/v6.0.0/llms.txt

# Struct Scalar

Module: `noir_aztec::protocol::scalar`

```rust
pub struct Scalar {
    pub lo: Field,
    pub hi: Field,
}
```

Scalar for the embedded curve represented as low and high limbs By definition, the scalar field of the embedded curve is base field of the proving system curve. It may not fit into a Field element, so it is represented with two Field elements; its low and high limbs.

## Fields

```rust
lo: Field
```

```rust
hi: Field
```

## Implementations

```rust
impl EmbeddedCurveScalar
```

```rust
pub fn new(lo: Field, hi: Field) -> Self
```

Create a new scalar using the provided (lo, hi) pair

```rust
pub fn from_field(scalar: Field) -> Self
```

Create a scalar from the given bn254 field value

## Trait implementations

```rust
impl Eq for EmbeddedCurveScalar
```

```rust
pub fn eq(self, other: Self) -> bool
```

```rust
impl Hash for EmbeddedCurveScalar
```

```rust
pub fn hash<H>(self, state: &mut H)
where
    H: Hasher
```
