#include "load_const.h"

#define __uint(name, val) int (*name)[val]
#define __type(name, val) typeof(val) *name
#define __array(name, val) typeof(val) *name[]
//#define debug(fmt, ...)                                        \
//({                                                             \
//    char ____fmt[] = fmt;                                      \
//    bpf_trace_printk(____fmt, sizeof(____fmt), ##__VA_ARGS__); \
//})
#ifdef _DEBUG_MODE
#define cw_bpf_debug(fmt, ...)                                 \
({                                                             \
    char ____fmt[] = fmt;                                      \
    bpf_trace_printk(____fmt, sizeof(____fmt), ##__VA_ARGS__); \
})
#define debug(fmt, ...)                                        \
({                                                             \
    char ____fmt[] = fmt;                                      \
    bpf_trace_printk(____fmt, sizeof(____fmt), ##__VA_ARGS__); \
})
#else
#define cw_bpf_debug(fmt, ...)                                  \
 ({                                                              \
																 \
 })
#define debug(fmt, ...)                                         \
 ({                                                              \
																 \
 })
#endif


/* Helper macro to print out debug messages */
#define bpf_printk(fmt, ...)                \
({                            \
    char ____fmt[] = fmt;                \
    bpf_trace_printk(____fmt, sizeof(____fmt),    \
             ##__VA_ARGS__);        \
})