support the third define functions