solution to 4Sum