use constants instead of defines