added static_assert.h