fixed removeobserver bad access