eliminate get funcs, add write protection