change of addsub to include generic width