add pre-commit hooks