from typing import List


def paginate_list(l: list, page_size: int) -> List[list]:
    """
    Returns a list of lists, where each sublist is a page of the original list with
    size `page_size`. (The last list will be of size less than `page_size` if len(l)
    isn't a perfect multiple of `page_size`).

    Args:
        l (list): flat list
        page_size (int)

    Returns:
        List[list]: paginated
    """

    return [l[i : i + page_size] for i in range(0, len(l), page_size)]