improved the method