Implementation of read method