temp read command and some optimalisation