compatible with GreenDefine