sliding window method