The filters getting returned are the references to the same object, instead copies of them should get returned so they don't accidentally get changed, and also the frameworks that are dependent on the object references will properly handle the changes.