error/state/reader/writer for maybe