All my stupid works for compiler