
    Design a function that determines the minimum memory block size needed to process a student's essay, where memory blocks must be powers of 2 to ensure efficient automated assessment. Given the word count of a student's essay, find the smallest power of 2 that can fully contain all words in the essay for processing.
    

    
def next_power_of_2(n):
    """
    Design a function that determines the minimum memory block size needed to process a student's essay, where memory blocks must be powers of 2 to ensure efficient automated assessment. Given the word count of a student's essay, find the smallest power of 2 that can fully contain all words in the essay for processing.
    

    """
def next_power_of_2(n):
    """
    Design a function that determines the minimum memory block size needed to process a student's essay, where memory blocks must be powers of 2 to ensure efficient automated assessment. Given the word count of a student's essay, find the smallest power of 2 that can fully contain all words in the essay for processing.
    

    """
    if n and (not n & n - 1):
        return n
    count = 0
    while n != 0:
        n >>= 1
        count += 1
    return 1 << count