implement read function wrappers