four sum reimpl