update Read/Write apis to hold less references