add gradient.c