windowing must be consistent