refactoring to RRC style structure and it is still in progress.