rename; add readOnly field