full rewrite add and sub, and old members in other file