"remove observer" method also should be changed