исправлено определение через #define. Теперь определения даны через const значения
слияние с домашней версией