Updated method 2