Abstract and refactor Tidy support