correct save_super function