@staticmethod
def lazy_advance(old_normal, old_lazy):
    '\n        This method takes int "old_lazy" (which corresponds to bit vector\n        "old_normal"), and changes it to the next lazy int, "new_lazy" (\n        which corresponds to "new_normal").\n\n        example:\n\n        lazy sequence: 000, 001, 011, 010, 110, 111, 101, 100\n\n        old_lazy = 011\n        old_normal = 2 = 010\n\n        new_normal = 3 = 011\n        mask = (new_normal & ~old_normal) = 011 & 101 = 001\n        new_lazy = new_normal ^ mask = 011 ^ 001 = 010\n\n\n        Parameters\n        ----------\n        old_normal : int\n        old_lazy : int\n\n        Returns\n        -------\n        int, int\n\n        '
    new_normal = (old_normal + 1)
    new_lazy = (old_lazy ^ (new_normal & (~ (new_normal - 1))))
    return (new_normal, new_lazy)
This method takes int "old_lazy" (which corresponds to bit vector
"old_normal"), and changes it to the next lazy int, "new_lazy" (
which corresponds to "new_normal").

example:

lazy sequence: 000, 001, 011, 010, 110, 111, 101, 100

old_lazy = 011
old_normal = 2 = 010

new_normal = 3 = 011
mask = (new_normal & ~old_normal) = 011 & 101 = 001
new_lazy = new_normal ^ mask = 011 ^ 001 = 010


Parameters
----------
old_normal : int
old_lazy : int

Returns
-------
int, int
@staticmethod
def lazy_advance(old_normal, old_lazy):
    '\n        This method takes int "old_lazy" (which corresponds to bit vector\n        "old_normal"), and changes it to the next lazy int, "new_lazy" (\n        which corresponds to "new_normal").\n\n        example:\n\n        lazy sequence: 000, 001, 011, 010, 110, 111, 101, 100\n\n        old_lazy = 011\n        old_normal = 2 = 010\n\n        new_normal = 3 = 011\n        mask = (new_normal & ~old_normal) = 011 & 101 = 001\n        new_lazy = new_normal ^ mask = 011 ^ 001 = 010\n\n\n        Parameters\n        ----------\n        old_normal : int\n        old_lazy : int\n\n        Returns\n        -------\n        int, int\n\n        '
    new_normal = (old_normal + 1)
    new_lazy = (old_lazy ^ (new_normal & (~ (new_normal - 1))))
    return (new_normal, new_lazy)