// Copyright 2022 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.

//go:build amd64 || arm64

package elliptic

import (
	
	
)

func ( p256Curve) ( *big.Int) *big.Int {
	if .Sign() < 0 {
		// This should never happen.
		 = new(big.Int).Neg()
	}
	if .Cmp(.params.N) >= 0 {
		// This should never happen.
		 = new(big.Int).Mod(, .params.N)
	}
	 := .FillBytes(make([]byte, 32))
	,  := nistec.P256OrdInverse()
	if  != nil {
		panic("crypto/elliptic: nistec rejected normalized scalar")
	}
	return new(big.Int).SetBytes()
}