import ( "github.com/ethereum/go-ethereum/core/types" "math/big" ) func main() { // Create a new BlockNumberU64 with a value of 123456 blockNumber := types.BlockNumberU64(big.NewInt(123456)) // Retrieve the underlying uint64 value blockNumberValue := blockNumber.Uint64() // Output the result fmt.Println(blockNumberValue) }In this example, we import the `github.com/ethereum/go-ethereum/core/types` package and create a new BlockNumberU64 object with a value of 123456 using the `big.NewInt()` function. We then retrieve the underlying uint64 value using `Uint64()` and output the result. The package library used in this example is `go-ethereum`, which is a popular implementation of the Ethereum protocol written in Go.