implemented favourite tab + refactor