add a read method