1def check_inclusion(s1, s2):2    if len(s1) > len(s2):3        return False4    count_s1 = [0] * 265    count_s2 = [0] * 266    for i in range(len(s1)):7        count_s1[ord(s1[i]) - ord('a')] += 18        count_s2[ord(s2[i]) - ord('a')] += 19    matches = 010    for i in range(26):11        matches += (1 if count_s1[i] == count_s2[i] else 0)12    l = 013    for r in range(len(s1), len(s2)):14        if matches == 26:15            return True16        index = ord(s2[r]) - ord('a')17        count_s2[index] += 118        if count_s2[index] == count_s1[index]:19            matches += 120        elif count_s2[index] == count_s1[index] + 1:21            matches -= 122        index = ord(s2[l]) - ord('a')23        count_s2[index] -= 124        if count_s2[index] == count_s1[index]:25            matches += 126        elif count_s2[index] == count_s1[index] - 1:27            matches -= 128        l += 129    return matches == 26