Hamas vows revenge after 7 members killed