More lazy evaluation, including a bug fix