add the weak.c and inversion.c