adjust method invoke order