------
## 最终结论
```python
from collections import Counter

def check_inclusion(s1, s2):
    count_s1 = Counter(s1)
    window_size = len(s1)
    count_window = Counter(s2[:window_size])
    
    for i in range(window_size, len(s2)):
        if count_window == count_s1:
            return True
        
        # Add the next character in the window
        count_window[s2[i]] += 1
        
        # Remove the character that is left out of the window
        count_window[s2[i - window_size]] -= 1
        
        # Remove the count from the dictionary if it becomes zero
        if count_window[s2[i - window_size]] == 0:
            del count_window[s2[i - window_size]]
    
    # Check the last window
    if count_window == count_s1:
        return True
    
    return False

# Example usage:
s1 = "ab"
s2 = "eidbaooo"
print(check_inclusion(s1, s2))  # Output: True

s1 = "ab"
s2 = "eidboaoo"
print(check_inclusion(s1, s2))  # Output: False
```