modified common.h