package nistec
import (
)
var p224GG *[96]fiat.P224Element
var p224GGOnce sync.Once
func (, *fiat.P224Element) {
p224GGOnce.Do(func() {
p224GG = new([96]fiat.P224Element)
for := range p224GG {
if == 0 {
p224GG[].SetBytes([]byte{0x6a, 0x0f, 0xec, 0x67,
0x85, 0x98, 0xa7, 0x92, 0x0c, 0x55, 0xb2, 0xd4,
0x0b, 0x2d, 0x6f, 0xfb, 0xbe, 0xa3, 0xd8, 0xce,
0xf3, 0xfb, 0x36, 0x32, 0xdc, 0x69, 0x1b, 0x74})
} else {
p224GG[].Square(&p224GG[-1])
}
}
})
var = new(fiat.P224Element)
var = new(fiat.P224Element)
.Square()
.Mul(, )
.Square()
.Mul(, )
.Square()
for := 1; < 3; ++ {
.Square()
}
.Mul(, )
.Square()
.Mul(, )
for := 0; < 5; ++ {
.Square()
}
.Mul(, )
.Square()
for := 1; < 12; ++ {
.Square()
}
.Mul(, )
.Square()
for := 1; < 7; ++ {
.Square()
}
.Mul(, )
for := 0; < 17; ++ {
.Square()
}
.Mul(, )
.Square()
for := 1; < 48; ++ {
.Square()
}
.Mul(, )
for := 0; < 31; ++ {
.Square()
}
.Mul(, )
:= new(fiat.P224Element).Square()
.Mul(, )
.Mul(, )
var = new(fiat.P224Element).Sub(
new(fiat.P224Element), new(fiat.P224Element).One())
for := 96 - 1; >= 1; -- {
:= new(fiat.P224Element).Set()
for := 0; < -1; ++ {
.Square()
}
:= .Equal()
.Select(.Mul(, &p224GG[96-]), , )
.Select(.Mul(, &p224GG[96--1]), , )
}
}