added read method