updated target.c