philosophy behind filters is a complex one and needs to be written with clearer head