add ColumnRangeFilter, remove duplicate code to allow easier maintenance