filter optional
readOnly mode