working.. need to tweak timeout