// Copyright © 2025 Niklas Siemer
//
// This file is part of qFALL-math.
//
// qFALL-math is free software: you can redistribute it and/or modify it under
// the terms of the Mozilla Public License Version 2.0 as published by the
// Mozilla Foundation. See <https://mozilla.org/en-US/MPL/2.0/>.
//! Implementation of the [`Hash`] trait for [`Z`].
use Z;
use Hash;
// MODULUS is 2^62 - 57, which is the largest prime below 2^62.
// We choose it prime to reduce the risk of accidentally introducing
// a hash collision by multiplying values by a prime factor of the given modulus.
static MODULUS: i64 = 4611686018427387847;