added defines.hpp