Gustav weakens to tropical storm after hitting Hai