better pass handler
sync