Filter is not needed, so re-factored the classes using it