imag(z::GaussMod{N}) where {N} = Mod{N}(imag(value(z))) (+)(x::GaussMod{N}, y::T) where {N,T<:ACZQ} = x + GaussMod{N}(y) (+)(x::T, y::GaussMod{N}) where {N,T<:ACZQ ...
This module supports modular values and arithmetic. The moduli are integers (at least 2) and the values are either integers or Gaussian integers. The usual arithmetic operations may be used.