Let d != 1 be a fundamental discriminant, R be the ring of integers of the field with discrimiant d. Let |I| denote the norm of an ideal I of R. For I being a prime ideal of R: (a) |I| = p or p^2, p prime >= 5 · If kronecker(d,p) = 1, then (R/I^e)* = C_((p-1)*p^(e-1)); · If kronecker(d,p) = -1, then (R/I^e)* = C_(p^(e-1)) X C_((p^2-1)*p^(e-1)); · If kronecker(d,p) = 0, then (R/I^e)* = C_(p^floor((e-1)/2)) X C_((p-1)*p^ceiling((e-1)/2)). (b) |I| = 3 or 9 · If d == 1 (mod 3), then (R/I^e)* = C_(2*3^(e-1)); · If d == 2 (mod 3), then (R/I^e)* = C_(3^(e-1)) X C_(8*3^(e-1)); · If d == 3 (mod 9), then (R/I^e)* = C_(3^floor((e-1)/2)) X C_(2*3^ceiling((e-1)/2)); · If d == 6 (mod 9), then (R/I^e)* = C_2 for e = 1, C_3 X C_(3^floor((e-2)/2)) X C_(2*3^ceiling((e-2)/2)) for e >= 2. (c) |I| = 2 or 4 · If d == 1 (mod 8), then (R/I^e)* = C_1 for e = 1, C_2 X C_(2^(e-2)) for e >= 2; · If d == 5 (mod 8), then (R/I^e)* = C_3 for e = 1, C_2 X C_(2^(e-2)) X C_(3*2^(e-1)) for e >= 2; · If d == 0 (mod 8), then (R/I^e)* = C_1 for e = 1, C_2 for e = 2, C_4 for e = 3, C_2 X C_(2^floor((e-3)/2)) X C_(2^ceiling((e-1)/2)) for e >= 4; · If d == 12 (mod 32), then (R/I^e)* = C_1 for e = 1, C_2 for e = 2, C_4 for e = 3, C_2 X C_4 for e = 4, C_2 X C_(2^floor((e-2)/2)) X C_(2^ceiling((e-2)/2)) for e >= 5; · If d == 28 (mod 32), then (R/I^e)* = C_1 for e = 1, C_2 for e = 2, C_4 X C_(2^floor((e-3)/2)) X C_(2^ceiling((e-3)/2)) for e >= 3. Note: for all d divisible by 4, we have (R/I^e)* = C_1 for e = 1, C_2 for e = 2, C_4 for e = 3, C_2 X C_4 for e = 4, C_2 X C_2 X C_4 for e = 5.