add function expand