updated with right coywrting