* add function definition propogate