Lazy evaluation implemented. Check less, run faster.