correct init_super function