:lipstick: split into new files
Less indirection with callbacks
Filter Mode Safe Handle to new file