finally all r/w memory operation is done by functions