#ifndef UI_ACCESSIBILITY_AX_COMMON_H_
#define UI_ACCESSIBILITY_AX_COMMON_H_
#include "build/blink_buildflags.h"
#include "build/build_config.h"
#if (!defined(NDEBUG) || defined(ADDRESS_SANITIZER) || \
defined(LEAK_SANITIZER) || defined(MEMORY_SANITIZER) || \
defined(THREAD_SANITIZER) || defined(UNDEFINED_SANITIZER) || \
DCHECK_IS_ON()) && \
BUILDFLAG(USE_BLINK)
#define AX_FAIL_FAST_BUILD
#endif
#if defined(AX_FAIL_FAST_BUILD) && !DCHECK_IS_ON()
#define SANITIZER_CHECK(val) CHECK(val)
#define SANITIZER_CHECK_EQ(val1, val2) CHECK_EQ(val1, val2)
#define SANITIZER_CHECK_NE(val1, val2) CHECK_NE(val1, val2)
#define SANITIZER_CHECK_LE(val1, val2) CHECK_LE(val1, val2)
#define SANITIZER_CHECK_LT(val1, val2) CHECK_LT(val1, val2)
#define SANITIZER_CHECK_GE(val1, val2) CHECK_GE(val1, val2)
#define SANITIZER_CHECK_GT(val1, val2) CHECK_GT(val1, val2)
#define SANITIZER_NOTREACHED() SANITIZER_CHECK(false)
#else
#define SANITIZER_CHECK(val) DCHECK(val)
#define SANITIZER_CHECK_EQ(val1, val2) DCHECK_EQ(val1, val2)
#define SANITIZER_CHECK_NE(val1, val2) DCHECK_NE(val1, val2)
#define SANITIZER_CHECK_LE(val1, val2) DCHECK_LE(val1, val2)
#define SANITIZER_CHECK_LT(val1, val2) DCHECK_LT(val1, val2)
#define SANITIZER_CHECK_GE(val1, val2) DCHECK_GE(val1, val2)
#define SANITIZER_CHECK_GT(val1, val2) DCHECK_GT(val1, val2)
#define SANITIZER_NOTREACHED() NOTREACHED()
#endif
#endif