There seems to be duplicate code for [DoG](https://arxiv.org/abs/2302.12022) in the codebase: 1. optax/_src/transform.py: [`ScaleByDistanceOverGradientsState`](https://github.com/google-deepmind/optax/blob/daecb91b3f0e5de6d3e763c67362e7ac2737bb24/optax/_src/transform.py#L1343), [`scale_by_distance_over_gradients`](https://github.com/google-deepmind/optax/blob/daecb91b3f0e5de6d3e763c67362e7ac2737bb24/optax/_src/transform.py#L1351) 2. optax/contrib/_dog.py: [`DoGState`](https://github.com/google-deepmind/optax/blob/daecb91b3f0e5de6d3e763c67362e7ac2737bb24/optax/contrib/_dog.py#L37), [`scale_by_dog`](https://github.com/google-deepmind/optax/blob/daecb91b3f0e5de6d3e763c67362e7ac2737bb24/optax/contrib/_dog.py#L46) These two should be merged together.