Refactor to Ifilter::Window