беззнаковый тип(Modular types work in Ada 2012 a bit like unsigned types in C: they don't have negative values, and once you reach the largest representable value, if you add one you will get 0. If you were to try the same with a normal (signed, non-modular) integer in Ada, you'd get a constraint error. Alex_Odeychuk)