Longest Substring With At Most Two Distinct Characters