split out readable/writable setup