address comments. pull out success handler