add advance define