-DNDEBUG required to avoid warning