log read implemented