merge __setattr__